ईएमए और एमएसीडी पर आधारित रणनीति के बाद की प्रवृत्ति समय सीमा में

लेखक:चाओझांग, दिनांकः 2024-01-05 11:16:17
टैगः

img

अवलोकन

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

सिद्धांत

यह रणनीति मध्यम से दीर्घकालिक प्रवृत्ति दिशा निर्धारित करने के लिए 50-दिवसीय ईएमए और 100-दिवसीय ईएमए का उपयोग करती है। जब एमएसीडी संकेतक द्वारा अल्पकालिक प्रवृत्ति की पहचान की जाती है, तो यह जांचता है कि क्या दिशाएं संरेखित हैं। यदि हां, तो यह प्रवृत्ति के बाद की कार्रवाई करता है।

विशेष रूप से, जब एमएसीडी फास्ट लाइन स्लो लाइन से ऊपर पार करती है, और > 50-दिवसीय ईएमए और > 100-दिवसीय ईएमए को बंद करती है, तो यह लंबी हो जाती है। जब एमएसीडी फास्ट लाइन स्लो लाइन से नीचे पार करती है, और < 50-दिवसीय ईएमए और < 100-दिवसीय ईएमए को बंद करती है, तो यह छोटी हो जाती है।

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

लाभ विश्लेषण

  1. ईएमए रेखाओं और एमएसीडी संकेतक को समय-सीमाओं में जोड़ने से रुझान संकेतों की पहचान करने में मदद मिलती है और मध्यम से दीर्घकालिक रुझानों को याद करने से बचा जाता है

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

  3. बाजार तटस्थ क्षेत्रों से बचना अनावश्यक नुकसान से बचाता है

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

  1. ईएमए रेखाओं का विलंब प्रभाव होता है और वे मोड़ बिंदुओं को याद कर सकती हैं

  2. एमएसीडी संकेतक में कई समय सीमाएं और पैरामीटर सेटिंग्स हैं जो परिणामों को प्रभावित करती हैं

  3. एटीआर रेंज भविष्य के मूल्य उतार-चढ़ाव को पूरी तरह से प्रतिबिंबित नहीं कर सकते, जोखिमों को समाप्त नहीं कर सकते

प्रतिरोधात्मक उपाय:

  1. ईएमए के पिछड़े मुद्दों से बचने के लिए अन्य संकेतकों के साथ संकेतों की पुष्टि करें

  2. एमएसीडी मापदंडों को समायोजित करें और परिणामों को अनुकूलित करें

  3. अधिकतम हानि को नियंत्रित करने के लिए उचित रूप से एटीआर गुणक सेट करें

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

  1. ईएमए लाइन अवधि के विभिन्न संयोजनों का परीक्षण करें

  2. एमएसीडी पैरामीटर सेटिंग्स का अनुकूलन करें

  3. स्वचालित रूप से इष्टतम एटीआर स्टॉप लॉस/टेक प्रॉफिट गुणकों को खोजने के लिए मशीन लर्निंग विधियों का उपयोग करें

सारांश

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


/*backtest
start: 2022-12-29 00:00:00
end: 2024-01-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA-50, EMA-100, and MACD Strategy with ATR for Stop Loss/Profit", overlay=true)

// MACD hesaplama
fastLength = input(12, title="Fast Length")
slowLength = input(26, title="Slow Length")
signalLength = input(9, title="Signal Length")
[macdLine, signalLine, _] = ta.macd(close, fastLength, slowLength, signalLength)

// EMA-50 ve EMA-100 hesaplama
ema50 = ta.ema(close, 50)
ema100 = ta.ema(close, 100)

// ATR hesaplama
atrLength = input(14, title="ATR Length")
atrValue = ta.atr(atrLength)

// Take Profit ve Stop Loss çoklayıcıları
takeProfitMultiplier = input(3.0, title="Take Profit Multiplier") // TP, 3 katı ATR
stopLossMultiplier = input(1.0, title="Stop Loss Multiplier")

// Long Pozisyon Koşulları
longCondition = ta.crossover(macdLine, signalLine) and close > ema50 and close > ema100

// Short Pozisyon Koşulları
shortCondition = ta.crossunder(macdLine, signalLine) and close < ema50 and close < ema100

// Take Profit ve Stop Loss Seviyeleri
takeProfitLevel = close + takeProfitMultiplier * atrValue
stopLossLevel = close - stopLossMultiplier * atrValue

// Long Pozisyon İşlemleri
strategy.entry("Long", strategy.long, when=longCondition)
strategy.exit("Take Profit/Stop Loss", from_entry="Long", loss=stopLossLevel, profit=takeProfitLevel)

// Short Pozisyon İşlemleri
strategy.entry("Short", strategy.short, when=shortCondition)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", loss=stopLossLevel, profit=takeProfitLevel)

// Grafikte Gösterme
plot(ema50, color=color.blue, title="EMA-50")
plot(ema100, color=color.red, title="EMA-100")
hline(0, "Zero Line", color=color.gray)


अधिक