Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共9 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:如何知道连续合约的换月日期

1楼
aaliwei91 发表于:2013/9/5 8:49:37
比如我们做一个跨品种套利的策略,为了精确测试,不能用指数,只能用连续。

比如买入A卖出B,我们想在合约到期日或主力合约改变的时候平掉头寸,然后在次月合约重新建仓。

请问在图表程序化中,有没有命令可以读取当前连续合约K线的合约月份?或者有没有命令判断当日是否主力合约到期日?谢谢。
2楼
lichenghu 发表于:2013/9/5 9:01:30

您好,这个您只能根据成交量来判断今日是否主力合约到期日。

 

换月规则:只要下月品种的成交量存在一个交易日大于当前品种,那么第二天系统自动换月,默认下月品种为主力合约。

 

那么我们这里只能用STKINDI引用相应品种的VOL然后做对比判断

3楼
aaliwei91 发表于:2013/9/5 9:59:41
谢谢,如果我用连续合约进行测试,请问什么命令能引用当前合约的年份和月份呢?这样我才能知道下一月份的合约代码。
4楼
lichenghu 发表于:2013/9/5 10:11:47


STKLABEL() 取下当前品种代码

 

然后用STRMID(STR,N,M)取下字符串中对应的位置

5楼
aaliwei91 发表于:2013/9/5 10:25:15
谢谢。

我现在用白银连续,

程序:

label:STKLABEL();
aa:strmid(label,3,2);

但显示:

label:1000000 AA:1000001

现在9月5日,正确的结果应该是AG1309和AG1310吧。
6楼
lichenghu 发表于:2013/9/5 10:36:18

取到的是字符串,您这样输出是不对的哦

 

STRTONUM( )转化下

7楼
aaliwei91 发表于:2013/9/5 10:50:56
label:STRTONUM(STKLABEL());

这样输出是0;

我只是想知道:如果使用白银连续合约,什么命令能知道当前的合约月份和年份? 
8楼
lichenghu 发表于:2013/9/5 11:08:36
label:STKLABEL();
aa:strmid(label,3,2);
bb:STRTONUM(AA);
 
BB的值是12,说明对应的是12合约
9楼
lichenghu 发表于:2013/9/5 11:41:06

aa:STRRIGHT(STKNAME(),4);
bb:STRTONUM(AA);
 

 

试下把,能满足您需求

共9 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.03125 s, 2 queries.