ट्रेंड ब्रेकआउट ADX फ़िल्टर ट्रेडिंग रणनीति


निर्माण तिथि: 2024-01-04 17:12:30 अंत में संशोधित करें: 2024-01-04 17:12:30
कॉपी: 0 क्लिक्स: 520
1
ध्यान केंद्रित करना
1166
समर्थक

ट्रेंड ब्रेकआउट ADX फ़िल्टर ट्रेडिंग रणनीति

अवलोकन

यह रणनीति एक शॉर्ट-लाइन ट्रेडिंग रणनीति है जो ADX सूचक का उपयोग करके ब्रेकआउट सिग्नल को फ़िल्टर करने के लिए करती है। जब कीमत Bollinger Bollinger बैंड को पार करती है और ADX गिरती है, तो यह खाली हो जाती है; जब कीमत Bollinger Bollinger बैंड को पार करती है और ADX बढ़ जाती है, तो यह अधिक होती है। यह रणनीति एक ही समय में एक स्टॉप और एक स्टॉप सेट करती है, पूरी तरह से स्वचालित व्यापार।

रणनीति सिद्धांत

इस रणनीति में मुख्य ब्रेक सिग्नल के रूप में बोलिंगर ब्रीज का उपयोग किया जाता है। ब्रीज का नीचे जाना मूल्य के दो गुना मानक अंतर का प्रतिनिधित्व करता है, और ब्रीज का टूटना आमतौर पर एक मजबूत प्रवृत्ति चरण में प्रवेश करने का प्रतिनिधित्व करता है। इसके अलावा, झूठे टूटने से बचने के लिए, इस रणनीति में एडीएक्स संकेतक को एक फ़िल्टर शर्त के रूप में जोड़ा गया है। ब्रीज को केवल तब माना जाता है जब एडीएक्स गिरता है; ब्रीज को केवल तब माना जाता है जब एडीएक्स बढ़ता है।

विशेष रूप से, इस रणनीति का उपयोग 33 चक्रों की लंबाई के साथ एक समापन मूल्य की गणना करने के लिए किया जाता है। ब्रिन बैंड की मध्य रेखा 33 चक्रों की सरल चलती औसत है, जिसमें समापन मूल्य है, और ऊपरी और निचले ट्रैक मध्य ट्रैक पर दो मानक अंतर हैं। सूचक पैरामीटर सेट किया गया है जब समापन मूल्य ट्रैक से बाहर निकलता है और 8 चक्र ADX 15 चक्र ADX से कम है; जब समापन मूल्य ट्रैक से बाहर निकलता है और 8 चक्र ADX 15 चक्र ADX से अधिक है।

श्रेष्ठता विश्लेषण

यह ट्रेंडिंग और आवृत्ति सूचक फिल्टर सिग्नल के संयोजन के साथ एक ब्रेकआउट रणनीति है, जिसके कुछ फायदे हैंः

  1. ब्रिन बैंड का उपयोग प्रवृत्ति के ब्रेकआउट को निर्धारित करने के लिए किया जाता है, जो अधिकांश व्यापारियों की आदतों के अनुरूप है।
  2. ADX शर्त फ़िल्टर को जोड़ने से प्रवृत्ति के दौरान झूठे ब्रेकडाउन के नुकसान को कम किया जा सकता है।
  3. रणनीति सरल है, इसे समझने और अनुकूलित करने में आसान है।
  4. स्वचालित स्टॉप लॉस स्टॉप सेट करें, मैन्युअल हस्तक्षेप के बिना, एल्गोरिथम ट्रेडिंग के लिए उपयुक्त।

जोखिम विश्लेषण

इस रणनीति के कुछ जोखिम भी हैं:

  1. ब्रिन बैंड पैरामीटर की गलत सेटिंग से सिग्नल की आवृत्ति बढ़ जाती है और लेनदेन की लागत बढ़ जाती है।
  2. गलत ADX सेटिंग्स कुछ प्रभावी संकेतों को फ़िल्टर कर सकती हैं।
  3. स्टॉप लॉस की दूरी बहुत बड़ी हो सकती है, और एकल नुकसान बढ़ सकता है।

इन जोखिमों को कम करने के लिए, हम ब्रिन बैंड पैरामीटर को समायोजित कर सकते हैं, ब्रिन बैंड की सीमा को कम कर सकते हैं; ADX चक्र पैरामीटर को समायोजित करें, ओवरफ्लो सिग्नल से बचें; स्टॉप लॉस दूरी को उचित रूप से छोटा करें, एकल हानि को नियंत्रित करें। बेशक, इन अनुकूलन को ओवरफिट से बचने के लिए परीक्षण के माध्यम से सत्यापित किया जाना चाहिए।

अनुकूलन दिशा

इस रणनीति में और अधिक अनुकूलन की गुंजाइश हैः

  1. आप विभिन्न बाजारों के आंकड़ों का परीक्षण कर सकते हैं, सबसे अच्छा संयोजन खोजने के लिए।
  2. सिग्नल को आगे फ़िल्टर करने के लिए अन्य संकेतकों जैसे कि ट्रेड वॉल्यूम, मूविंग एवरेज आदि के साथ संयोजन किया जा सकता है।
  3. स्वचालित रूप से पैरामीटर को अनुकूलित करने के लिए मशीन सीखने के तरीकों का उपयोग करें।
  4. गतिशील स्टॉप और स्टॉप लॉस पर विचार किया जा सकता है।

संक्षेप

इस रणनीति के लिए एक सरल और व्यावहारिक ब्रेकआउट फ़िल्टरिंग रणनीति है. यह बुरिन बैंड के माध्यम से प्रवृत्ति का आकलन करने के लिए, ADX फ़िल्टर संकेतों, कुछ हद तक हिल बाजार के शोर से बचने के लिए, प्रवृत्ति के अवसरों को पकड़ने के लिए. अनुकूलन के लिए बहुत जगह है और आगे परीक्षण और सुधार के लायक है.

रणनीति स्रोत कोड
/*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)