
यह रणनीति ट्रेडिंग सिग्नल उत्पन्न करने के लिए ट्रेंड इंडेक्स और रैंडम इंडिकेटर का संयुक्त उपयोग करती है। ट्रेंड इंडेक्स में डीआई +, डीआई- और एडीएक्स लाइनें ट्रेंड की दिशा और ताकत का आकलन करने के लिए उपयोग की जाती हैं, और रैंडम इंडिकेटर में% के लाइनें ओवरबॉय या ओवरसोल का आकलन करने के लिए उपयोग की जाती हैं। रणनीति डीआई + डीआई-एडीएक्स से अधिक है, 25 से अधिक है और 20% के नीचे है, जब एक मल्टीहेड सिग्नल उत्पन्न होती है; और डीआई-डीआई + डीआई-एडीएक्स से अधिक है, 25 से अधिक है और 80% के ऊपर है, जब एक खाली सिर सिग्नल उत्पन्न होती है। साथ ही, रणनीति एक अभिनव गतिशील स्टॉप-लॉस विधि का उपयोग करती है, जो गतिशील स्टॉप-लॉस के रूप में अंतिम बिंदु के बाद उच्चतम और निम्नतम मूल्य का उपयोग करती है, प्रभावी रूप से जोखिम को नियंत्रित करती है।
इस रणनीति का मुख्य तर्क निम्नलिखित पर आधारित हैः
रुझान सूचकांक: डीआई +, डीआई- और एडीएक्स के माध्यम से बाजार की प्रवृत्ति की दिशा और ताकत का आकलन करें। जब डीआई + डीआई - से अधिक है, तो यह बहुमुखी प्रवृत्ति को दर्शाता है; जब डीआई - डीआई + से अधिक है, तो यह हवा की प्रवृत्ति को दर्शाता है। एडीएक्स प्रवृत्ति की ताकत का आकलन करने के लिए उपयोग किया जाता है, संख्यात्मक मूल्य जितना अधिक होता है, प्रवृत्ति अधिक स्पष्ट होती है।
यादृच्छिक सूचकांक ओवरबॉय और ओवरसेलिंग का आकलन करता है: यादृच्छिक संकेतक में% K रेखा वर्तमान समापन मूल्य को एक निश्चित अवधि में उच्चतम और निम्नतम मूल्य की स्थिति के सापेक्ष प्रदर्शित करती है, यह निर्धारित करने के लिए कि क्या बाजार ओवरबॉट है या ओवरसोल्ड है। जब% K 20 से नीचे है तो ओवरसोल्ड है, 80 से ऊपर है।
सिग्नल तर्क उत्पन्न करता है: ट्रेंड इंडेक्स और रैंडम इंडिकेटर के संयोजन से, यह रणनीति डीआई + डीआई - ((बहुमुखी प्रवृत्ति), एडीएक्स 25 से अधिक ((प्रवृत्ति अधिक स्पष्ट है) और% के 20 से कम ((अतिविक्री)) के साथ एक बहुमुखी संकेत उत्पन्न करती है; डीआई - डीआई + ((हॉवर ट्रेंड), एडीएक्स 25 से अधिक और% के 80 से अधिक ((अतिविक्री)) के साथ एक खाली सिग्नल उत्पन्न करता है।
गतिशील रोकथाम: अंतिम प्रविष्टि बिंदु के बाद उच्चतम और निम्नतम मूल्य को रिकॉर्ड करें और इसे एक गतिशील स्टॉपलॉस के रूप में रखें। इस प्रकार आप बाजार में उतार-चढ़ाव के आधार पर मुनाफे को लॉक कर सकते हैं या जोखिम को नियंत्रित कर सकते हैं।
इस रणनीति के कुछ प्रमुख फायदे हैं:
प्रवृत्ति सूचकांक और यादृच्छिक संकेतक के दोहरे निर्णय के संयोजन में, उच्च विश्वसनीयता। प्रवृत्ति सूचकांक मुख्य प्रवृत्ति की दिशा का निर्धारण करता है, यादृच्छिक संकेतक स्थानीय विशेषताओं को पकड़ता है, दोनों एक दूसरे के पूरक होते हैं।
अभिनव गतिशील रोकथाम तंत्र. हाल के उतार-चढ़ाव के आधार पर रोकथाम बिंदु निर्धारित करें, वास्तविक बाजार की स्थिति के आधार पर जोखिम को नियंत्रित करने में सक्षम हों, रोकथाम प्रभाव अच्छा है.
कम रणनीति पैरामीटर, आसान लागू करना मुख्य पैरामीटर केवल सूचक गणना की लंबाई, आसान समायोजन और रणनीति अनुकूलन
विभिन्न किस्मों और चक्रों के लिए व्यापक रूप से लागू है। यह रणनीति शेयर, विदेशी मुद्रा, क्रिप्टोकरेंसी और अन्य वित्तीय बाजारों में उपयोग की जा सकती है।
पाइन स्क्रिप्ट का उपयोग करके लिखा गया है, जिसे सीधे ट्रेडिंग प्लेटफॉर्म में लागू किया जा सकता है, सुविधाजनक और तेज़।
इस रणनीति के कुछ जोखिम भी हैं, जिनके बारे में आपको पता होना चाहिएः
जब रुझान में उतार-चढ़ाव होता है, तो गलत सिग्नल उत्पन्न होने की संभावना होती है। इस समय एडीएक्स अपेक्षाकृत कम होता है, जोखिम से बचने के लिए स्थिति को कम किया जाना चाहिए।
यादृच्छिक संकेतक स्वयं एक पश्चगामी संकेतक है, सिग्नल उत्पन्न होने पर बाजार में उलटफेर हो सकता है। इसे अन्य पूर्ववर्ती संकेतकों के साथ उचित रूप से जोड़ा जाना चाहिए।
गतिशील स्टॉप लॉस तंत्र पूरी तरह से बड़े बाजार के झटके से बचने में सक्षम नहीं है। उचित स्टॉप लॉस बिट्स की दूरी निर्धारित करने की सिफारिश की जाती है।
अनुचित पैरामीटर सेटिंग भी रणनीति के प्रभाव को प्रभावित कर सकती है। उपयुक्त सूचक लंबाई पैरामीटर का चयन करना चाहिए।
समग्र बाजार की स्थिति पर बारीकी से नजर रखने की आवश्यकता होती है। एक प्रमुख ब्लैक स्वान घटना के मामले में, असामान्य नुकसान से बचने के लिए रणनीति को निलंबित कर दिया जाना चाहिए।
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
अन्य निर्णय संकेतकों को जोड़ना, एकाधिक फ़िल्टरिंग बनाना, संकेत की विश्वसनीयता में सुधार करना। जैसे कि औसत रेखा निर्णय प्रवृत्ति में शामिल होना, एमएसीडी निर्णय विचलन आदि।
पैरामीटर सेटिंग को अनुकूलित करें, पैरामीटर का सबसे अच्छा संयोजन चुनें। सबसे उपयुक्त सूचक लंबाई निर्धारित करने के लिए ऐतिहासिक डेटा को फिर से जांचें।
विभिन्न किस्मों और ट्रेडिंग चक्रों के लिए अलग-अलग पैरामीटर सेट करें। उच्च आवृत्ति वाले ट्रेडिंग के लिए उपयुक्त किस्मों के लिए गणना चक्र को छोटा किया जा सकता है।
GetInfo फ़ंक्शन और लॉग रिकॉर्डिंग फ़ंक्शन के साथ, विस्तृत लेनदेन लॉग और सूचक डेटा को आउटपुट करें, जिससे रणनीति विश्लेषण और अनुकूलन की सुविधा हो सके।
पाइन संपादक में चार्टिंग जोड़ा गया है, जो ट्रेडिंग सिग्नल बिंदुओं को प्रदर्शित करता है। साथ ही स्टॉप लॉस लाइन की गति को भी दिखाता है।
अलार्म फ़ंक्शन विकसित किया गया है, जो विशिष्ट शर्तों को पूरा करने पर संदेशों को याद दिलाता है, जिससे लेनदेन में समय पर हस्तक्षेप करना आसान हो जाता है।
इस रणनीति का व्यापक रूप से प्रवृत्ति सूचकांक और यादृच्छिक संकेतक का लाभ उठाने के लिए, प्रवृत्ति दिशा का आकलन करने के लिए और ओवरबॉय ओवरसोल्ड क्षेत्र का पता लगाने के लिए, जिससे व्यापार संकेत उत्पन्न होता है। इसके अलावा, गतिशील स्टॉप-लॉस का अभिनव डिजाइन किया गया है, जिससे जोखिम नियंत्रण अधिक बुद्धिमान और स्वचालित हो जाता है। यह रणनीति संकेत विश्वसनीय, व्यापक, उपयोग में आसान है, और एक कुशल और व्यावहारिक मात्रात्मक व्यापार रणनीति है। निरंतर अनुकूलन और सुधार के माध्यम से, इस रणनीति को अधिक उत्कृष्ट रणनीति प्रदर्शन प्राप्त करने की उम्मीद है।
/*backtest
start: 2022-12-19 00:00:00
end: 2023-12-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("DMI with Stochastic and Dynamic Stop-Loss", shorttitle="DMI_Stoch_SL", overlay=true)
length = input(14, title="DMI Length")
adxThreshold = input(25, title="ADX Threshold")
stochKLength = input(14, title="Stochastic %K Length")
stochDLength = input(3, title="Stochastic %D Length")
[diPlus, diMinus, adx] = ta.dmi(length, length)
stochKLine = ta.stoch(close, high, low, stochKLength)
var float lowestClose = na
var float highestClose = na
lowestClose := na(lowestClose) ? close : math.min(lowestClose, close)
highestClose := na(highestClose) ? close : math.max(highestClose, close)
longCondition = (diPlus > diMinus) and (adx > adxThreshold) and (stochKLine < 20)
shortCondition = (diMinus > diPlus) and (adx > adxThreshold) and (stochKLine > 80)
if longCondition
strategy.entry("Buy", strategy.long)
strategy.exit("Exit Buy", "Buy", stop=lowestClose)
if shortCondition
strategy.entry("Sell", strategy.short)
strategy.exit("Exit Sell", "Sell", stop=highestClose)