ट्रेंड फॉलोइंग स्टॉप लॉस रणनीति


निर्माण तिथि: 2024-02-05 16:00:35 अंत में संशोधित करें: 2024-02-05 16:00:35
कॉपी: 0 क्लिक्स: 726
1
ध्यान केंद्रित करना
1617
समर्थक

ट्रेंड फॉलोइंग स्टॉप लॉस रणनीति

अवलोकन

ट्रेंड ट्रैकिंग स्टॉप-लॉस रणनीति एक ट्रेंड ट्रैकिंग स्टॉप-लॉस ट्रेडिंग रणनीति है जो ट्रेंड अलर्ट पर आधारित है। यह ट्रेंड अलर्ट के माध्यम से ट्रेंड की दिशा का आकलन करता है, ट्रेंड ट्रैकिंग प्रविष्टि को लागू करता है। साथ ही यह एटीआर संकेतक का उपयोग करके स्टॉप-लॉस सेट करता है, जो जोखिम नियंत्रण को लागू करता है।

रणनीति सिद्धांत

इस रणनीति में मुख्य रूप से निम्नलिखित घटक शामिल हैंः

  1. TrendAlert सूचक प्रवृत्ति की दिशा का निर्धारण करता है। जब TrendAlert 0 से अधिक होता है तो यह एक bullish संकेत है, और 0 से कम होने पर यह एक bearish संकेत है।

  2. एटीआर सूचकांक हालिया मूल्य उतार-चढ़ाव की सीमा की गणना करता है। एटीआर एटीआर स्टॉप मल्टीप्लायर को एटीआर स्टॉप मल्टीप्लायर से गुणा करता है।

  3. lowestLow और highestHigh एटीआर स्टॉप लॉस बिल्ड ट्रैकिंग स्टॉप लॉस के साथ। क्या स्ट्रक्चर पैरामीटर नियंत्रण सक्षम है?

  4. ट्रेड सिग्नल की दिशा के आधार पर अधिक या कम स्थिति में प्रवेश करें। प्रवेश के बाद, टेक प्रॉफिट और स्टॉप लॉस सेट करें।

  5. जब कीमत स्टॉपलॉस या स्टॉपलॉस को ट्रिगर करती है, तो पोजीशन को क्लियर करें।

इस रणनीति के माध्यम से प्रवृत्ति का आकलन, झूठे संकेतों को फ़िल्टर करना, स्टॉप-लॉस नियंत्रण जोखिमों को ट्रैक करना, लक्ष्य लाभ को सुनिश्चित करना, और ट्रेडिंग सिस्टम की स्थिरता को समग्र रूप से सुधारना।

श्रेष्ठता विश्लेषण

इस रणनीति के मुख्य फायदे हैंः

  1. ट्रेंड फ़िल्टरिंग और स्टॉप लॉस ट्रैकिंग दोहरी गारंटी, बाजार के शोर का पीछा करने से बचें, और सुनिश्चित करें कि ट्रेडिंग जोखिम नियंत्रित है।

  2. एटीआर स्व-अनुकूली रोकथाम सेटिंग्स अति-अनुकूलन को रोकने के लिए, कई बाजार स्थितियों के लिए उपयुक्त है।

  3. लक्ष्य को रोकना लाभ को सुनिश्चित करने के लिए है, लाभ को खाने से बचने के लिए।

  4. रणनीति तर्क स्पष्ट और संक्षिप्त है, संशोधनों को समझने में आसान है, और मात्रात्मक व्यापारियों के लिए उपयुक्त है।

  5. Pine स्क्रिप्टिंग भाषा में लिखा गया है, जिसे ट्रेडिंग व्यू प्लेटफॉर्म पर सीधे उपयोग किया जा सकता है, बिना किसी प्रोग्रामिंग के।

जोखिम विश्लेषण

इस रणनीति के कुछ जोखिम भी हैं:

  1. रुझान निर्णय में त्रुटि के कारण अनावश्यक प्रवेश और स्टॉप लॉस ट्रिगर हो सकता है। स्टॉप लॉस को उचित रूप से आराम दिया जा सकता है या प्रवेश संकेतों को फ़िल्टर किया जा सकता है।

  2. एटीआर में वास्तविक लहरों को कम करके आंका जा सकता है जब स्थिति में भारी उतार-चढ़ाव होता है। इस स्थिति में एटीआर स्टॉप मल्टीप्लायर को बढ़ाया जा सकता है।

  3. लक्ष्य स्टॉप रणनीति के लिए लाभ कमाने के लिए जगह को सीमित कर सकता है। बाजार के आधार पर सीमा गुणांक को समायोजित किया जा सकता है।

  4. कोड अस्तित्व तर्क केवल कीमतों पर आधारित है, और वास्तव में समय प्रबंधन के साथ जोड़ा जाना चाहिए।

अनुकूलन दिशा

इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः

  1. एटीआर लंबाई और स्टॉप मल्टीप्लायर को अनुकूलित करें, स्टॉप एल्गोरिदम की संवेदनशीलता को समायोजित करें।

  2. विभिन्न रुझानों और सूचकांकों को आज़माएं और बेहतर समय की तलाश करें।

  3. विशिष्ट व्यापार प्रकार विशेषताओं के अनुसार लक्ष्य रोकथाम मापदंडों को चुनें या समायोजित करें।

  4. समय की बर्बादी को रोकने के लिए और रात में अकेले रहने से बचने के लिए।

  5. ट्रेड वॉल्यूम इंडिकेटर फ़िल्टरिंग के साथ, नकली ब्रेकआउट रणनीति की स्थिरता को बढ़ाता है।

संक्षेप

इस रणनीति के लिए कुल मिलाकर एक बहुत ही व्यावहारिक रुझान ट्रैक करने के लिए रणनीति बंद. यह प्रवृत्ति ट्रैक करने के लिए प्रवृत्ति दिशा का निर्णय करने के लिए संकेतकों का उपयोग करता है, जबकि जोखिम नियंत्रण सुनिश्चित करने के लिए आत्म-अनुकूली रोकथाम की स्थापना. रणनीति स्पष्ट तर्क है, उपयोग करने के लिए सरल है, और शुरुआती सीखने के लिए बहुत उपयुक्त है. यह भी उन्नत रणनीति के विकास के लिए एक अच्छा ट्रेडिंग रणनीति ढांचा प्रदान करता है, यह अध्ययन और परिमाण व्यापारी के अनुकूलन के लायक है.

रणनीति स्रोत कोड
/*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))