एमएसीडी ट्रेंड प्रेडिक्शन रणनीति एमएसीडी इंडिकेटर और ईएमए इंडिकेटर पर आधारित एक ट्रेंड फॉलोअप रणनीति है। पारंपरिक एमएसीडी रणनीतियों के विपरीत जो सिग्नल लाइनों को पार करके ट्रेडिंग सिग्नल उत्पन्न करती हैं, यह रणनीति ट्रेंड परिवर्तनों को पकड़ने के लिए एमएसीडी लाइन और सिग्नल लाइन के बीच दूरी में बदलाव करके ट्रेडिंग सिग्नल उत्पन्न करती है।
त्वरित रेखा DEMAfast की गणना करें: त्वरित रेखा MMEfast के दो EMA मानों की गणना करें, और सूत्र DEMAfast = ((2 * MMEfast) - MMEfastb के अनुसार त्वरित रेखा DEMAfast की गणना करें।
धीमी रेखा DEMAslow की गणना करें: धीमी रेखा MMEslow के दो EMA मानों की गणना करें, और धीमी रेखा DEMAslow की गणना सूत्र DEMAslow = ((2 * MMEslow) - MMEslowb के अनुसार करें।
एमएसीडी रेखा की गणना करें: एमएसीडी रेखा तेज रेखा डीईएमएफास्ट और धीमी रेखा डीईएमएस्लो, लाइनएमएसीडीजीरोलैग के बीच का अंतर है।
सिग्नल लाइन की गणना करें: एमएसीडी लाइन एमएमईसिग्नल के दो ईएमए मानों की गणना करें, और सूत्र के अनुसार सिग्नल लाइन लिग्नेसिग्नल की गणना करें लिग्नेसिग्नल = ((2 * एमएमईसिग्नल) - एमएमईसिग्नलबी) ।
एमएसीडी लाइन और सिग्नल लाइन की तुलना करें: जब एमएसीडी लाइन सिग्नल लाइन से अधिक हो तब खरीद सिग्नल उत्पन्न करें, और जब एमएसीडी लाइन सिग्नल लाइन से कम हो तब बेच सिग्नल उत्पन्न करें।
उपरोक्त गणना में डीईएमए एल्गोरिथ्म का प्रयोग किया गया है, जो एमएसीडी संकेतक के लेग को प्रभावी ढंग से कम कर सकता है।
डीईएमए एल्गोरिथ्म का प्रयोग एमएसीडी संकेतक की देरी को कम कर सकता है और ट्रेडिंग संकेतों को अधिक संवेदनशील बना सकता है।
यह एमएसीडी क्रॉसओवर संकेतों पर निर्भर नहीं करता है, बल्कि एमएसीडी और सिग्नल लाइनों के बीच दूरी परिवर्तनों के माध्यम से प्रवृत्ति परिवर्तनों को कैप्चर करता है, जो पहले प्रवृत्तियों में प्रवेश कर सकते हैं।
यह रणनीति प्रवृत्ति को सही ढंग से आंकती है और अच्छी लाभप्रदता के साथ लाभ कारक 1.6-3.5 तक पहुंच सकता है।
रणनीति तर्क सरल और स्पष्ट है, समझने और लागू करने में आसान है, मात्रात्मक व्यापार के लिए उपयुक्त है।
एक पिछड़ा हुआ संकेतक के रूप में, एमएसीडी रेंज-बाउंड बाजारों में बहुत सारे अमान्य ट्रेडिंग सिग्नल उत्पन्न कर सकता है।
यद्यपि डीईएमए एल्गोरिथ्म लेग को कम करता है, लेकिन यह पूरी तरह से लेग को समाप्त नहीं कर सकता है। अभी भी कुछ लेग है।
रणनीति का अनुसरण करते हुए, विभिन्न बाजारों में लाभ अच्छा नहीं हो सकता है।
मापदंडों sma, lma, tsp को विभिन्न अवधियों और किस्मों के लिए अनुकूलित करने की आवश्यकता है।
स्टॉप लॉस रणनीतियों को नियंत्रण घाटे में जोड़ने की आवश्यकता हो सकती है।
विभिन्न अवधियों और व्यापारिक किस्मों के अनुकूल एसएमए, एलएमए, टीएसपी मापदंडों का अनुकूलन करना।
प्रति व्यापार हानि को नियंत्रित करने के लिए एटीआर जैसी गतिशील स्टॉप लॉस रणनीतियों को जोड़ें।
विभिन्न बाजारों में व्यापार करने से बचने के लिए रुझान आकलन संकेतकों को शामिल करें।
बाजार की अस्थिरता के आधार पर पदों को समायोजित करने के लिए पद आकार जोड़ें।
ट्रेडिंग सिग्नल नियमों को परिष्कृत करने के लिए प्रवेश और निकास तर्क को अनुकूलित करें।
एमएसीडी ट्रेंड प्रेडिक्शन रणनीति मैकडी की गणना में सुधार करती है, लेग को कम करने के लिए डीईएमए एल्गोरिथ्म का उपयोग करती है, और एमएसीडी और सिग्नल लाइनों के बीच दूरी के परिवर्तनों के माध्यम से प्रवृत्ति का न्याय करती है। एक प्रवृत्ति के बाद की रणनीति के रूप में, यह प्रभावी रूप से प्रवृत्ति परिवर्तनों को पकड़ सकती है। लाभ कारक कुछ लाभों के साथ 1.6-3.5 तक पहुंच सकता है। लेकिन इसे अभी भी अधिक बाजार वातावरण के अनुकूल होने के लिए मापदंडों, स्टॉप लॉस रणनीतियों, फ़िल्टरिंग रेंज बाजारों आदि के आगे अनुकूलन की आवश्यकता है। यह इस रणनीति की विकास दिशा होगी।
/*backtest start: 2022-10-26 00:00:00 end: 2023-11-01 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © moritz1301 //@version=4 strategy("MACD Trendprediction Strategy V1", shorttitle="MACD TPS", overlay=true) sma = input(12,title='DEMA Courte') lma = input(26,title='DEMA Longue') tsp = input(9,title='Signal') dolignes = input(true,title="Lignes") MMEslowa = ema(close,lma) MMEslowb = ema(MMEslowa,lma) DEMAslow = ((2 * MMEslowa) - MMEslowb ) MMEfasta = ema(close,sma) MMEfastb = ema(MMEfasta,sma) DEMAfast = ((2 * MMEfasta) - MMEfastb) LigneMACDZeroLag = (DEMAfast - DEMAslow) MMEsignala = ema(LigneMACDZeroLag, tsp) MMEsignalb = ema(MMEsignala, tsp) Lignesignal = ((2 * MMEsignala) - MMEsignalb ) MACDZeroLag = (LigneMACDZeroLag - Lignesignal) bgcolor(LigneMACDZeroLag<Lignesignal ? color.red : color.green) if (LigneMACDZeroLag>Lignesignal) strategy.entry("Buy", strategy.long, comment="BUY") if (LigneMACDZeroLag<Lignesignal) strategy.close("Buy", strategy.long, comment="SELL")