यह रणनीति औसत वास्तविक तरंग दैर्ध्य (ATR) का उपयोग करके मूल्य प्रवृत्ति को पकड़ती है और प्रवृत्ति को ट्रैक करने के लिए ATR के साथ स्टॉप लॉस सेट करती है।
एटीआर की गणना
एटीआर मूल्य के आधार पर स्टॉप लॉस का निर्धारण करना
जब कीमत स्टॉप लॉस लाइन को पार कर जाती है, तो अधिक खाली करें।
स्टॉपलॉस को गतिशील रूप से समायोजित करके लाभ को लॉक करें।
यह रणनीति एटीआर का उपयोग करती है ताकि ट्रेंड को प्रभावी ढंग से कैप्चर किया जा सके और स्टॉपलॉस को गतिशील रूप से समायोजित किया जा सके ताकि मुनाफा लॉक किया जा सके। अनुकूलित पैरामीटर सेटिंग्स रणनीति के प्रदर्शन को बढ़ा सकती हैं। लेकिन एटीआर लेगिंग समस्या को पूरी तरह से टाला नहीं जा सकता। कुल मिलाकर, यह रणनीति एक सरल और व्यावहारिक ट्रेंड ट्रैकिंग समाधान है।
/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
strategy(title="ATR Strategy", overlay = true, commission_type=strategy.commission.percent,commission_value=0.075)
//credits to HPotter for the orginal code
nATRPeriod = input(5)
nATRMultip = input(3.5)
xATR = ta.atr(nATRPeriod)
nLoss = nATRMultip * xATR
xATRTrailingStop = iff(close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0), math.max(nz(xATRTrailingStop[1]), close - nLoss),
iff(close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0), math.min(nz(xATRTrailingStop[1]), close + nLoss),
iff(close > nz(xATRTrailingStop[1], 0), close - nLoss, close + nLoss)))
pos = iff(close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0), 1,
iff(close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0)))
color = pos == -1 ? color.red: pos == 1 ? color.green : color.blue
plot(xATRTrailingStop, color=color, title="ATR Trailing Stop")
barbuy = close > xATRTrailingStop
barsell = close < xATRTrailingStop
strategy.entry("Long", strategy.long, when = barbuy)
strategy.entry("Short", strategy.short, when = barsell)
barcolor(barbuy? color.green:color.red)