inputs:Length1(5),Length2(20),M_HL(10),Fund(20000);Vars:Var1(0),TR(0),ATR(0),MA1(0),MA2(0),N_BuyK(0),N_SellK(0),ATR_BuyK(0),ATR_SellK(0),Price_BuyK(0),Price_SellK(0),Price_BuyAK(0),Price_SellAK(0),Price_SellS(0),Price_BuyS(0),Price_SellY(0),Price_BuyY(0),BuyPK(false),SellPK(false),BuyAK(false),SellAK(false),BuyA(false),SellA(false),BuyS(false),SellS(false),BuyY(false),SellY(false);Var1=maxlist(1,IntPortion(Fund/(O*bigpointvalue*0.1)));TR=maxlist(Maxlist((High-Low),absvalue(Close[1]-High)),absvalue(Close[1]-Low));ATR=Average(TR,Length2);MA1=Average(Close,Length1);MA2=Average(Close,Length2);N_BuyK=BarsSinceEntry+1;N_SellK=BarsSinceEntry+1;BuyPK=High>=Highest(High,Length1)andMA1>MA2;SellPK=Low<=Lowest(Low,Length1)andMA1
Price_BuyAK;SellAK=Close=Price_BuyS;SellY=Close>Price_BuyK+ATR_BuyKandClose<=Price_SellY;BuyY=Close=Price_BuyY;Price_SellY=Lowest(Low,M_HL)+N_BuyK*0.05*ATR;Price_BuyY=Highest(High,M_HL)-N_SellK*0.05*ATR;if(CurrentBar>Length2)thenbeginIfMarketPosition<=0andBuyPKthenbeginbuy("BPK")Var1sharesnextbarmarket;ATR_BuyK=ATR;Price_BuyK=Open;Price_BuyAK=Price_BuyK+ATR;Price_SellS=Price_BuyK-2*ATR;BuyA=false;end;IfMarketPosition>=0andSellPKthenbeginsellshort("SPK")Var1sharesnextbarmarket;ATR_SellK=ATR;Price_SellK=Open;Price_SellAK=Price_SellK-ATR;Price_BuyS=Price_SellK+2*ATR;SellA=false;end;if(BarsSinceEntry>1)thenbeginIfMarketPosition>0thenbeginif(BuyA=falseandBuyAK)thenbeginbuy("BAK")Var1sharesnextbarmarket;BuyA=True;end;IfSellSthensell("SS")nextbarmarket;IfSellYthensell("SY")nextbarmarket;end;IfMarketPosition>0thenbeginif(SellA=falseandSellAK)thenbeginsellshort("SAK")Var1sharesnextbarmarket;SellA=True;end;IfBuySthenbuytocover("BS")nextbarmarket;IfBuyYthenbuytocover("BY")nextbarmarket;end;end;end;