// ATR Trailing Stop Calculation var float atr_trailing_stop = na atr_trailing_stop := if src > nz(atr_trailing_stop[1]) and src[1] > nz(atr_trailing_stop[1]) math.max(nz(atr_trailing_stop[1]), src - nLoss) else if src < nz(atr_trailing_stop[1]) and src[1] < nz(atr_trailing_stop[1]) math.min(nz(atr_trailing_stop[1]), src + nLoss) else if src > nz(atr_trailing_stop[1]) src - nLoss else src + nLoss
// Position Logic var int pos = 0 pos := if src[1] < nz(atr_trailing_stop[1]) and src > nz(atr_trailing_stop[1]) 1 else if src[1] > nz(atr_trailing_stop[1]) and src < nz(atr_trailing_stop[1]) -1 else nz(pos[1])