能否自动指定改合约的连续合约? [金字塔]
-
咨询内容:
我的程序必须在具体合约实施, 例如SF2009,CF2009, 但是我又想直接调用该合约的连续合约的日线的指标,也就是问能否自动指定改合约的连续合约? 例如这个程序放在SF2009 5分钟上能自动调用SF的连续合约, 放到CF2009 5分钟上又会自动调用CF的连续合约, 不需要在不同品种中修改程序, 要怎样写?
-
金字塔客服:
s:=STRREMOVE(STKLABEL,STRLEN(STKLABEL)-2,2);
lxstr:=s+'00';//连续品种代码
这样有了品种代码。你后面就可以调用连续的数据了。在跨周期调用里面指定品种代码是lxstr 就行了。来源:程序化久久网( WWW.CXH99.COM )
-
用户回复:
使用你给的程序, 放在AP10 的一分钟身上, 得出s是:100001.000, lsstr:1000002.000, 并不会返回AP00 呀? 是不是你程序有错?
-
网友回复:
字符串不能直接在图表变量值输出。必须通过绘图函数或者EXPLAIN函数输出显示。
上面的代码没没有对双年份合约和原油进行处理。需要调整下。以保证逻辑的健壮性。
STR:=STRTRIMRIGHT( STKLABEL, '0123456789');
//双年份合约,豆一和白糖虽然取消双年份,但是金字塔为保证老用户策略的正常操作,所以保持不变。因此依旧需要区分。
if STRCMP(STR,'AY')=0 or STRCMP(STR,'BUY')=0 OR STRCMP(STR,'SRY') THEN BEGIN
STR:=STRREPLACE(STR , 'Y','X' );
END
//EXPLAIN( 1, STR );//区分处理原油和其他品种的连续代码
[此贴子已经被作者于2020/7/16 8:29:48编辑过]
STR00:=IF(STRCMP(STR,'SC')=0,STRCAT(STR , '0000'),STRCAT( STR, '00'));
EXPLAIN( 1, STR00 ); - 网友回复: 你的程序跟第一次给的程序完全不一样, 我只需要拿到一个连续合约代码, 输出值是 STR00 吗?我直接调用 STR00 就可以了吗? 例如 STKINDI('str00','macd.def',0,6,-1),noaxis;
有思路,想编写各种指标公式,交易模型,选股公式,还原公式的朋友
可联系技术人员 QQ: 262069696 或微信号:cxh99cxh99 进行 有偿收费 编写!
(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)
相关文章
-
没有相关内容