यह रणनीति एमएसीडी संकेतक को चलती औसत के साथ जोड़ती है, जब दोनों संरेखित संकेत देते हैं तो लंबी जाती है।
तर्क यह हैः
FAST MACD की गणना करें, आम तौर पर 12 दिन का ईएमए
गणना धीमी MACD, आम तौर पर 26-दिवसीय ईएमए
एमएसीडी तेजी से शून्य धीमी है
सिग्नल लाइन आम तौर पर एमएसीडी का 9 दिन का एमए है
9-दिवसीय और 26-दिवसीय एमए की गणना
जब एमएसीडी सिग्नल लाइन के ऊपर पार करता है तो लंबे समय तक विचार करें
जब 9-दिवसीय एमए 26-दिवसीय एमए से ऊपर जाता है तो लंबा हो जाता है
जब एमएसीडी सिग्नल लाइन से नीचे और 9-दिवसीय एमए 26-दिवसीय एमए से नीचे पार करता है तो लंबे समय तक बंद करें
यह रणनीति MACD
एमएसीडी अधिक खरीदे/बेचे जाने का आकलन करता है, एमए प्रवृत्ति निर्धारित करता है
संयोजन उच्च संभावना वाले दीर्घकालिक अवसर प्रदान करता है
लागू करने में आसान स्पष्ट नियम
सर्वोत्तम मापदंडों का निर्धारण करने के लिए अनुकूलन की आवश्यकता है
केवल अल्पकालिक अवसरों का उपयोग करने में असमर्थ
ट्रेंड के खिलाफ ट्रेडों से नुकसान बढ़ सकता है
यह रणनीति बाजार की लय का आकलन करने में एमएसीडी और एमए
/*backtest start: 2023-09-06 00:00:00 end: 2023-09-13 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("MACD Cross+MA", overlay=true) //@version=4 // Getting inputs fast_length = input(title="Fast Length", type=input.integer, defval=12) slow_length = input(title="Slow Length", type=input.integer, defval=26) src = input(title="Source", type=input.source, defval=close) signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9) sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=false) sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false) // === INPUT BACKTEST RANGE === FromYear = input(defval = 2019, title = "From Year", minval = 2009) FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) ToYear = input(defval = 9999, title = "To Year", minval = 2009) ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) ToDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31) // === FUNCTION EXAMPLE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => time >= start and time <= finish ? true : false // create function "within window of time" // Calculating fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length) slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length) macd = fast_ma - slow_ma signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length) hist = macd - signal //plot plot(sma(close,9),color=color.red) plot(sma(close,26),color=color.green) //Condition BMacdcondition= (macd>signal) SMacdcondition= (macd<signal) longCondition = crossover(sma(close, 9), sma(close, 26)) shortCondition = crossunder(sma(close, 9), sma(close, 26)) //entry if (BMacdcondition) and window() (longCondition) strategy.entry("LONG", strategy.long) if (shortCondition) and window() (SMacdcondition) strategy.close("LONG", qty_percent=100 , comment="หนีตาย")