गति दोहरी चलती औसत क्रॉसओवर रणनीति

लेखक:चाओझांग, दिनांक: 2023-10-20 16:44:30
टैगः

img

अवलोकन

इस रणनीति में चलती औसत क्रॉसओवर का उपयोग मूल्य गति की दिशा निर्धारित करने के लिए किया जाता है, जो समग्र प्रवृत्ति का न्याय करने के लिए स्वर्ण/मृत्यु क्रॉस द्वारा पूरक है, ताकि प्रवृत्ति का पालन किया जा सके।

रणनीति तर्क

यह रणनीति मूल्य गति की दिशा निर्धारित करने के लिए ईएमए और एसएमए क्रॉसओवर का उपयोग करती है। ईएमए तेजी से प्रतिक्रिया करता है जबकि एसएमए अधिक स्थिरता से प्रतिक्रिया करता है। जब ईएमए एसएमए के ऊपर पार करता है, तो यह माना जाता है कि ऊपर की गति मजबूत है, लंबी हो जाती है। जब ईएमए एसएमए के नीचे पार करता है, तो यह माना जाता है कि नीचे की गति मजबूत है, छोटी हो जाती है।

इसके अलावा, रणनीति समग्र प्रवृत्ति दिशा निर्धारित करने के लिए तेजी से अवधि SMA और धीमी अवधि SMA के क्रॉसओवर का भी उपयोग करती है। जब तेजी से SMA धीमी SMA से ऊपर पार करता है, तो यह एक स्वर्ण क्रॉस है, जो इंगित करता है कि बाजार दीर्घकालिक अपट्रेंड में है। जब तेजी से SMA धीमी SMA से नीचे पार करता है, तो यह एक मृत्यु क्रॉस है, जो इंगित करता है कि बाजार दीर्घकालिक डाउनट्रेंड में है।

यह रणनीति लंबे अवसर की पहचान करती है जब ईएमए एसएमए के ऊपर से गुजरता है। यदि यह इस समय एक स्वर्ण क्रॉस है, तो इसका मतलब है कि लंबी अवधि के लिए जाना अल्पकालिक गति और दीर्घकालिक प्रवृत्ति दोनों द्वारा समर्थित है, जो एक बेहतर दीर्घकालिक समय है। यदि यह एक मृत्यु क्रॉस है, तो लंबी अवधि केवल अल्पकालिक गति द्वारा समर्थित है और दीर्घकालिक प्रवृत्ति के खिलाफ है, जो अधिक जोखिम भरा दीर्घकालिक समय है।

लाभ विश्लेषण

  • मूल्य गति और दिशा का न्याय करने के लिए एमए क्रॉसओवर का उपयोग करें
  • अल्पकालिक गति और दीर्घकालिक प्रवृत्ति दोनों पर विचार करें
  • दोहरे संकेतकों की पुष्टि विश्वसनीयता में सुधार करती है
  • एमए मापदंडों को समायोजित करके विभिन्न अवधियों के अनुकूल
  • विशिष्ट व्यापार संकेतों को दिखाने/छिपाने के लिए अनुकूलन योग्य

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

  • एमए क्रॉसओवर में देरी होती है, सबसे अच्छा प्रवेश/निकास बिंदु चूक सकता है
  • फिक्स्ड पीरियड एसएमए वास्तविक समय में मूल्य परिवर्तन को प्रतिबिंबित नहीं कर सकता
  • लंबी/छोटी अवधि के एमए के बीच गलत क्रॉसओवर हो सकते हैं
  • लंबी अवधि के लिए होल्डिंग पूंजी जोखिम को बढ़ा सकती है

संकेत की पुष्टि के लिए अन्य संकेतकों को जोड़कर, एमए अवधि को अनुकूलित करके या स्टॉप लॉस सेट करके जोखिमों को कम किया जा सकता है।

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

  • वॉल्यूम, बोलिंगर बैंड आदि जैसे अन्य फ़िल्टर जोड़ें।
  • स्टॉप लॉस रणनीति जोड़ें
  • एमए अवधि का अनुकूलन
  • पूंजी प्रबंधन को अनुकूलित करना
  • गतिशील स्थिति आकार पर विचार करें

निष्कर्ष

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


/*backtest
start: 2023-09-19 00:00:00
end: 2023-10-19 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Cryptoluc1d

//@version=4
strategy("Equal-Length EMA/SMA Crossover Strategy", initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=25, commission_type=strategy.commission.percent, commission_value=0.2, overlay=true)

// Create inputs

mom_length = input(title="Momentum Length (EMA=SMA)", defval=50)
bias_length_fast  = input(title="Golden Cross Length (Fast)", defval=50)
bias_length_slow  = input(title="Golden Cross Length (Slow)", defval=100)

// Define MAs

ema = ema(close, mom_length) // EMA/SMA crossover of the same period for detecting trend acceleration/deceleration
sma = sma(close, mom_length)
bias_fast = sma(close, bias_length_fast) // golden/death cross for overall trend bias
bias_slow = sma(close, bias_length_slow)

// Define signal conditions

buy_trend = crossover(ema, sma) and bias_fast >= bias_slow // buy when EMA cross above SMA. if this happens during a bullish golden cross, buying is in confluence with the overall trend (bias).
buy_risky = crossover(ema, sma) and bias_fast < bias_slow // buy when EMA cross above SMA. if this happens during a bearish death cross, buying is early, more risky, and not in confluence with the overall trend (bias).
buy_late = crossover(sma, bias_slow) and ema > sma // the SMA crossing the Slow_SMA gives further confirmation of bullish trend, but signal comes later.
sell = crossunder(ema, sma) // sell when EMA cross under SMA.

// Enable option to hide signals, then plot signals

show_signal = input(title="Show Signals", defval=true)

plotshape(show_signal ? buy_trend : na, title='Trend Buy', style=shape.triangleup, location=location.belowbar, color=color.green, text='TREND BUY')
plotshape(show_signal ? buy_risky : na, title='Risky Buy', style=shape.triangleup, location=location.belowbar, color=color.olive, text='RISKY BUY')
plotshape(show_signal ? buy_late : na, title='Late Buy', style=shape.triangleup, location=location.belowbar, color=color.lime, text='LATE BUY')
plotshape(show_signal ? sell : na, title='Sell', style=shape.triangledown, location=location.abovebar, color=color.red, text='SELL')

// Define entry and exit conditions

longCondition = ema > sma and bias_fast >= bias_slow // LONG when EMA above SMA, and overall trend bias is bullish
if (longCondition)
    strategy.entry("BUY TREND", strategy.long)
exitLong = crossunder(ema, sma) // close LONG when EMA cross under SMA
strategy.close("BUY TREND", when=exitLong)

// // short conditions. turned off because up only.
// shortCondition = ema < sma and bias_fast <= bias_slow // SHORT when EMA under SMA, and overall trend bias is bearish
// if (shortCondition)
//     strategy.entry("SELL TREND", strategy.short)
// exitShort = crossover(ema, sma) // close SHORT when EMA cross over SMA
// strategy.close("SELL TREND", when=exitShort)

// Enable option to show MAs, then plot MAs

show_ma = input(title="Show MAs", defval=false)

plot(show_ma ? ema : na, title="Momentum EMA", color=color.green, linewidth=1)
plot(show_ma ? sma : na, title="Momentum SMA", color=color.yellow, linewidth=1)
plot(show_ma ? bias_fast : na, title="Golden Cross SMA (Fast)", color=color.orange, linewidth=2)
plot(show_ma ? bias_slow : na, title="Golden Cross SMA (Slow)", color=color.red, linewidth=2)

अधिक