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

एटीआर स्टॉप प्रबंधन के साथ डीआई संकेतकों के आधार पर गतिशील अस्थिरता-समायोजित प्रवृत्ति रणनीति का पालन करना

लेखक:चाओझांग, दिनांकः 2025-01-06 16:18:01
टैगःडीआईडीएमआईएटीआरएसएमएएमए

img

अवलोकन

यह रणनीति एक ट्रेंड फॉलोइंग सिस्टम है जो डायरेक्शनल मूवमेंट इंडेक्स (डीएमआई) को औसत ट्रू रेंज (एटीआर) के साथ जोड़ती है। मूल तंत्र बाजार की प्रवृत्ति की दिशा और ताकत की पहचान करने के लिए डीआई + और डीआई- संकेतक का उपयोग करता है, जबकि गतिशील स्टॉप-लॉस और टेक-प्रॉफिट समायोजन के लिए एटीआर का उपयोग करता है। एक प्रवृत्ति फ़िल्टरिंग मूविंग एवरेज की शुरूआत से संकेत विश्वसनीयता में और वृद्धि होती है। रणनीति डिजाइन बाजार की अस्थिरता को ध्यान में रखता है और अच्छी अनुकूलन क्षमता का प्रदर्शन करता है।

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

यह रणनीति निम्नलिखित मुख्य तंत्रों पर आधारित है:

  1. प्रवृत्ति की दिशा और शक्ति को मापने के लिए DI+ और DI- संकेतक का उपयोग करता है। जब DI+ DI- के थ्रेशोल्ड मूल्य से अधिक हो जाता है, तो एक अपट्रेंड की पुष्टि होती है; डाउनट्रेंड के लिए इसके विपरीत।
  2. एक प्रवृत्ति फ़िल्टर चलती औसत (एसएमए) को एक प्रवृत्ति पुष्टिकरण उपकरण के रूप में शामिल करता है। सिग्नल केवल तभी ट्रिगर किए जाते हैं जब मूल्य और चलती औसत की स्थिति परस्पर पुष्टि होती है।
  3. स्टॉप-लॉस और टेक-प्रॉफिट स्तरों की गतिशील गणना करने के लिए एटीआर संकेतक का उपयोग करता है, जिससे यह सुनिश्चित होता है कि जोखिम प्रबंधन विभिन्न बाजार स्थितियों के अनुकूल हो।
  4. अत्यधिक व्यापारिक आवृत्ति से बचने के लिए व्यापार निष्पादन में समय संबंधी प्रतिबंधों का सख्ती से पालन करता है।

रणनीतिक लाभ

  1. मजबूत गतिशील समायोजन - एटीआर के माध्यम से बाजार की अस्थिरता के अनुकूलन को प्राप्त करता है।
  2. व्यापक जोखिम नियंत्रण - अस्थिरता पर आधारित गतिशील स्टॉप-लॉस और लाभ लेने की तंत्र लागू करता है।
  3. उच्च सिग्नल विश्वसनीयता - कई संकेतकों के क्रॉस-वैलिडेशन के माध्यम से झूठे संकेतों को कम करता है।
  4. लचीले मापदंड - रणनीति मापदंडों को विभिन्न बाजार विशेषताओं के लिए अनुकूलित किया जा सकता है।
  5. स्पष्ट निष्पादन तर्क - सटीक प्रवेश और निकास शर्तें वास्तविक दुनिया के कार्यान्वयन को सुविधाजनक बनाती हैं।

रणनीतिक जोखिम

  1. अस्थिरता बाजार जोखिम - सीमाबद्ध बाजारों में लगातार रुकने का कारण बन सकता है। सुझावः फ़िल्टरिंग के लिए दोलन संकेतक जोड़ें या पैरामीटर सीमाओं को समायोजित करें।

  2. स्लिप जोखिम - उच्च अस्थिरता की अवधि के दौरान महत्वपूर्ण स्लिप का सामना कर सकता है। सुझावः स्लिप को समायोजित करने के लिए स्टॉप-लॉस की स्थिति को उचित रूप से चौड़ा करें।

  3. झूठा ब्रेकआउट जोखिम - रुझान के मोड़ पर संभावित गलत आकलन। सुझावः संकेत की पुष्टि के लिए वॉल्यूम संकेतक शामिल करें।

  4. पैरामीटर संवेदनशीलता - प्रदर्शन विभिन्न पैरामीटर संयोजनों के साथ काफी भिन्न होता है। सुझावः बैकटेस्टिंग के माध्यम से स्थिर पैरामीटर रेंज ढूंढें।

