您现在的位置:程序化交易>> 期货公式>> (MC)multicharts>> MC知识>>正文内容

Alex大神请进_关于全局变量回测问题 [MC]

  • MC用户求助:

    1.其实我的问题非常简单,也就是做价差套利的时候,我希望开仓和平仓同时!(如果不能开平同时,我不如做投机了)我考虑用全局变量,来同步开平,但是因为要开2个或多个图表传递值,这样用全局就不能准确回测,希望老师能给一个方法?

    2.接上面的问题,我发现子图数据是没有BAR内一说的,这样做价差就不能很好匹配我主图数据,(回测肯定是不准的,实时可以匹配)导致我无法开BAR内情况下,准确交易价差开仓(这里2个数据都是同一周期级别的),因为图A,计算得是A和B品种价差,A是主图数值有BAR内,B没有BAR内,所以开BAR内,和另一个图表的开仓会有偏差,请问老师有什么解决办法,或其他好方法?

    3.一般来说价差交易,需不需要开平同步?同步好,还是不同步好?希望能解答下我们广大初学者的疑问

    (来自旧论坛客户,sswywangyun)

     

  • MC回复讨论一:

    一、对于两个图表之间传递数值,实时中可以做到,但是回测中做不到,因为回测时没有办法做到“存“和”取“这两个动作有序进行,也就是”存“、”取“、”存“、”取“.......;对于这个问题,您只能使用投资组合回测,这样可以达到这两个动作有序进行;由于MCpro版本中有专门一系列的全局变量,但是MC8s和MC8.8都没有这些专门的全局变量,所以您可以使用GVgetnameddouble、GVsetnameddouble、GVgetnamedint和GVsetnamedint这四个全局函数来达到全局传递的目的。

    二、子图没有bar内的概念,所以基于图表的多子图bar内回测是不准确的,因为取不到子图的bar内数据;在投资组合回测中,没有bar内的概念,回测中是每根bar计算一次,更不可能有精细资料(即使代码中使用了开启bar的语句);在投资组合实时测试和投资组合交易中,开启bar内,是每tick计算一次,但是不能bar内发送委托单,这个是方便资金管理。

    三、对于价差交易,当然是开平同步好,如果不同步,就会有潜在的风险,所以尽量做到开平同步。

    四、对于没有办法准确bar内回测,以至不能准确的评估价差套利回测,这个问题,您可以使用tick周期图表或者通过先将相关数据利用print输出出来,然后通过excel处理一下数据,找到准备的开平仓进出场点,然后将这些进出场点的数据通过txt_read这个关键字导入到代码中,进而准确的对价差套利进行回测。

     

  • MC回复讨论二:

    首先谢谢ALEX老师的回答。

    接老师回答三,既然开平同步比较好,我A和B策略也要有止盈和止损,A策略止盈了,B策略没有止损,就瘸腿了。这种怎么办?我不想用全局变量的情况下

    其实我就要,价差策略,开平止损止盈同步,又可以回测,我要的就是这么简单~~~麻烦老师解答下

    老师,也就是说,我在代码中用全局变量止损止盈,再用投资组合回测(PB),就可以达到回测目的是吗?用组合回测就搞定一切了?

     

  • MC回复讨论三:

    一、bar内交易使用图表交易,通过GV全局变量传递图表信息,因为投资组合交易不支持bar内交易。

    二、使用投资组合回测(在回测中使用GV全局变量来传递全局信息),但是投资组合回测不能bar内回测。

    三、如果您需要bar内回测的话,您可以使用二楼的第四部位回复;其实之前所有的信息都已经回复您了,只是没有直接告诉您怎么做,只是需要您自己去选择方案。

     

  • MC回复讨论四:

    一、bar内交易使用图表交易,通过GV全局变量传递图表信息,因为投资组合交易不支持bar内交易。

    二、使用投资组合回测(在回测中使用GV全局变量来传递全局信息),但是投资组合回测不能bar内回测。

    三、如果您需要bar内回测的话,您可以使用二楼的第四部位回复;其实之前所有的信息都已经回复您了,只是没有直接告诉您怎么做,只是需要您自己去选择方案。

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 511411198  点击这里给我发消息进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容