以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  [讨论]关于HOLDING的疑问  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=158648)

--  作者:alohomora
--  发布时间:2017/10/16 8:54:43
--  [讨论]关于HOLDING的疑问
 最近改了个策略,大体代码如下:
KD:=CON1 AND HOLDING<1;          //开多条件
PD:=CON2 AND HOLDING>0;          //平多条件
KK:=CON3 AND HOLDING>-1;          //开空条件
PK:=CON4 AND HOLDING<0;          //平空条件
平空:SELLSHORT(PK,1,MARKETR);                  //平空信号
开多:BUY(KD AND HOLDING=0,1,MARKETR);          //开多信号
平多:SELL(PD,1,MARKETR);                       //平多信号
开空:BUYSHORT(KK AND HOLDING=0,1,MARKETR);     //开空信号

在固定轮询模式下,发现前面四个语句中增加HOLDING的取值计算后,会影响同一根K线不能同时出现平仓和开仓信号。而把前面四个语句中的HOLDING取值计算去掉后,改为在后面四句中增加HOLDING取值计算,则可以正常实现在同一根K线上同时出现平仓和开仓信号。
请问这是什么原因?为什么在前面有HOLDING取值的情况下,会影响同一根K线不能同时出现平仓和开仓信号?前面的HOLDING取值和后面的HOLDING取值,在固定轮询模式下,难道不是同样每个价位都重新计算一边吗?不都是最新的HOLDING值吗?应该结果是一样的才对啊。
--  作者:gxx978
--  发布时间:2017/10/16 9:11:55
--  

你把holding作为开平仓的条件或不作为条件,是有可能影响到信号的触发的,建议输出你的条件看下,看是否同时满足开平仓条件呢。