संसाधन लोड हो रहा है... लोड करना...

ट्रेंड अलर्ट इंडिकेटर के आधार पर स्टॉप लॉस रणनीति का अनुसरण करना

लेखक:चाओझांग, दिनांकः 2024-02-05 16:00:35
टैगः

img

अवलोकन

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

रणनीति तर्क

इस रणनीति में निम्नलिखित मुख्य भाग शामिल हैंः

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

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

  3. निम्नतम निम्नतम निम्नतम निम्नतम और उच्चतम उच्चतम उच्चतम ATR स्टॉप लॉस के साथ मिलकर ट्रैकिंग स्टॉप लॉस का निर्माण करते हैं। संरचना पैरामीटर नियंत्रित करता है कि यह सक्षम है या नहीं।

  4. प्रवृत्ति संकेत दिशा के अनुसार लंबी या छोटी स्थिति दर्ज करें। प्रवेश करने के बाद, लाभ लें और हानि रोकें सेट करें.

  5. बंद करें जब मूल्य स्टॉप लॉस या लाभ लेने के लिए ट्रिगर करता है।

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

लाभ विश्लेषण

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

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

  2. एटीआर अनुकूली स्टॉप लॉस सेटिंग ओवर ऑप्टिमाइजेशन को रोकती है और विभिन्न बाजार वातावरण के लिए उपयुक्त है।

  3. लाभ लेना लाभप्रदता सुनिश्चित करता है और लाभ को खाने से रोकता है।

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

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

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

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

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

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

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

  4. केवल मूल्य पर आधारित मौजूदा तर्क को समय प्रबंधन के साथ जोड़ा जाना चाहिए।

अनुकूलन दिशाएँ

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

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

  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))

अधिक