यह एक अल्पकालिक ट्रेडिंग रणनीति है जो ब्रेकआउट सिग्नल को फ़िल्टर करने के लिए ADX संकेतक का उपयोग करती है। जब कीमत ऊपरी बोलिंगर बैंड से ऊपर टूटती है और ADX गिर रहा है, तो यह छोटा हो जाता है, और जब कीमत निचले बोलिंगर बैंड से नीचे टूटती है और ADX बढ़ रहा है तो यह लंबा हो जाता है। रणनीति पूरी तरह से स्वचालित ट्रेडिंग के लिए स्टॉप लॉस और लाभ लेने को भी स्वचालित रूप से सेट करती है।
इस रणनीति का मूल ब्रेकआउट सिग्नल के लिए बोलिंगर बैंड का उपयोग कर रहा है। बोलिंगर बैंड के ऊपरी और निचले बैंड मूल्य के दो मानक विचलन का प्रतिनिधित्व करते हैं, इसलिए ब्रेकआउट आमतौर पर इसका मतलब है कि मूल्य एक मजबूत प्रवृत्ति में प्रवेश कर रहा है। इसके अलावा, एडीएक्स संकेतक को यहां झूठे ब्रेकआउट से बचने के लिए एक फ़िल्टर के रूप में पेश किया गया है। शॉर्ट सिग्नल केवल तब माना जाता है जब एडीएक्स गिर रहा हो जबकि लंबे सिग्नल केवल तब माना जाता है जब एडीएक्स बढ़ रहा हो। यह रेंज-बाउंड अवधि के दौरान कुछ व्हिपसा को फ़िल्टर करने में मदद करता है।
विशेष रूप से, यह रणनीति 33 अवधि के समापन की कीमतों का उपयोग करके बोलिंगर बैंड की गणना करती है। मध्य बैंड 33 अवधि का सरल चलती औसत है, और ऊपरी / निचले बैंड को मध्य बैंड के ऊपर / नीचे दो मानक विचलन पर रखा जाता है। जब कीमत ऊपरी बैंड से नीचे बंद होती है और 8-अवधि एडीएक्स 15-अवधि एडीएक्स से नीचे होता है, तो रणनीति शॉर्ट सिग्नल देती है। जब कीमत निचले बैंड से ऊपर बंद होती है और 8-अवधि एडीएक्स 15-अवधि एडीएक्स से ऊपर होता है, तो यह लंबी सिग्नल देती है। बाहर निकलने के लिए 800 लाभ अंक और 400 अंक स्टॉप लॉस पर सेट किया जाता है।
प्रवृत्ति और गति फ़िल्टर को शामिल करने वाली ब्रेकआउट रणनीति के रूप में, इसके कई फायदे हैंः
इस रणनीति के साथ कुछ जोखिम भी हैंः
इन जोखिमों को कम करने के लिए, हम बैंड को संकीर्ण करने के लिए बीबी पैरामीटर को ठीक कर सकते हैं, ओवर-फिल्टरिंग से बचने के लिए एडीएक्स अवधि को समायोजित कर सकते हैं, और एकल-व्यापार हानि को नियंत्रित करने के लिए स्टॉप लॉस को कम कर सकते हैं। बेशक, इन अनुकूलन को ओवरफिटिंग से बचने के लिए चलने-आगे परीक्षण करने की आवश्यकता है।
आगे अनुकूलन के लिए जगह हैः
निष्कर्ष में, यह फिल्टर के साथ एक सरल और व्यावहारिक ब्रेकआउट रणनीति है। बीबी के साथ रुझानों की पहचान करना और एडीएक्स के साथ संकेतों को फ़िल्टर करने से रेंज-बाउंड अवधि के दौरान शोर से बचने और कुछ हद तक रुझान के अवसरों को पकड़ने में मदद मिलती है। आगे के परीक्षण और सुधार के लिए अभी भी बड़ी जगह है।
/*backtest start: 2023-12-27 00:00:00 end: 2024-01-03 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Hizbullah XAUUSD Sniper", overlay=true) Price = close Length = input(33) Mult = input(2) Basis = sma(Price, Length) StdDev = Mult * stdev(Price, Length) Upper = Basis + StdDev Lower = Basis - StdDev ADX_Length = input(4) TrueRange = max(max(high-low, abs(high-nz(close[1]))), abs(low-nz(close[1]))) SmoothedTrueRange = sma(TrueRange, ADX_Length) DirectionalMovementPlus = high-nz(high[1]) > nz(low[1])-low ? max(high-nz(high[1]), 0): 0 DirectionalMovementMinus = nz(low[1])-low > high-nz(high[1]) ? max(nz(low[1])-low, 0): 0 SmoothedDirectionalMovementPlus = sma(DirectionalMovementPlus, ADX_Length) SmoothedDirectionalMovementMinus = sma(DirectionalMovementMinus, ADX_Length) DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange * 100 DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange * 100 DX = abs(DIPlus - DIMinus) / (DIPlus + DIMinus)*100 SmoothedADX1 = ema(DX, input(8)) SmoothedADX2 = ema(DX, input(15)) Condition1 = crossunder(Price, Upper) and SmoothedADX1 < SmoothedADX2 Take_Profit = input(800) Stop_Loss = input(400) strategy.entry("ShortEntry", true, when = Condition1) strategy.exit("ShortExit", "ShortEntry", profit = Take_Profit, loss = Stop_Loss)