
यह रणनीति MACD सूचकांक पर आधारित है, जो MACD सूचकांक में MACD लाइन और सिग्नल लाइन के क्रॉसिंग का उपयोग करके ट्रेडिंग सिग्नल का न्याय करने के लिए करती है। जब MACD लाइन सिग्नल लाइन को पार करती है तो एक मल्टी सिग्नल उत्पन्न होता है, और जब MACD लाइन सिग्नल लाइन को पार करती है तो एक शून्य सिग्नल उत्पन्न होता है। साथ ही साथ पहले K लाइन की सबसे कम कीमत को मल्टीहेड स्टॉप के रूप में और पहले K लाइन की सबसे अधिक कीमत को एक खाली हेड स्टॉप के रूप में उपयोग किया जाता है। स्टॉप-स्टॉप 4 गुना एटीआर (औसत वास्तविक तरंग दैर्ध्य) पर सेट किया गया है।
एमएसीडी सूचक डीआईएफ लाइन और डीईए लाइन से बना है, डीआईएफ लाइन तेजी से औसत और धीमी औसत के बीच का अंतर है, डीईए लाइन डीआईएफ लाइन का चलती औसत है। जब डीआईएफ लाइन पर डीईए लाइन को पार करता है, तो यह दर्शाता है कि शेयर की कीमत ओवरबॉट क्षेत्र से बाहर आ गई है और ऊपर की ओर बढ़ना शुरू कर दिया है, एक मल्टी सिग्नल उत्पन्न करता है; जब डीआईएफ लाइन के नीचे डीईए लाइन को पार करता है, तो यह दर्शाता है कि शेयर की कीमत ओवरबॉट क्षेत्र से बाहर आ गई है और नीचे की ओर बढ़ना शुरू कर दिया है, एक शून्य सिग्नल उत्पन्न करता है। साथ ही, रणनीति एक पूर्ववर्ती के-लाइन की न्यूनतम और उच्चतम कीमतों का उपयोग करती है।
यह रणनीति MACD सूचक पर आधारित है, MACD लाइन और सिग्नल लाइन के क्रॉसिंग के माध्यम से व्यापार संकेतों का न्याय करने के लिए, और पिछले K लाइन के न्यूनतम और उच्चतम मूल्य का उपयोग रोकथाम के रूप में, 4 गुना ATR पर रोकथाम सेट करें। रणनीति तर्क स्पष्ट है, इसे लागू करना आसान है, और स्टॉक मूल्य की प्रवृत्ति को बेहतर ढंग से पकड़ने में सक्षम है। हालांकि, इस रणनीति में कुछ जोखिम भी हैं, जैसे कि सूचक देरी, रोकथाम की स्थापना सरल आदि। भविष्य में अन्य संकेतकों को जोड़ने, रोकथाम की स्थापना को अनुकूलित करने, स्थिति प्रबंधन में शामिल करने आदि के बारे में अनुकूलन पर विचार किया जा सकता है।
/*backtest
start: 2023-05-05 00:00:00
end: 2024-05-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("MACD Strategy", overlay=true)
// Define MACD
[macdLine, signalLine, _] = macd(close, 12, 26, 9)
// Define conditions for long entry
longCondition = crossover(macdLine, signalLine)
// Define conditions for short entry
shortCondition = crossunder(macdLine, signalLine)
// Define stop loss for long entry
longStopLoss = low[1] // Previous candle low
// Define stop loss for short entry
shortStopLoss = high[1] // Previous candle high
// Define take profit for both long and short entries
takeProfit = close + (close - longStopLoss) * 4 // 4 x ATR
// Execute long entry
if (longCondition)
strategy.entry("Buy", strategy.long)
strategy.exit("TP/SL", "Buy", stop=longStopLoss, limit=takeProfit)
// Execute short entry
if (shortCondition)
strategy.entry("Sell", strategy.short)
strategy.exit("TP/SL", "Sell", stop=shortStopLoss, limit=takeProfit)