嘿,各位期货大侠们!还在为每个月手动设定日历,苦苦寻找热门月而烦恼吗?别愁啦,快来试试 GetHotChange 这个神奇小能手!
今天咱就好好唠唠这个 GetHotChange。它就像是期货世界里的超级侦探,专门负责期货热门月换月和指定月到期日这些事儿。不管是国内还是国外交易所的商品期货、金融期货,它都能大显身手,轻松获取 HOT 热门月的具体月份,以及距离结算日到期还有多少天。这功能,简直就像给你的期货交易装上了一个精准导航!
别光听我说,赶紧打开MC软件,跟着我一起操作,体验一把“期货侦探”的快乐。
➤ 打开MC跟着一起操作吧:
透过 GetHotChange 抓到HOT商品目前的实际月份(上图显示在[HOT]的这一行),再透过 GetContractsExpire 可以收到商品距离结算日的剩余交易日,或是剩余日历日,也可直接回传对应的结算日期。
var:vs1(""),vRemainDate(""),vSettlement(""),vTest(""),vs2("");
if LastBarOnChart andInstr(symbol,"HOT")<>0 then begin
vs1=GetHotChange(symbol,date,time_s);
vRemainDate=NumToStr(GetContractsExpire(2,vs1,date,time_s),0)+"days";
vs2=NumToStr(GetContractsExpire(3,vs1,date,time_s),0);
vSettlement=LeftStr(vs2,4)+"/"+MidStr(vs2,5,2)+"/"+rightstr(vs2,2);
plot1(vs1,"[HOT]");
plot2(vRemainDate,"[Remain]");
plot3(vSettlement,"[Settlement]");
SetPlotColor(1,RGB(196,166,0));
SetPlotColor(2,RGB(196,166,0));
SetPlotColor(3,RGB(196,166,0));
end;
➤ 通过GetHotChange 函数延伸而来(仅用于回测中)
信号原理:取到某个时间点前后的指定月份合约,然后当两者出现不一致时,即表明HOT行情有换月,然后通过先平仓再开仓进行换仓动作。
var:vHotSymbol(""),vNextHotSymbol(""),vCon1(false);
once cleardebug;
if InStr(symbol,"HOT")<>0 then begin
vHotSymbol=GetHotChange(symbol,date,time_s);//获取当前的主力月份
vNextHotSymbol=GetHotChange(symbol,calcdate(date,1),time_s);//获取下日的主力月份
if Time = sess2endtime then begin
// 在当个交易日收盘时执行当根K平仓&Next bar 开仓动作
vCon1= vHotSymbol<>vNextHotSymbol;
if vCon1 then begin
if marketposition > 0 then begin
sell ("ChangeMonth_Sell") this bar on Close ; // this bar 仅用于回测
buy ("ChangeMonth_Buy") next bar at market;
end;
if marketposition < 0 then begin
buytocover ("ChangeMonth_Cover")this bar on Close ; //this bar 仅用于回测
sellshort("ChangeMonth_Short") next bar at market;
end;
end ;
end;
end;
➤ 图表实现效果如下:
最后,这个信号可以直接当成一个单独信号,插到原本策略的 HOT 图表上,就像给你的图表添了一个超有用的小插件。
不过要注意啦,中国金融期货交易所曾经在2016.01.01有修改过收盘时间,把收盘时间从15:15改成了15:00。而 Sess2endtime 取值是根据 Quotemanager 的收盘时段设置的。所以做 CFFEX 股指期货的朋友们,一定要留意收盘时间的这个小变化,别在时间上“掉链子”哦!
程序化交易的实现需要好的工具辅助
欢迎使用MultiCharts专策版v14
辅助你的量化交易!
MultiCharts是一款专为内盘、外盘期货设计的专业图表绘制和自动化交易软件。能够帮助用户实现行情分析、策略编写及自动化下单。
立
即
体
验
▼
欢迎前往Multicharts官网,或公众号后台回复【MC14】,下载软件免费试用1个月;
开通指南:点击“阅读原文” → 登录MC官网 → 购买年度会员 → 会员中心付款 → 自动开通权限