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

请教v3公式升级到v4的问题 - TradeBlazer公式 [开拓者 TB]

  • 咨询内容: 原v3公式

    If(A_BuyPosition==0&& condition1 && GetGlobalVar(0)==0)
    {
          NewPrice=Q_AskPrice+ShiftUnit*MinMove*PriceScale;
          A_SendOrder(Enum_Buy,Enum_Entry,Lots,NewPrice);
          SetGlobalVar(0,1);
    }

    If (A_SellPosition==0 && condition2 && GetGlobalVar(1)==0)
    {           
          NewPrice=Q_BidPrice-ShiftUnit*MinMove*PriceScale;
          A_SendOrder(Enum_Sell,Enum_Entry,Lots,NewPrice);
          SetGlobalVar(1,1);
    }


    If(A_BuyPosition>0 && condition2)
    {
    NewPrice=Q_LowerLimit();
    A_SendOrder(Enum_Sell,Enum_Exit,A_BuyPosition,NewPrice);//以跌停价平多
    SetGlobalVar(0,0);       
    }

    If(A_SellPosition>0 && condition1)
    {
    NewPrice=Q_UpperLimit();
    A_SendOrder(Enum_Buy,Enum_Exit,A_SellPosition,NewPrice);
    SetGlobalVar(1,0);       
    }

    在v3里执行时,满足condition1会开多平空,满足condition2会开空平多,但到v4执行时,在同一时间似乎只会平仓,不会开仓,要过一段时间再次慢足condition时才会再开仓。如何在v4中解决平仓反手问题?

     

  • TB技术人员: 回复 1# 文韦


    用commentary输出A_BuyPosition==0&& condition1 && GetGlobalVar(0)==0,看看是否满足
    V4公式升级请看这里

     

  • TB客服: 这段程序在v3里实盘3、4个月了,一切正常。升到v4时程序编译也正常,但就是成交时,似乎同一时间本该平仓反手的情况,只平仓,不开仓。

     

  • 网友回复: 回复 3# 文韦


    条件问题,输出看看吧。
    整体看起来都是没问题的

     

  • 网友回复: 谢谢。另外v3中If(Q_Last()<LowD(1))正常在v4中显示存在可能的逻辑错误,是否改为这样
    myLowD=LowD(1);
    if (Q_Last()<mylowd).......

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

相关文章

    没有相关内容