欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 为什么这个程序不能显示的当月合约的价格

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2165人关注过本帖树形打印复制链接

主题:为什么这个程序不能显示的当月合约的价格

帅哥哟,离线,有人找我吗?
yin8jun
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:503 积分:1033 威望:0 精华:0 注册:2011/11/18 10:56:56
为什么这个程序不能显示的当月合约的价格  发帖心情 Post By:2017/3/6 18:15:19 [只看该作者]

M1:=if(MONTH()>1,MONTH()-1,1);
HY1:='IF' + If(M1>9,numtostr(M1,0),'0'+numtostr(M1,0));  //当前月合约
HY2:='IF' + If(M1+1>9,numtostr(M1+1,0),'0'+numtostr(M1+1,0));//下月合约
HY0:='IF00';
VHY0:=CALLSTOCK(HY0,VTVOL,6,0),linethick0;
VHY1:=CALLSTOCK(HY1,VTVOL,6,0),linethick0;
VHY2:=CALLSTOCK(HY2,VTVOL,6,0),linethick0;
if VHY1=VHY0 then CurMonth:=Month();
if VHY2=VHY0 then CurMonth:=Month()+1; 
主力:curmonth,linethick0;
curmonth1:if(CurMonth<12,curmonth+1,1),linethick0;

thisif:='if'+If(curmonth>9,numtostr(curmonth,0),'0'+numtostr(curmonth,0)); 
nextif:='if'+If(curmonth1>9,numtostr(curmonth1,0),'0'+numtostr(curmonth1,0));

c1:CALLSTOCK('if00',vtclose,1,0);
if00c:CALLSTOCK(thisif,vtclose,1,0);

问题:if00c同c1的输出为什么不一样?

 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2017/3/7 8:56:57 [只看该作者]

你代码逻辑有问题,你自己输出的处理条件

EXPLAIN(1,thisif);
EXPLAIN(1,nextif);

对应的不是主力合约



编程无捷径,技巧靠积累。
 回到顶部
帅哥哟,离线,有人找我吗?
yin8jun
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:503 积分:1033 威望:0 精华:0 注册:2011/11/18 10:56:56
  发帖心情 Post By:2017/3/7 9:39:57 [只看该作者]

逻辑引用来自如下

 http://www.weistock.com/bbs/dispbbs.asp?boardid=10&Id=9750

 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2017/3/7 10:21:22 [只看该作者]

1,可以使用msgout输出当前主力具体合约看下,尝试把第一条语句改为M1:=if(MONTH()>1,MONTH(),1);

2,针对12月份的,防止出现下个月合约为IF13,需要单独判定下if m1=12 then HY2:='IF01';


 回到顶部
帅哥哟,离线,有人找我吗?
wenarm
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:26632 积分:0 威望:0 精华:7 注册:2015/4/9 14:59:07
  发帖心情 Post By:2017/3/7 10:37:35 [只看该作者]

1可以考虑直接使用DYNAINFO(210)

[此贴子已经被作者于2017-3-7 10:37:55编辑过]


编程无捷径,技巧靠积累。
 回到顶部