बढ़ी हुई चलती औसत अभिसरण प्रवृत्ति रणनीति

लेखक:चाओझांग, दिनांकः 2023-09-14 16:46:53
टैगः

रणनीति तर्क

यह ट्रेंड फॉलो करने वाली रणनीति एक उन्नत एमएसीडी संकेतक का उपयोग करती है। यह संकेत उत्पन्न करने के लिए तेज़ ईएमए, धीमी ईएमए, उनके अंतर और उस अंतर के ईएमए की गणना करती है।

तर्क यह हैः

  1. त्वरित ईएमए अवधि की गणना करें, उदाहरण के लिए 12 दिन

  2. धीमी ईएमए अवधि की गणना करें, उदाहरण के लिए 26-दिवसीय

  3. एमएसीडी प्राप्त करने के लिए धीमी ईएमए से तेजी से घटाएं

  4. संकेत रेखा के रूप में एमएसीडी का ईएमए लें, उदाहरण के लिए 9-दिवसीय

  5. एमएसीडी के ईएमए माइनस सिग्नल से बेहतर संकेत मिलता है

  6. शून्य रेखा के ऊपर बढ़े हुए संकेत के पार होने पर लंबा करें

  7. शून्य रेखा के नीचे बढ़े हुए संकेत के पार होने पर लंबा बंद करें

यह रणनीति एमएसीडी की ट्रेंड फॉलो करने की क्षमता का लाभ उठाती है, और इसे गुणवत्ता वाले मध्यम से दीर्घकालिक ट्रेंड सिग्नल के लिए और अधिक अनुकूलित करती है।

लाभ

  • बढ़ाया गया एमएसीडी शोर को कम करता है और संकेतों में सुधार करता है

  • तेज/धीमी ईएमए कॉम्बो गेज दिशा और शक्ति

  • धीमे मापदंड मध्यम से दीर्घकालिक रुझानों पर केंद्रित हैं

जोखिम

  • ईएमए अवधि का सावधानीपूर्वक अनुकूलन आवश्यक है

  • केवल अल्पकालिक अवसरों का उपयोग करने में असमर्थ

  • कम बार सिग्नल आना

सारांश

यह रणनीति मध्यम से दीर्घकालिक प्रवृत्ति की पहचान में सुधार के लिए बढ़ाए गए एमएसीडी का लाभ उठाती है। लेकिन अनुकूलन और जोखिम नियंत्रण महत्वपूर्ण हैं। अन्य कारकों के साथ संयोजन प्रदर्शन में सुधार कर सकता है।


/*backtest
start: 2022-09-07 00:00:00
end: 2023-09-13 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//study("MACDAS")
// strategy("macdas",shorttitle="macdas",overlay=true,default_qty_value=10000,initial_capital=10000,currency=currency.USD)

// Date range filter
testStartYear = input(2018, "Backtest Start Year")
testStartMonth = input(4, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, 0, 0)

testStopYear = input(2018, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(31, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0)

inTimeRange = true


fastperiod = input(12,title="fastperiod",minval=1,maxval=500)
slowperiod = input(26,title="slowperiod",minval=1,maxval=500)
signalperiod = input(9,title="signalperiod",minval=1,maxval=500)
fastMA = ema(close, fastperiod)
slowMA = ema(close, slowperiod)
macd = fastMA - slowMA
signal = ema(macd, signalperiod)
macdAS = macd - signal
signalAS = ema(macdAS, signalperiod)
plot(macdAS, color=blue, linewidth=2)
plot(signalAS, color=red, linewidth=2)
plot(0, color=black)

strategy.entry("LONG", strategy.long, when =inTimeRange and crossover(macdAS,signalAS))
strategy.close("LONG", when= inTimeRange and crossunder(macdAS,signalAS))

plotshape(crossover(macdAS, signalAS) , style = shape.arrowup, text="Long",color=green,size=size.huge)
plotshape(crossover(signalAS,macdAS) , style = shape.arrowdown, text="End Long",color=red,size=size.huge)



अधिक