用atr止损信号怎么才能不闪烁

Params
   Numeric Len1(5);
   Numeric Len2(20);
   Numeric ATRLen(20);
   Numeric Lots(1);

Vars
   Series<Numeric> ma1(0,2);
   Series<Numeric> ma2(0,2);
   Series<Numeric> ATR(0,2);
   Series<Numeric> myExtPrc(0,2);
   Series<Integer> DirFlag(0,2);
   
Events
   OnBar(ArrayRef<Integer> indexs)
   {
       ma1 = AverageFC(Close,Len1);
       ma2 = AverageFC(Close,Len2);
       PlotNumeric(\"ma1\",ma1);
       PlotNumeric(\"ma2\",ma2);
       ATR = AvgTrueRange(ATRLen);
       
       If(MarketPosition<>1 And ma1[1]>ma2[1] And DirFlag<>1)
       {
           Buy(Lots,Open);
           DirFlag = 1;
           myExtPrc = EntryPrice - ATR*4; //开仓时根据开仓Bar的ATR计算止损价
       }
       If(MarketPosition<>-1 And ma1[1]<ma2[1] And DirFlag<>-1)
       {
           SellShort(Lots,Open);
           DirFlag = -1;
           myExtPrc = EntryPrice + ATR*4; //开仓时根据开仓Bar的ATR计算止损价
       }        
       
       If(MarketPosition==1 And BarsSinceEntry>0)
       {
           If(Low<=myExtPrc)
           {
               Sell(0,Min(Open,myExtPrc));
               Commentary(\"多头ATR止损出场!\");
           }
       }
       If(MarketPosition==-1 And BarsSinceEntry>0)
       {
           If(High>=myExtPrc)
           {
               BuyToCover(0,Max(Open,myExtPrc));
               Commentary(\"空头ATR止损出场!\");
           }
       }
   }

这样写,最新价触及止损价又跳到挂单价这时止损信号会闪烁吗

ATR到底怎么用?每次都又问题?!
怎么盈利才平?
这样调用大周期atr是导致信号闪烁的根本原因吗?
空头持仓,在计算止损价时,怎么atr出现了负值?
请教一个小白问题, .tbf,用什么程序打开才没有乱码? 
老师,信号闪烁怎么处理
atr止损
怎么才可以在一根bar上实现多次开仓
ATR函数没有被声明
longEntries要怎么用 ?

参考海龟止损

L < myexitprice

用最高最低价突破