ट्रेंड फॉलोइंग स्टॉप लॉस रणनीति एक ट्रेंड ट्रैकिंग स्टॉप लॉस ट्रेडिंग रणनीति है जो ट्रेंड अलर्ट संकेतक पर आधारित है। यह ट्रेंड ट्रैकिंग प्रविष्टि को लागू करने के लिए ट्रेंड अलर्ट संकेतक के माध्यम से ट्रेंड दिशा निर्धारित करती है। साथ ही, यह जोखिमों को नियंत्रित करने के लिए स्टॉप लॉस सेट करने के लिए एटीआर संकेतक का उपयोग करती है।
इस रणनीति में निम्नलिखित मुख्य भाग शामिल हैंः
TrendAlert सूचक प्रवृत्ति की दिशा का आकलन करता है। जब TrendAlert 0 से अधिक होता है, तो यह एक तेजी का संकेत है। जब 0 से कम होता है, तो यह एक मंदी का संकेत है।
एटीआर संकेतक हाल ही में मूल्य उतार-चढ़ाव सीमा की गणना करता है। एटीआर को एटीआर स्टॉप लॉस गुणक atrStopMultiplier से गुणा करके फिक्स्ड स्टॉप लॉस के रूप में उपयोग किया जाता है।
निम्नतम निम्नतम निम्नतम निम्नतम और उच्चतम उच्चतम उच्चतम ATR स्टॉप लॉस के साथ मिलकर ट्रैकिंग स्टॉप लॉस का निर्माण करते हैं। संरचना पैरामीटर नियंत्रित करता है कि यह सक्षम है या नहीं।
प्रवृत्ति संकेत दिशा के अनुसार लंबी या छोटी स्थिति दर्ज करें। प्रवेश करने के बाद, लाभ लें और हानि रोकें सेट करें.
बंद करें जब मूल्य स्टॉप लॉस या लाभ लेने के लिए ट्रिगर करता है।
रणनीति ट्रेंड जजमेंट के माध्यम से झूठे संकेतों को फ़िल्टर करती है, स्टॉप लॉस को ट्रैक करके जोखिमों को नियंत्रित करती है, लाभ लेने के माध्यम से लाभप्रदता सुनिश्चित करती है, और ट्रेडिंग प्रणाली की स्थिरता में सुधार करती है।
इस रणनीति के मुख्य लाभ इस प्रकार हैंः
रुझान फ़िल्टर करने और स्टॉप लॉस को ट्रैक करने की दोहरी गारंटी बाजार शोर का पीछा करने से बचती है और नियंत्रित ट्रेडिंग जोखिम सुनिश्चित करती है।
एटीआर अनुकूली स्टॉप लॉस सेटिंग ओवर ऑप्टिमाइजेशन को रोकती है और विभिन्न बाजार वातावरण के लिए उपयुक्त है।
लाभ लेना लाभप्रदता सुनिश्चित करता है और लाभ को खाने से रोकता है।
रणनीति तर्क स्पष्ट और संक्षिप्त है, समझने और संशोधित करने में आसान है, मात्रात्मक व्यापारियों के लिए उपयुक्त है।
पाइन स्क्रिप्ट भाषा में लिखा गया है, बिना प्रोग्रामिंग कौशल के सीधे ट्रेडिंग व्यू प्लेटफॉर्म पर इस्तेमाल किया जा सकता है।
इस रणनीति में कुछ जोखिम भी हैंः
गलत ट्रेंड जजमेंट अनावश्यक प्रवेश और स्टॉप लॉस ट्रिगर का कारण बन सकता है। आप स्टॉप लॉस या फिल्टर प्रवेश संकेतों को उचित रूप से आराम कर सकते हैं।
जब बाजार में भारी उतार-चढ़ाव होता है, तो एटीआर वास्तविक आयाम को कम आंक सकता है। इस समय, एटीआर स्टॉप लॉस गुणक को बढ़ाया जा सकता है।
लक्ष्य लाभ लेने से रणनीति के लाभ क्षेत्र को सीमित किया जा सकता है। बाजार के अनुसार सीमा गुणक पैरामीटर को समायोजित करें।
केवल मूल्य पर आधारित मौजूदा तर्क को समय प्रबंधन के साथ जोड़ा जाना चाहिए।
इस रणनीति को निम्नलिखित पहलुओं में अनुकूलित किया जा सकता हैः
पैरामीटर ATR लंबाई atrLength और स्टॉप लॉस गुणक atrStopMultiplier को अनुकूलित करें स्टॉप लॉस एल्गोरिथ्म की संवेदनशीलता को समायोजित करने के लिए।
बेहतर प्रवेश के अवसरों को खोजने के लिए विभिन्न रुझान संकेतकों का प्रयास करें।
विशिष्ट व्यापारिक किस्मों की विशेषताओं के अनुसार लक्ष्य लाभ पैरामीटर का चयन या समायोजन करें।
रात भर के जोखिमों से बचने के लिए टाइम स्टॉप लॉस तंत्र को बढ़ाएं।
रणनीति की स्थिरता में सुधार के लिए व्यापारिक मात्रा के संकेतकों को मिलाकर झूठे ब्रेकआउट को फ़िल्टर करें।
सामान्य तौर पर, यह एक बहुत ही व्यावहारिक ट्रेंड ट्रैकिंग स्टॉप लॉस रणनीति है। यह ट्रेंड ट्रैकिंग को प्राप्त करने के लिए ट्रेंड दिशा निर्धारित करने के लिए संकेतकों का उपयोग करता है, जबकि जोखिम नियंत्रण सुनिश्चित करने के लिए अनुकूलन स्टॉप सेट करता है। रणनीति तर्क स्पष्ट और उपयोग करने में आसान है, जिससे यह शुरुआती लोगों के लिए सीखने के लिए आदर्श है। साथ ही, यह उन्नत रणनीति विकास के लिए एक अच्छी ट्रेडिंग रणनीति ढांचा भी प्रदान करता है, जो मात्रात्मक व्यापारियों के लायक है। गहन अनुसंधान और अनुकूलन।
/*backtest start: 2023-01-29 00:00:00 end: 2024-02-04 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © jaque_verdatre //@version=5 strategy("TrendAlert Based", overlay = true) // Get inputs TrendAlert = input.source(close, "TrendAlert") atrLength = input.int(title="ATR Length", defval=15, minval=1) useStructure = input.bool(title="Use Structure?", defval=true) lookback = input.int(title="How Far To Look Back For High/Lows", defval=8, minval=1) atrStopMultiplier = input.float(title="ATR Multiplier", defval=0.2, minval=0.1) LimitMultiplier = input.float(title = "Limit Multiplier", defval = 0.5, minval = 0.1) PineConnectorID = input.int(title = "Pine Connector ID",defval = 0) CurrencyToSend = input.string(title = "personilized currency", defval = "ETHUSD") Risk = input.int(title = "risk in % to send", defval = 10, minval = 1) // Calculate data atr = ta.atr(atrLength) lowestLow = ta.lowest(low, lookback) highestHigh = ta.highest(high, lookback) longStop = (useStructure ? lowestLow : close) - atr * atrStopMultiplier shortStop = (useStructure ? highestHigh : close) + atr * atrStopMultiplier // Draw data to chart plot(atr, color=color.rgb(33, 149, 243), title="ATR", display = display.none) plot(longStop, color=color.green, title="Long Trailing Stop") plot(shortStop, color=color.red, title="Short Trailing Stop") var float LimitL = na var float LimitS = na var float LPosPrice = na var float SPosPrice = na var float LPosLongStop = na var float SPosShortStop = na KnowLimit (PosPrice, PosStop) => (PosPrice-PosStop)*LimitMultiplier+PosPrice NotInTrade = strategy.position_size == 0 InLongTrade = strategy.position_size > 0 InShortTrade = strategy.position_size < 0 longCondition = TrendAlert > 0 and NotInTrade if (longCondition) LPosPrice := close LPosLongStop := longStop LimitL := KnowLimit(LPosPrice, LPosLongStop) strategy.entry("long", strategy.long) LTPPip = LimitL-LPosPrice LSLPip = LPosPrice-longStop alert(str.tostring(PineConnectorID)+',buy,'+str.tostring(CurrencyToSend)+',risk='+str.tostring(Risk)+',sl='+str.tostring(LSLPip)+'tp='+str.tostring(LTPPip), alert.freq_once_per_bar_close) strategy.exit("exit", "long", stop = longStop, limit = LimitL) shortCondition = TrendAlert < 0 and NotInTrade if (shortCondition) SPosPrice := close SPosShortStop := shortStop LimitS := KnowLimit(SPosPrice, SPosShortStop) strategy.entry("short", strategy.short) STPPip = SPosPrice-LimitS SSLPip = shortStop - SPosPrice alert(str.tostring(PineConnectorID)+',sell,ETHUSD,risk=10,sl='+str.tostring(SSLPip)+'tp='+str.tostring(STPPip), alert.freq_once_per_bar_close) strategy.exit("exit", "short", stop = shortStop, limit = LimitS) plotshape(longCondition, color = color.green, style = shape.labelup, location = location.belowbar, size = size.normal, title = "Long Condition") plotshape(shortCondition, color = color.red, style = shape.labeldown, location = location.abovebar, size = size.normal, title = "Short Condition") if (InShortTrade) LimitL := close LPosLongStop := close LPosPrice := close PlotLongTakeProfit = plot(LimitL, color = InLongTrade ? color.rgb(0, 255, 64) : color.rgb(120, 123, 134, 100), title = "Long Take Profit") PlotLongStopLoss = plot(LPosLongStop, color = InLongTrade ? color.rgb(255, 0, 0) : color.rgb(120, 123, 134, 100), title = "Long Stop Loss") PlotLongPosPrice = plot(LPosPrice, color = InLongTrade ? color.gray : color.rgb(120, 123, 134, 100), title = "Long Position Price") if (InLongTrade) LimitS := close SPosShortStop := close SPosPrice := close PlotShortTakeProfit = plot(LimitS, color = InShortTrade ? color.rgb(0, 255, 64) : color.rgb(120, 123, 134, 100), title = "Short Take Profit") PlotShortStopLoss = plot(SPosShortStop, color = InShortTrade ? color.rgb(255, 0, 0) : color.rgb(120, 123, 134, 100), title = "Short Stop Loss") PlotShortPosPrice = plot(SPosPrice, color = InShortTrade ? color.gray : color.rgb(120, 123, 134, 100), title = "Short Position Price") fill(PlotLongPosPrice, PlotLongTakeProfit, color = InLongTrade ? color.rgb(0, 255, 0, 95) : color.rgb(0, 255, 0, 100)) fill(PlotShortPosPrice, PlotShortTakeProfit, color = InShortTrade ? color.rgb(0, 255, 0, 95) : color.rgb(0, 255, 0, 100)) fill(PlotLongPosPrice, PlotLongStopLoss, color = InLongTrade ? color.rgb(255, 0, 0, 95) : color.rgb(255, 0, 0, 100)) fill(PlotShortPosPrice, PlotShortStopLoss, color = InShortTrade ? color.rgb(255, 0, 0, 95) : color.rgb(255, 0, 0, 100))