历史回测,怎么是同时买入/平仓呢

    //买入条件
          entry_condition1 = MidLine[1] < MidLine[0];
          entry_condition2 = CrossOver(kValue[0], DValue[0]);
          
          
    if( MarketPosition<>1 and  entry_condition1 and entry_condition2)
      {
          buy(lots,Open);
          takeprofeprice = open+win*minmove*pricescale;
          stoplostprice = open-loss*minmove*pricescale;
      }
      PlotNumeric ("takeprofeprice ",takeprofeprice,0,Red);
      PlotNumeric ("stoplostprice ",stoplostprice,0,Green);
    
     //出场            
     how_S =T*60;
    for i=0 to  how_S
    {
    if( MarketPosition == 1 and  High>=takeprofeprice)
      {
          Sell(0,max(Open,takeprofeprice));
      }    
      
      if( MarketPosition == 1 and  Low<=stoplostprice)
      {
          Sell(0,Min(Open,stoplostprice));
      }    
      }

历史回测,怎么是同时买入/平仓呢

实盘中,平仓作废

程序顺序,是先入场,后出场啊

该怎么改进呢?

 

 

历史 回测,怎么没有买入、平仓信号 了,怎么操作可以调出来
历史测试中怎么获取我的买入成本呢?A_BuyAvgPriceO用不了
怎么没有回测结果呢?
历史回测问题
历史回测问题
回测报告的平仓价格是开盘价,实盘交易的平仓价格是突破价。请问如何回测不准的问题?
多单平仓和空单开仓同时进行,怎么让同时的单子,延迟20秒,避开同时
代码回测历史优化逻辑可行性
平仓是怎么回事?
哪个函数可以做到在不同时间周期开仓平仓呢

历史回测,每一根bar只跑一次,用收盘状态下bar的数据来运行公式,如果同时满足了开平条件,就会标记开仓和平仓信号。

你策略的问题就在于,你的止损跳数对于你使用的周期来说太小了,导致同时满足条件。

你可以加上barssinceentry函数判断强制开仓bar不平仓

或者放大跳数

或者跨周期处理