3 ईएमए, डीएमआई और एमएसीडी के साथ प्रवृत्ति-अनुसरण रणनीति

लेखक:चाओझांग, दिनांकः 2024-01-25 15:48:59
टैगः

img

अवलोकन

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

रणनीति तर्क

मूल तर्क समग्र प्रवृत्ति की पहचान करने के लिए एम5 समय सीमा पर गणना किए गए 3 ईएमए - 34, 89 और 200 पर आधारित है। 34-अवधि ईएमए निकट अवधि की दिशा देता है, जबकि 89 और 200 ईएमए क्रमशः मध्यम और दीर्घकालिक प्रवृत्तियों को परिभाषित करते हैं।

खरीद संकेत तब ट्रिगर होते हैं जबः

  • बंद मूल्य 34 ईएमए से ऊपर पार हो गया
  • +DI (बल्श दिशात्मक आंदोलन) > 17
  • ADX (ट्रेंड की ताकत) > -DI

बेचने के संकेत तब उत्पन्न होते हैं जबः

  • बंद मूल्य 34 ईएमए से नीचे पार हो गया
  • -डीआई (बियर दिशात्मक आंदोलन) > 17
  • ADX > +DI

प्रविष्टियों से पहले एमएसीडी संकेतक से अतिरिक्त पुष्टि मिलती है।

लाभ

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

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

जोखिम

विचार करने के लिए मुख्य जोखिमः

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

न्यूनीकरण के तरीके:

  • उचित स्टॉप-लॉस, स्थिति आकार का उपयोग करें
  • वर्तमान बाजार स्थितियों के लिए ईएमए लंबाई का अनुकूलन
  • दृश्य पुष्टि के लिए मूल्य कार्रवाई देखें

बढ़ोतरी के अवसर

रणनीति में और सुधारः

  1. ओवरबॉट/ओवरसोल्ड स्तरों के लिए आरएसआई जैसे अतिरिक्त फ़िल्टर जोड़ें
  2. मजबूत संकेतों के लिए वॉल्यूम विश्लेषण शामिल करें
  3. संपत्ति और समय सीमा के आधार पर संकेतकों और सेटिंग्स का परीक्षण और अनुकूलन
  4. नए बाजार डेटा से लगातार सीखने के लिए मशीन लर्निंग का उपयोग करें

निष्कर्ष

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


/*backtest
start: 2023-01-18 00:00:00
end: 2024-01-24 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("2 EMA di+ Buy Sell, strategy ", overlay=true)

// Define the EMA calculation function
ema(src, length) =>
    ta.ema(src, length)

// Calculate and plot EMA on M5
ema34_M5 = ema(close, 34)
ema89_M5 = ema(close, 89)
ema200_M5 = ema(close, 200)

// Plot EMAs
plot(ema34_M5, color=color.green, title="EMA 34 M5", linewidth=2)
plot(ema89_M5, color=color.blue, title="EMA 89 M5", linewidth=2)
plot(ema200_M5, color=color.black, title="EMA 200 M5", linewidth=2)

// Define DMI parameters
len = input(14, title="DI Length")
up = ta.change(high)
down = -ta.change(low)
plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
trur = ta.rma(ta.tr, len)
plusDI = 100 * ta.rma(plusDM, len) / trur
minusDI = 100 * ta.rma(minusDM, len) / trur

// Calculate ADX
adxValue = 100 * ta.rma(math.abs(plusDI - minusDI) / (plusDI + minusDI == 0 ? 1 : plusDI + minusDI), len)

// Define MACD parameters
fastLength = input(12, title="Fast Length")
slowLength = input(26, title="Slow Length")
signalLength = input(9, title="Signal Length")

// Calculate MACD
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalLength)

// Create buy/sell conditions
buyCondition = close > ema34_M5 and plusDI > 17 and adxValue > minusDI 
sellCondition = close < ema34_M5 and minusDI > 17 and adxValue > plusDI 

// Strategy logic
strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.entry("Sell", strategy.short, when = sellCondition)

// Create alerts for buy/sell signals
alertcondition(buyCondition, title="Buy Signal", message="Buy Signal")
alertcondition(sellCondition, title="Sell Signal", message="Sell Signal")

// Plot buy/sell arrows on the price chart
bgcolor(buyCondition ? color.new(color.green, 90) : sellCondition ? color.new(color.red, 90) : na)

plotarrow(buyCondition ? 1 : sellCondition ? -1 : na, colorup=color.new(color.green, 0), colordown=color.new(color.red, 0), offset=-1)


अधिक