
यह रणनीति ट्रेंड फॉलोइंग रणनीति पर आधारित है, जो एटीआर इंडिकेटर के गतिशील स्टॉपलॉस के साथ लाभ को लॉक करने के लिए ट्रेंड फॉलोइंग रणनीति में शामिल है।
इस रणनीति में 20 चक्र की लंबाई के साथ एक तांगचिन चैनल सूचक का उपयोग किया जाता है, जिसमें चैनल की मध्य रेखा उच्चतम मूल्य और निम्नतम मूल्य का औसत है। जब कीमत चैनल की मध्य रेखा को पार करने के लिए ऊपर जाती है, तो यह खाली हो जाती है जब कीमत चैनल की मध्य रेखा को पार करने के लिए नीचे जाती है। ब्लीचिंग की शर्त यह है कि कीमत गतिशील स्टॉपलॉस को छूती है। स्टॉपलॉस की गणना एटीआर सूचक के मूल्य को कम करने के लिए नवीनतम 3 के लाइनों के सबसे कम मूल्य का एक तिहाई है। एक अतिरिक्त स्टॉप के रूप में, हाल ही में 3 के लाइनों के उच्चतम मूल्य के साथ एटीआर सूचक के मूल्य का एक तिहाई।
इस रणनीति के मुख्य फायदे हैंः
इस रणनीति में मुख्य रूप से निम्नलिखित जोखिम हैं:
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
इस रणनीति के लिए समग्र रूप से एक सरल व्यावहारिक प्रवृत्ति का पालन करने की रणनीति है, जो ट्रेंड की दिशा का निर्धारण करने के लिए टोंग-आन चैनल का उपयोग करता है, और गतिशील स्टॉपलॉस का उपयोग करके मुनाफे को लॉक करने के लिए, प्रभावी रूप से ट्रेंड कैप्चरिंग का पालन कर सकता है। रणनीति मजबूत है, लेकिन इसे कई तरीकों से और अधिक अनुकूलित किया जा सकता है, जिससे रणनीति अभी भी अधिक जटिल बाजार वातावरण में स्थिर आय रख सकती है।
/*backtest
start: 2023-11-29 00:00:00
end: 2023-12-06 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title = "dc", overlay = true)
atrLength = input(title="ATR Length:", defval=20, minval=1)
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testEndYear = input(2018, "Backtest Start Year")
testEndMonth = input(12)
testEndDay = input(31, "Backtest Start Day")
testPeriodEnd = timestamp(testEndYear,testEndMonth,testEndDay,0,0)
testPeriod() =>
true
//time >= testPeriodStart ? true : false
dcPeriod = input(20, "Period")
dcUpper = highest(close, dcPeriod)[1]
dcLower = lowest(close, dcPeriod)[1]
dcAverage = (dcUpper + dcLower) / 2
atrValue=atr(atrLength)
useTakeProfit = na
useStopLoss = na
useTrailStop = na
useTrailOffset = na
//@version=1
Buy_stop = lowest(low[1],3) - atr(20)[1] / 3
plot(Buy_stop, color=red, title="buy_stoploss")
Sell_stop = highest(high[1],3) + atr(20)[1] / 3
plot(Sell_stop, color=green, title="sell_stoploss")
plot(dcLower, style=line, linewidth=3, color=red, offset=1)
plot(dcUpper, style=line, linewidth=3, color=aqua, offset=1)
plot(dcAverage, color=black, style=line, linewidth=3, title="Mid-Line Average")
strategy.entry("simpleBuy", strategy.long, when=(close > dcAverage) and cross(close,dcAverage))
strategy.close("simpleBuy",when= ( close< Buy_stop))
strategy.entry("simpleSell", strategy.short,when=(close < dcAverage) and cross(close,dcAverage) )
strategy.close("simpleSell",when=( close > Sell_stop))
//strategy.exit("Exit simpleBuy", from_entry = "simpleBuy", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)
//strategy.exit("Exit simpleSell", from_entry = "simpleSell", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset)