आवेग MACD और डबल मूविंग औसत क्रॉसओवर पर आधारित बहु-समय पैमाने प्रवृत्ति ट्रैकिंग रणनीति

MACD SMMA SMA ZLEMA EMA MA
निर्माण तिथि: 2024-05-17 15:33:02 अंत में संशोधित करें: 2024-05-17 15:33:02
कॉपी: 5 क्लिक्स: 1201
1
ध्यान केंद्रित करना
1617
समर्थक

आवेग MACD और डबल मूविंग औसत क्रॉसओवर पर आधारित बहु-समय पैमाने प्रवृत्ति ट्रैकिंग रणनीति

अवलोकन

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

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

  1. 34 की गणना की लंबाई के उच्च मूल्य, कम मूल्य, समापन मूल्य SMMA, ZLEMA, प्राप्त करें Impulse MACD ((MD)) ।
  2. सिग्नल लाइन के रूप में इंपल्स एमएसीडी के 9 चक्र एसएमए की गणना करें ((एसबी)) ।
  3. प्रवृत्ति की ताकत को दर्शाने के लिए संकेत रेखा के साथ आवेग एमएसीडी के अंतर की गणना करें।
  4. जब इंपल्स एमएसीडी सिग्नल लाइन को पार करता है, तो एक खरीद संकेत उत्पन्न होता है, और जब यह पार होता है तो यह पोजिशनिंग होता है।
  5. कीमतों के संबंध के आधार पर इंपल्स एमएसीडी, उच्च और निम्न कीमत एसएमएमए, विभिन्न रंगों में इंपल्स एमएसीडी स्तंभों के साथ चित्रित किया गया है, जो कि प्रवृत्ति की ताकत और ताकत को दर्शाता है।

रणनीतिक लाभ

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

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

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

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

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

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2023-05-11 00:00:00
end: 2024-05-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Impulse MACD Strategy [LazyBear]", shorttitle="IMACD_Strategy", overlay=false)

// Function to calculate SMMA
calc_smma(src, len) =>
    var float smma = na
    smma := na(smma[1]) ? ta.sma(src, len) : (smma[1] * (len - 1) + src) / len
    smma

// Function to calculate SMA
	ta.sma(src, len)
    sum = 0.0
    for i = 0 to len - 1
        sum := sum + src[i]
    sum / len

// Function to calculate ZLEMA
calc_zlema(src, length) =>
    var float ema1 = na
    var float ema2 = na
    var float d = na
    ema1 := ta.ema(src, length)
    ema2 := ta.ema(ema1, length)
    d := ema1 - ema2
    ema1 + d

// Function to calculate EMA
calc_ema(src, len) =>
    ema = 0.0
    ema := ta.ema(src, len)
    ema

// Inputs
lengthMA = input(34, title="Length of Moving Average")
lengthSignal = input(9, title="Length of Signal Line")

// Calculations
src = hlc3
hi = calc_smma(high, lengthMA)
lo = calc_smma(low, lengthMA)
mi = calc_zlema(src, lengthMA) 

md = mi > hi ? (mi - hi) : mi < lo ? (mi - lo) : 0
sb = ta.sma(md, lengthSignal)
sh = md - sb
mdc = src > mi ? src > hi ? color.lime : color.green : src < lo ? color.red : color.orange

// Plotting
plot(0, color=color.gray, linewidth=1, title="MidLine")
plot(md, color=mdc, linewidth=2, title="ImpulseMACD", style=plot.style_histogram)
plot(sh, color=color.blue, linewidth=2, title="ImpulseHisto", style=plot.style_histogram)
plot(sb, color=color.maroon, linewidth=2, title="ImpulseMACDCDSignal")

// Execute trades based on signals
if (ta.crossover(md, sb))
    strategy.entry("Buy", strategy.long)
if (ta.crossunder(md, sb))
    strategy.close("Buy")