请教老师mq (文华财经WH6赢顺V6.7)

投资者咨询:请教老师mq (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-10 0:36
 象 If(Low <= DispBottom[1])
{
Sell(DefaultVol,Min(Open,DispBottom[1]));
这样语句指令价是否在mq里补齐那些数据可以准确回测 ?? 在wh8里是否不能准确回测??
技术人员回复
日期:2018-5-10 8:20
您理解错了

mq,wh8数据都是全的,不能按照指令价回测是因为回测的时候无法取到盘中的价格,无法进行撮合成交

所以无论mq,还是wh8都是一样的,您想要回测与实盘一个效果是不可能的

不过实盘和回测委托时间是一致的,差别就是成交价格,其实也是就滑点的差别,您回测的时候设置几个滑点就可以了


另外,回测的主要目的是检测模型是否有缺陷,以便不断的修改优化

如果模型回测收益不错的话,您可以直接模组模拟实盘运行,就会以您编写的指令价委托的,这也是检验模型的最后一个步骤

如果模组运行效果您满意的话,那么后续就可以应用到实盘了
投资者咨询:请教老师mq (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-10 0:36
 老师 If(Low <= DispBottom[1])
{
Sell(DefaultVol,Min(Open,DispBottom[1]));
代码的意思是实现信号bar的下一个k线用开盘价和促发价比较限价发单理解对吗??还是出信号的bar的下一个bar比较开盘和触发价后在下一个bar开始发限价单就是差一个bar??我想实现信号bar后按现价开盘比较促发价发限价单等待三个bar无法成交撤单??
技术人员回复
日期:2018-5-10 9:04
您的理解是对的

满足Low <= DispBottom[1]条件的k线,在下一根开仓以开盘价和触发价比较,限价发单


您想要撤单的思路,可以在委托处设置启动终止下单,之后在下单版设置撤单时间

If(Low <= DispBottom[1])
{
Sell(DefaultVol,Min(Open,DispBottom[1]),Cancel_Order);
}



图片点击可在新窗口打开查看
投资者咨询:请教老师mq (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-10 0:36
 老师关于该代码回测不准确因为实盘有不成交的可能但是还是有回测数据是否回测的价格是按我的理想价格成交的不管是否实盘成交???还是按下个k线开盘就成交了这两个结果回测都不一样会有点差??文华wh8回测的限价是按哪种方法回测的??
技术人员回复
日期:2018-5-10 14:10
您一个问题一个问题的描述

因为wh8与mq软件执行机制是不同的,所以不知道您咨询的哪个?


这里给您介绍下不同软件信号执行方式,您在理解下,哪里不理解的您在提问

1、MQ软件不使用信号控制函数

模组信号执行方式,出信号立即下单,k线走完复核

回测是按照收盘价回测,满足条件,下一根k线委托

2、WH8 软件不使用信号控制函数

模组、回测,按照收盘价判断信号是否满足开仓条件,之后下一根k线开盘时委托


   
投资者咨询:请教老师mq (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-10 0:36
 谢谢老师还是这样更清楚Sell(DefaultVol,(Open+close)/2,Cancel_Order);本个k线收加开均价,那就是下个k先发出委托价限价不管是否成交按我设定的条件时间进行撤单这个不管,有不成交概率那回测时是按哪个价格虚拟成交回测的,1是成交回测价格是下一个k线开盘价而不是我的限价    2还是按我限价模拟成交回测,以上两种情况wh8是如何回测的??
技术人员回复
日期:2018-5-10 15:43
Sell这种写法需要在MQ软件书写,WH8没有这种写法的

wh8使用SETALLSIGPRICETYPE函数指定委托价格,委托价格不支持回测,以满足条件的那根k线收盘价回测

MQ软件回测价格参考截图,在插入》插入指令


图片点击可在新窗口打开查看