Hi,
Anyone available to review my code?
DEFPARAM CumulateOrders = False
DEFPARAM PreLoadBars = 300
Price = Close <—- I keep getting the following error ” Characters missing. Suggestions : end of code (How Fix?)
High3m = Highest[63](Price)
MA20 = Average[20](Price)
MA50 = Average[50](Price)
MA200 = Average[200](Price)
TR1 = High – Low
TR2 = Abs(High – Price[1])
TR3 = Abs(Low – Price[1])
TR = Max(TR1, Max(TR2, TR3))
ATR14 = Average[14](TR)
delta = Price – Price[1]
gain = Max(delta, 0)
loss = Max(-delta, 0)
avgGain = Average[2](gain)
avgLoss = Average[2](loss)
IF avgLoss <> 0 THEN
rs = avgGain / avgLoss
RSI2 = 100 – (100 / (1 + rs))
ELSE
RSI2 = 50
ENDIF
TrendOK = MA50 > MA200
ONCE inTrade = 0
ONCE partialTaken = 0
ONCE entryPrice = 0
ONCE stopLevel = 0
ONCE partialTarget = 0
ONCE positionSize = 0
IF BarIndex > 200 THEN
ATR_STOP_MULT = 3
PARTIAL_MULT = 2
DD_LOW = 0.82
DD_HIGH = 0.88
VOL_MULT = 1.5
RSI_THRESH = 3
K = 1500
IF ATR14 > 0 THEN
positionSize = Round(K / ATR14)
ELSE
positionSize = 0
ENDIF
IF inTrade = 0 THEN
IF High3m <> 0 AND MA20 <> 0 AND ATR14 <> 0 AND positionSize > 0 THEN
rel = Price / High3m
cond_dd = (rel <= DD_HIGH) AND (rel >= DD_LOW)
cond_vol = Price < (MA20 – VOL_MULT * ATR14)
cond_rsi = RSI2 < RSI_THRESH
cond_trend = TrendOK
IF cond_dd AND cond_vol AND cond_rsi AND cond_trend THEN
BUY positionSize CONTRACTS AT MARKET
inTrade = 1
partialTaken = 0
entryPrice = Price
stopLevel = entryPrice – ATR_STOP_MULT * ATR14
partialTarget = entryPrice + PARTIAL_MULT * ATR14
ENDIF
ENDIF
ELSE
exitReason = 0
IF Low <= stopLevel THEN
exitReason = 1
ENDIF
IF exitReason = 0 AND partialTaken = 0 AND High >= partialTarget THEN
halfSize = Round(positionSize / 2)
IF halfSize > 0 THEN
SELL halfSize CONTRACTS AT partialTarget
partialTaken = 1
ENDIF
ENDIF
IF exitReason = 0 AND partialTaken = 1 AND Price < MA20 THEN
exitReason = 2
ENDIF
IF exitReason > 0 THEN
SELL AT MARKET
inTrade = 0
partialTaken = 0
ENDIF
ENDIF
ENDIF