
एमएसीडी वितरण क्रॉसिंग रणनीति तेजी से चलती औसत और धीमी गति से चलती औसत के अंतर की गणना करके एमएसीडी का गठन करती है, फिर एमएसीडी की चलती औसत की गणना करके वितरण लाइन का गठन करती है, जब एमएसीडी वितरण लाइन के ऊपर या नीचे से गुजरता है तो व्यापार संकेत उत्पन्न होता है। यह रणनीति द्वि-रेखा समता के विचार को जोड़ती है, जो स्टॉक की कीमतों की मध्य-अवधि की प्रवृत्ति के मोड़ को पकड़ती है, जो एक विशिष्ट ट्रैकिंग स्टॉप-लॉस रणनीति है।
इस रणनीति में सबसे पहले फास्ट मूविंग एवरेज (fastMA) और स्लो मूविंग एवरेज (slowMA) की गणना की जाती है। फास्ट मूविंग एवरेज का पैरामीटर 12 दिन और स्लो मूविंग एवरेज का पैरामीटर 26 दिन होता है। इसके बाद दो मूविंग एवरेज के अंतर की गणना की जाती है, जिससे MACD बनता है। इसके बाद 9 दिन के पैरामीटर के साथ MACD का मूविंग एवरेज की गणना की जाती है और डिलीवरी लाइन सिग्नल प्राप्त होता है। जब MACD डिलीवरी लाइन के ऊपर या नीचे जाता है, तो ट्रेडिंग सिग्नल जारी किया जाता है।
रणनीति का लाभ स्टॉक की कीमत के मध्यवर्ती रुझान को पकड़ने में है। धीमी गति से औसत रेखा संयोजन अल्पकालिक मूल्य उतार-चढ़ाव के शोर को फ़िल्टर करता है, जो मध्यवर्ती मूल्य प्रवृत्ति को पकड़ सकता है। जब स्टॉक की कीमत मध्यवर्ती बदलाव करती है, तो MACD डिलीवरी लाइन को पार कर जाता है, जिससे अधिक स्पष्ट व्यापारिक संकेत मिलते हैं।
एमएसीडी वितरण क्रॉसिंग रणनीति द्वि-समान-रेखा विचार के साथ संयुक्त है, जो त्वरित चलती औसत और धीमी चलती औसत के संयोजन का उपयोग करके अल्पकालिक शोर को फ़िल्टर करता है, केवल स्टॉक की कीमतों में मध्य और दीर्घकालिक रुझान मोड़ बिंदुओं को पकड़ता है। एक एकल मूल्य सूचक की तुलना में, कम झूठे संकेत उत्पन्न करता है।
एमएसीडी स्वयं संवेदनशील है और मूल्य परिवर्तन की प्रवृत्ति को प्रतिबिंबित करने के लिए संवेदनशील है। वितरण लाइनों को जोड़ने से अधिक अल्पकालिक झूठे संकेतों को फ़िल्टर किया जा सकता है। केवल मध्यवर्ती प्रवृत्ति स्पष्ट रूप से बदलती है, और एमएसीडी वितरण लाइन को ऊपर और नीचे तोड़ता है, सिग्नल उत्पन्न करता है।
एक स्थायी उछाल के मामले में, MACD अधिकांश समय वितरण लाइन से ऊपर रहता है, जो समय-समय पर कई अवसरों को पकड़ने में सक्षम होता है। इसी तरह, एक निरंतर गिरावट के मामले में, MACD भी कई रिक्तियों को बनाए रख सकता है, समय पर रिक्तियों को संकेत दे सकता है।
चूंकि एक रणनीति के खरीद और बिक्री के संकेत पूरी तरह से चलती औसत के क्रॉसिंग पर निर्भर करते हैं, यदि बाजार में अधिक उतार-चढ़ाव होता है, तो अधिक झूठे संकेत उत्पन्न होते हैं, जिससे अक्सर स्टॉप लॉस होता है। रणनीति के लिए वास्तविक लाभ-हानि अवांछनीय है।
शेयर की कीमतों के प्रसारण लाइन को तोड़ने से यह सुनिश्चित नहीं होता है कि मध्यम अवधि की प्रवृत्ति बदल जाएगी। केवल एक तकनीकी संकेतक के साथ एक खरीद बिंदु संकेत के रूप में कुछ अंधापन है, समय बिंदु का चयन गलत हो सकता है।
अधिक जटिल मजबूत स्थितियों में, यह रणनीति स्पष्ट रूप से पीछे रह सकती है।
अधिक तरलता और अस्थिरता फ़िल्टरिंग संकेतकों, कम पोजीशन खुलने की आवृत्ति, अप्रभावी व्यापार से बचें। जैसे कि लेनदेन की मात्रा में वृद्धि, गतिशील समायोजन चलती औसत पैरामीटर आदि।
अन्य तकनीकी संकेतकों के साथ संयोजन में, संकेतकों का एक पोर्टफोलियो बनाने के लिए, सिग्नल की गुणवत्ता में सुधार। अल्पकालिक संकेतकों के साथ मध्यम और दीर्घकालिक संकेतकों के संयोजन में, बाजार संरचना का अधिक व्यापक रूप से आकलन किया जा सकता है।
मशीन लर्निंग एल्गोरिदम को बढ़ाएं, वर्तमान बाजार परिदृश्य के अनुरूप पैरामीटर और ध्यान थ्रेशोल्ड को प्रशिक्षित करें, और मानव हस्तक्षेप को कम करें।
VIX जैसे आतंक सूचकांक के साथ संयोजन में पूर्व-अवधि के बाजार के रुझान और अस्थिरता की भविष्यवाणी करें, गतिशील समायोजन पैरामीटर, MACD अवसरों का बेहतर उपयोग करें।
MACD वितरण क्रॉसिंग रणनीति द्वि-समान-लाइन क्रॉसिंग सिद्धांत का उपयोग करके व्यापार संकेत उत्पन्न करती है। स्टॉक के मध्य-अवधि मूल्य प्रवृत्ति परिवर्तनों को तेजी से और धीरे-धीरे औसत रेखा के अंतर मानचित्र के माध्यम से स्पष्ट रूप से चिह्नित किया जाता है। वितरण लाइनों का समावेश कुछ शोर संकेतों को भी प्रभावी ढंग से फ़िल्टर करता है। इस रणनीति में स्पष्ट मध्य-अवधि प्रवृत्ति परिवर्तनों को पकड़ने में कुछ लाभ होता है। लेकिन MACD और वितरण लाइनों के क्रॉसिंग को पूरी तरह से निर्धारित नहीं किया जा सकता है कि बाजार संरचना में मूलभूत परिवर्तन हो रहा है, इसलिए व्यापार संकेतों को सावधानी से संभालना आवश्यक है। अन्य तकनीकी संकेतकों के साथ संयोजन के साथ उपयोग करने की सिफारिश की जाती है, मशीन सीखने के अनुकूलन को भी बढ़ाया जा सकता है।
/*backtest
start: 2022-12-06 00:00:00
end: 2023-12-12 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@author : SudeepBisht
//@version=2
strategy(title="MACD with Signal", shorttitle="MACD_with_Signal")
source = close
useCurrentRes = input(true, title="Use Current Chart Resolution?")
resCustom = input(title="Use Different Timeframe? Uncheck Box Above", defval="60")
smd = input(true, title="Show MacD & Signal Line? Also Turn Off Dots Below")
sd = input(true, title="Show Dots When MacD Crosses Signal Line?")
sh = input(true, title="Show Histogram?")
macd_colorChange = input(true,title="Change MacD Line Color-Signal Line Cross?")
hist_colorChange = input(true,title="MacD Histogram 4 Colors?")
res = useCurrentRes ? timeframe.period : resCustom
fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(9,minval=1)
fastMA = ema(source, fastLength)
slowMA = ema(source, slowLength)
macd = fastMA - slowMA
signal = sma(macd, signalLength)
hist = macd - signal
outMacD = request.security(syminfo.tickerid, res, macd)
outSignal = request.security(syminfo.tickerid, res, signal)
outHist = request.security(syminfo.tickerid, res, hist)
histA_IsUp = outHist > outHist[1] and outHist > 0
histA_IsDown = outHist < outHist[1] and outHist > 0
histB_IsDown = outHist < outHist[1] and outHist <= 0
histB_IsUp = outHist > outHist[1] and outHist <= 0
//MacD Color Definitions
macd_IsAbove = outMacD >= outSignal
macd_IsBelow = outMacD < outSignal
plot_color = hist_colorChange ? histA_IsUp ? green : histA_IsDown ? lime : histB_IsDown ? red : histB_IsUp ? maroon :yellow :gray
macd_color = macd_colorChange ? macd_IsAbove ? green : red : red
signal_color = macd_colorChange ? macd_IsAbove ? yellow : yellow : lime
circleYPosition = outSignal
plot(smd and outMacD ? outMacD : na, title="MACD", color=macd_color, linewidth=3)
plot(smd and outSignal ? outSignal : na, title="Signal", color=blue, style=line ,linewidth=1)
plot(sh and outHist ? outHist : na, title="", color=plot_color, style=columns, linewidth=4)
//plot(sd and cross(outMacD, outSignal) ? circleYPosition : na, title="Cross", style=circles, linewidth=4, color=macd_color)
hline(0, '0 Line', linewidth=2, color=white)
macd_chk=smd and outMacD ? outMacD : na
checker=smd and outSignal ? outSignal : na
if (crossover(macd_chk,checker))
strategy.entry("BBandLE", strategy.long)
if (crossunder(macd_chk, checker))
strategy.entry("BBandSE", strategy.short)