Rss & SiteMap

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

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

标题:连续合约对应的合约代码可以查到么?

1楼
qq代人发帖 发表于:2013/9/22 15:18:44
请问,连续合约对应的合约代码可以查到么?例如STKLABEL对应的是什么?
2楼
yukizzc 发表于:2013/9/22 15:32:17

您需要自己代码中把当前品种所有月份的成交量写出来,然后用连续的去和每一个做比较。

STKINDI('IF00','vol.VOLUME',0,1)

类似这个是取得if00的1分钟的成交量,其他依次类推。

 

3楼
lichenghu 发表于:2013/9/22 15:32:23
  成交量做下对比,然后返回下品种代码
4楼
学习交易 发表于:2013/9/22 16:11:44

那图表程序就不可以用了,只能用在后台了?

5楼
学习交易 发表于:2013/9/22 16:12:51
其实只要象STKLABEL那样登记一下连续合约对应的主力合约代码,那我们就省事多了.
6楼
lichenghu 发表于:2013/9/22 16:17:23
 图表也是可以用的
7楼
学习交易 发表于:2013/9/23 12:33:56

合约代码:=EXTGBDATA(代码);
合约头:=STRLEFT(STKLABEL,2);
tVOL:=STKINDI(合约代码,'vol.VOLUME',0,1);
IF tVOL<>VOL AND CYC=1 THEN BEGIN //如果成交量不同代表换主力合约了,找新的主力合约代码
   tVOL:=STKINDI(STRCAT(合约头,'01'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'01');
   tVOL:=STKINDI(STRCAT(合约头,'02'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'02');
   tVOL:=STKINDI(STRCAT(合约头,'03'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'03');  
   tVOL:=STKINDI(STRCAT(合约头,'04'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'04');
   tVOL:=STKINDI(STRCAT(合约头,'05'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'05');
   tVOL:=STKINDI(STRCAT(合约头,'06'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'06');
   tVOL:=STKINDI(STRCAT(合约头,'07'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'07');
   tVOL:=STKINDI(STRCAT(合约头,'08'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'08');
   tVOL:=STKINDI(STRCAT(合约头,'09'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'09');  
   tVOL:=STKINDI(STRCAT(合约头,'10'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'10');
   tVOL:=STKINDI(STRCAT(合约头,'11'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'11');     
   tVOL:=STKINDI(STRCAT(合约头,'12'),'vol.VOLUME',0,1);
   if tVOL=VOL THEN 合约代码:=STRCAT(合约头,'12');
   EXTGBDATASET(代码,合约代码);
END

 

这段代码有什么错误么?

怎么不行,请看看.谢谢!!

8楼
学习交易 发表于:2013/9/23 12:34:39

另外,请教一下在IF 里面可以用STKINI函数么?

因为以前用过好象有错的.

9楼
lichenghu 发表于:2013/9/23 13:38:13

VOL0:STKINDI(STRCAT(STRLEFT(STKLABEL,2),'00'),'vol.VOLUME',0,6);
VOL1:STKINDI(STRCAT(STRLEFT(STKLABEL,2),'01'),'vol.VOLUME',0,6);
VOL2:STKINDI(STRCAT(STRLEFT(STKLABEL,2),'02'),'vol.VOLUME',0,6);
VOL3:STKINDI(STRCAT(STRLEFT(STKLABEL,2),'03'),'vol.VOLUME',0,6);
IF VOL0=VOL1 THEN EXTGBSTRINGSET('合约代码',STRCAT(STRLEFT(STKLABEL,2),'01'));
IF VOL0=VOL2 THEN EXTGBSTRINGSET('合约代码',STRCAT(STRLEFT(STKLABEL,2),'02'));
IF VOL0=VOL3 THEN EXTGBSTRINGSET('合约代码',STRCAT(STRLEFT(STKLABEL,2),'03'));
DRAWTEXT( 1,H ,EXTGBSTRING('合约代码'))

 

理解下把

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


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