Code: Select all
[LegacyColorValue = TRUE];
inputs:
ATRLength(2), ATRMult(2.4), UpColor(green), DnColor(red),TICKSAWAY(1),
starttrade (0800),
endtrade(1600),
dailyprofit(20),
dailyloss(50),
vEndTimeS(162000);
vars:
ATR(0),
avg(0),
dn(0),
up(0),
trend(1),
flag(0),
flagh(0),
SuperTrend(0),
todaynet(0),
yesterdaynet(0);
if date <> date[1] then begin
yesterdaynet = NetProfit;
end;
todaynet = NetProfit + openpositionprofit - yesterdaynet;
ATR = AvgTrueRange(ATRLength) * ATRMult;
avg = (high + low)/2;
up = avg + ATR;
dn = avg - ATR;
if close > up[1] then
trend = 1
else if close < dn[1] then
trend = -1;
if trend < 0 and trend[1] > 0 then flag=1 else flag=0;
if trend > 0 and trend[1] < 0 then flagh = 1 else flagh = 0;
if trend > 0 and dn < dn[1] then dn=dn[1];
if trend < 0 and up > up[1] then up=up[1];
if flag = 1 then up = avg + ATR;
if flagh = 1 then dn = avg - ATR;
condition98 = (-dailyloss < todaynet and todaynet < dailyprofit) and (Time > starttrade and time < endtrade);
if condition98 then begin
if trend = 1 and trend [1] < 0 then BUY next bar
MARKET;
if trend = -1 and trend [1] > 0 THEN SELLSHORT next bar market;
end;
it works but as I said if target daily is not reached and there is open position it continuos the nex day with this open position.
thanks