यह रणनीति गति संकेतक पर आधारित एक अनुकूलन स्टॉक ट्रेडिंग रणनीति है। यह स्वचालित ट्रेडिंग के लिए रुझान निर्णय, सफलता बिंदु पहचान और स्टॉप-लॉस निकास प्राप्त करने के लिए बोलिंगर बैंड, केल्टनर चैनल और मूल्य निचोड़ संकेतक को एकीकृत करती है।
इस रणनीति का मूल बोलिंगर बैंड और केल्टनर चैनलों के माध्यम से एक मूल्य चैनल का निर्माण करना और चैनल के माध्यम से मूल्य के टूटने पर ट्रेडिंग संकेतों की पहचान करना है। जब कीमत चैनल को तोड़ती है तो यह लंबी स्थिति लेगी और जब कीमत चैनल को तोड़ती है तो यह छोटी स्थिति लेगी। इसके अलावा, जब चैनल में मूल्य निचोड़ा जाता है, तो रणनीति मूल्य निचोड़ संकेतक के सकारात्मक और नकारात्मक मूल्य के आधार पर संचालन दिशा निर्धारित करेगी।
विशेष रूप से, बोलिंगर बैंड्स ऊपरी और निचले रेल को प्लॉट करने के लिए मूल्य के मानक विचलन की गणना करता है; केल्टनर चैनल औसत मूल्य ± औसत अस्थिरता रेंज के आधार पर ऊपरी और निचले रेल को प्लॉट करता है। जब दोनों के बीच चैनल संलयन होता है, तो यह माना जाता है कि अगले ब्रेकआउट की प्रतीक्षा करते हुए बाजार समेकन में प्रवेश करता है। मूल्य निचोड़ संकेतक दर्शाता है कि क्या कीमत दो चैनलों के बीच संकुचित है। रणनीति निचोड़ संकेतक के सकारात्मक और नकारात्मक मूल्य के आधार पर बाजार की दिशा निर्धारित करती है।
संक्षेप में, यह रणनीति मूल्य आंदोलन का न्याय करने के लिए कई संकेतकों को एकीकृत करती है और एक स्पष्ट लंबी और छोटी तर्क बनाती है, जो प्रभावी रूप से झूठे ब्रेकआउट को फ़िल्टर कर सकती है और उच्च संभावना वाले व्यापारिक अवसरों की पहचान कर सकती है।
मजबूत निर्णय क्षमता के साथ कई संकेतकों को एकीकृत करता है। संकेतकों का संयोजन सटीकता में सुधार कर सकता है।
निर्धारित करने के लिए संकेतक अंतर को निचोड़ें, झूठे ब्रेकआउट को कम करें। अनावश्यक व्यापार से बचने के लिए संकेतक अंतर एक सहायक स्थिति के रूप में कार्य करता है।
अनुकूली चैनल स्टॉप लॉस, प्रभावी ढंग से जोखिमों का प्रबंधन करता है। चैनल स्टॉप-लॉस स्थिति के रूप में कार्य करता है, जो बाजार में उतार-चढ़ाव के आधार पर स्वचालित रूप से समायोजित कर सकता है ताकि नुकसान कम हो सके।
सरल पैरामीटर सेटिंग्स, स्वचालन के लिए उपयुक्त। केवल कुछ प्रमुख मापदंडों के साथ, यह परीक्षण, अनुकूलन और स्वचालित व्यापार प्रणाली में एकीकृत करना आसान है।
जब बाजार में तेजी से उतार-चढ़ाव होता है, तो बार-बार लंबी-लघु स्विच करना, जिससे ट्रेडों की संख्या बढ़ जाती है।
अनुचित संकेतक मापदंड अच्छे व्यापारिक अवसरों को याद कर सकते हैं। इष्टतम मापदंडों को खोजने के लिए पर्याप्त परीक्षण और अनुकूलन की आवश्यकता होती है।
केवल स्पष्ट दिशा वाले शेयरों पर लागू होता है, जो अत्यधिक अस्थिर बाजारों के लिए उपयुक्त नहीं है। संकेतक आसानी से गलत दिशा में जा सकते हैं और झूठे संकेत उत्पन्न कर सकते हैं।
पूंजी उपयोग दक्षता को अनुकूलित करने के लिए स्थिति नियंत्रण मॉड्यूल को बढ़ाएं। उदाहरण के लिए, ब्रेकआउट शक्ति के आधार पर पूंजी आवंटित करें।
संकेतक मापदंडों को गतिशील रूप से समायोजित करने के लिए मशीन लर्निंग मॉडल को बढ़ाएं, जिससे संकेतक स्वचालित रूप से विभिन्न चक्रों और विभिन्न स्टॉक के अनुकूल हो सकें।
स्टॉप लॉस की रणनीति को बेहतर बनाने के लिए स्टॉप लॉस के समय को निर्धारित करने के लिए अधिक सहायक संकेतक पेश करें। बेहतर रणनीति प्रमुख बिंदुओं पर स्टॉप लॉस की संख्या को कम कर सकती है।
यह रणनीति बोलिंगर बैंड, केल्टनर चैनल और मूल्य निचोड़ संकेतक को एकीकृत करती है ताकि निर्णय और जोखिम नियंत्रण प्रणाली के लिए एक स्पष्ट तर्क बन सके। यह प्रवृत्ति निर्णय और ब्रेकआउट संचालन को जोड़ती है, स्वचालित रूप से बाजार की स्थितियों के अनुकूल हो सकती है और उच्च संभावना वाले व्यापारिक अवसरों की पहचान कर सकती है। आगे पैरामीटर अनुकूलन और सहायक परिस्थितियों में सुधार के साथ, इस रणनीति को मात्रात्मक व्यापार के लिए एक महत्वपूर्ण उपकरण में और मजबूत किया जा सकता है।
/*backtest start: 2022-12-29 00:00:00 end: 2024-01-04 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © juliopetronilo //@version=4 strategy("DMI/ADX/Squeeze Robot", shorttitle="DMI/ADX/SQZ", overlay=true) // Squeeze Momentum Indicator length = input(20, title="BB Length") mult = input(2.0, title="BB MultFactor") lengthKC = input(20, title="KC Length") multKC = input(1.5, title="KC MultFactor") useTrueRange = input(true, title="Use TrueRange (KC)") source = close basis = sma(source, length) dev = multKC * stdev(source, length) upperBB = basis + dev lowerBB = basis - dev ma = sma(source, lengthKC) rangeKC = useTrueRange ? tr : (high - low) rangema = sma(rangeKC, lengthKC) upperKC = ma + rangema * multKC lowerKC = ma - rangema * multKC sqzOn = (lowerBB > lowerKC) and (upperBB < upperKC) sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC) noSqz = not (sqzOn or sqzOff) val = linreg(source - avg(avg(highest(high, lengthKC), lowest(low, lengthKC)), sma(close, lengthKC)), lengthKC, 0) // DMI/ADX Plot adxlen = input(14, title="ADX Smoothing") dilen = input(14, title="DI Length") keyLevel = input(23, title="Key Level for ADX") dirmov(len) => up = change(high) down = -change(low) truerange = rma(tr, len) plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, len) / truerange) minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, len) / truerange) [plus, minus] adx(dilen, adxlen) => [plus, minus] = dirmov(dilen) sum = plus + minus adx_val = abs(plus - minus) / (sum == 0 ? 1 : sum) * 100 [adx_val, plus, minus] [sig, up, down] = adx(dilen, adxlen) // Estrategia de Trading strategy.entry("Buy", strategy.long, when=sqzOn and crossover(up, down) and crossover(val, 0)) strategy.entry("Sell", strategy.short, when=sqzOn and crossunder(up, down) and crossunder(val, 0)) strategy.close("Buy", when=sqzOff) strategy.close("Sell", when=sqzOff) // Plot de los indicadores plot(val, color=color.blue, style=plot.style_histogram, linewidth=4) plot(0, color=noSqz ? color.blue : sqzOn ? color.black : color.rgb(236, 238, 247), style=plot.style_cross, linewidth=2) plot(up, color=color.blue, title="+DI") plot(down, color=color.gray, title="-DI") plot(keyLevel, color=color.white, title="Key Level")