रणनीति अनुकूलन दिशाएं

  1. सिग्नल अनुकूलन - प्रवृत्ति शक्ति मूल्यांकन के लिए ADX संकेतक की शुरूआत या वॉल्यूम पुष्टिकरण तंत्र जोड़ने पर विचार करें।

  2. स्थिति प्रबंधन - अधिक परिष्कृत जोखिम नियंत्रण के लिए प्रवृत्ति की ताकत के आधार पर गतिशील स्थिति आकार लागू करें।

  3. समय संरचना - सिग्नल की विश्वसनीयता बढ़ाने के लिए बहु-समय-सीमा विश्लेषण पर विचार करें।

  4. बाजार अनुकूलन - विभिन्न साधन विशेषताओं के आधार पर अनुकूलनशील मापदंड समायोजन तंत्र विकसित करना।

सारांश

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


/*backtest
start: 2019-12-23 08:00:00
end: 2025-01-04 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("使用 DI+ 和 DI- 的策略 (最終完整修正且含圖表止損止盈線)", overlay=true)

// 輸入參數
diLength = input.int(title="DI 長度", defval=14)
adxSmoothing = input.int(title="ADX Smoothing", defval=14)
trendFilterLength = input.int(title="趨勢過濾均線長度", defval=20)
strengthThreshold = input.int(title="趨勢強度門檻值", defval=20)
atrLength = input.int(title="ATR 長度", defval=14)
atrMultiplierStop = input.float(title="ATR 停損倍數", defval=1.5)
atrMultiplierTakeProfit = input.float(title="ATR 止盈倍數", defval=2.5)

// 計算 DI+ 和 DI-
[diPlus, diMinus, _] = ta.dmi(diLength, adxSmoothing)

// 計算趨勢過濾均線
trendFilterMA = ta.sma(close, trendFilterLength)

// 判斷趨勢方向和強度
strongUpTrend = diPlus > diMinus + strengthThreshold and close > trendFilterMA
strongDownTrend = diMinus > diPlus + strengthThreshold and close < trendFilterMA

// 計算 ATR
atr = ta.atr(atrLength)

// 追蹤止損止盈價格 (使用 var 宣告,只在進場時更新)
var float longStopPrice = na
var float longTakeProfitPrice = na
var float shortStopPrice = na
var float shortTakeProfitPrice = na

// 進場邏輯
longCondition = strongUpTrend
shortCondition = strongDownTrend

if (longCondition)
    strategy.entry("多單", strategy.long)
    longStopPrice := close - atr * atrMultiplierStop // 進場時計算並更新止損價
    longTakeProfitPrice := close + atr * atrMultiplierTakeProfit // 進場時計算並更新止盈價

if (shortCondition)
    strategy.entry("空單", strategy.short)
    shortStopPrice := close + atr * atrMultiplierStop // 進場時計算並更新止損價
    shortTakeProfitPrice := close - atr * atrMultiplierTakeProfit // 進場時計算並更新止盈價


// 出場邏輯 (使用 time 限制和 ATR)
inLongPosition = strategy.position_size > 0
inShortPosition = strategy.position_size < 0

lastEntryTime = strategy.opentrades.entry_bar_index(strategy.opentrades - 1)

if (inLongPosition and time > lastEntryTime)
    strategy.exit("多單出場", "多單", stop=longStopPrice, limit=longTakeProfitPrice)

if (inShortPosition and time > lastEntryTime)
    strategy.exit("空單出場", "空單", stop=shortStopPrice, limit=shortTakeProfitPrice)

// 繪製 DI+、DI- 和趨勢過濾均線
plot(diPlus, color=color.green, title="DI+")
plot(diMinus, color=color.red, title="DI-")
plot(trendFilterMA, color=color.blue, title="趨勢過濾均線")

// 繪製止損止盈線 (使用 plot 函數繪製)
plot(strategy.position_size > 0 ? longStopPrice : na, color=color.red, style=plot.style_linebr, linewidth=2, title="多單停損")
plot(strategy.position_size > 0 ? longTakeProfitPrice : na, color=color.green, style=plot.style_linebr, linewidth=2, title="多單止盈")
plot(strategy.position_size < 0 ? shortStopPrice : na, color=color.red, style=plot.style_linebr, linewidth=2, title="空單停損")
plot(strategy.position_size < 0 ? shortTakeProfitPrice : na, color=color.green, style=plot.style_linebr, linewidth=2, title="空單止盈")

संबंधित

अधिक