सिग्नल के साथ एमएसीडी क्रॉसओवर रणनीति ट्रेडिंग सिग्नल उत्पन्न करती है जब एमएसीडी सिग्नल लाइन के ऊपर या नीचे पार करता है। यह रणनीति स्टॉक की कीमतों में मध्यम अवधि के रुझानों के मोड़ बिंदुओं को पकड़ने के लिए डबल चलती औसत के विचार को जोड़ती है, जो एक विशिष्ट ट्रेलिंग स्टॉप लॉस रणनीति से संबंधित है।
रणनीति पहले तेजी से चलती औसत रेखा fastMA और धीमी गति से चलती औसत रेखा slowMA की गणना करती है। तेजी से चलती औसत पैरामीटर 12 दिन है, और धीमी गति से चलती औसत पैरामीटर 26 दिन है। फिर MACD बनाने के लिए दो चलती औसत रेखाओं के बीच अंतर की गणना करें। फिर संकेत रेखा प्राप्त करने के लिए MACD के 9-दिवसीय चलती औसत की गणना करें। ट्रेडिंग संकेत तब उत्पन्न होते हैं जब MACD संकेत रेखा के ऊपर या नीचे पार करता है।
इस रणनीति का लाभ स्टॉक की कीमतों के मध्यम अवधि के रुझान के मोड़ को पकड़ना है। तेज और धीमी गति से चलने वाले औसत के संयोजन से अल्पकालिक मूल्य उतार-चढ़ाव और शोर को फ़िल्टर किया जाता है, और मध्यम अवधि के मूल्य रुझानों को पकड़ सकता है। जब स्टॉक की कीमत मध्यम अवधि में उलट जाती है, तो एमएसीडी सिग्नल लाइन को तोड़ देगा और अपेक्षाकृत स्पष्ट ट्रेडिंग सिग्नल उत्पन्न करेगा।
सिग्नल के साथ एमएसीडी क्रॉसओवर रणनीति अल्पकालिक शोर को फ़िल्टर करने के लिए डबल चलती औसत के विचार को जोड़ती है और केवल लंबी और मध्यम अवधि के रुझानों के मोड़ बिंदुओं को पकड़ती है। एकल मूल्य संकेतक की तुलना में, यह कम झूठे संकेत उत्पन्न कर सकता है।
एमएसीडी स्वयं अधिक संवेदनशील है और मूल्य प्रवृत्ति परिवर्तनों के प्रति संवेदनशीलता से प्रतिक्रिया दे सकता है। सिग्नल लाइन का जोड़ अधिक अल्पकालिक झूठे संकेतों को फ़िल्टर कर सकता है। केवल जब मध्यम अवधि की प्रवृत्ति में महत्वपूर्ण परिवर्तन होता है, एमएसीडी सिग्नल लाइन को ऊपर और नीचे तोड़ता है, तो एक संकेत उत्पन्न होगा।
एक स्थायी उदय प्रवृत्ति में, एमएसीडी अधिकांश समय संकेत रेखा से ऊपर रहता है, जो रास्ते में कई अवसरों को पकड़ सकता है। इसी तरह, एक निरंतर डाउनट्रेंड में, एमएसीडी एक लंबे / छोटे पैटर्न को भी बनाए रख सकता है और समय पर छोटे संकेत दे सकता है।
चूंकि रणनीति खरीद और बिक्री संकेत पूरी तरह से चलती औसत के क्रॉसओवर पर निर्भर करते हैं, यदि बाजार बहुत उतार-चढ़ाव करता है, तो अधिक झूठे संकेत उत्पन्न होंगे, जिसके परिणामस्वरूप अक्सर स्टॉप लॉस होगा। रणनीति का वास्तविक लाभ और हानि अपेक्षाओं को पूरा नहीं कर सकती है।
सिग्नल लाइन को तोड़ने से यह सुनिश्चित नहीं होता है कि मध्यम अवधि की प्रवृत्ति बदल गई है। केवल एक तकनीकी संकेतक पर खरीदारी के संकेत के रूप में भरोसा करने से एक निश्चित अंधापन होता है, और समय पर्याप्त सटीक नहीं हो सकता है।
लगातार बदलते बाजार में, केवल दोहरे चलती औसत के क्रॉसओवर का उपयोग करके सीमा के रूप में अधिक व्यापारिक अवसरों को याद किया जा सकता है। अधिक जटिल मजबूत रुझानों में, यह रणनीति भी महत्वपूर्ण रूप से पीछे रह जाएगी।
अपर्याप्त ट्रेडिंग से बचने के लिए लिक्विडिटी और अस्थिरता फ़िल्टर करने वाले संकेतक जोड़ें। जैसे ट्रेडिंग वॉल्यूम जोड़ना, गतिशील औसत मापदंडों को गतिशील रूप से समायोजित करना, आदि।
सिग्नल की गुणवत्ता में सुधार के लिए एक सूचक पोर्टफोलियो बनाने के लिए कई अन्य तकनीकी संकेतकों को मिलाएं। अल्पकालिक और मध्यम और दीर्घकालिक संकेतकों का संयोजन बाजार संरचना का अधिक व्यापक रूप से आकलन कर सकता है।
मशीन लर्निंग एल्गोरिदम जोड़ें जो वर्तमान बाजार वातावरण के लिए अधिक उपयुक्त पैरामीटर और ध्यान सीमाओं को प्रशिक्षित करते हैं, मानव हस्तक्षेप को कम करते हैं।
बाजार के रुझानों और अस्थिरता की भविष्यवाणी करने के लिए VIX और अन्य भय सूचकांक को मिलाएं, और 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)