ADX क्रॉसओवर ट्रेडिंग रणनीति


निर्माण तिथि: 2023-12-08 15:49:12 अंत में संशोधित करें: 2023-12-08 15:49:12
कॉपी: 0 क्लिक्स: 961
1
ध्यान केंद्रित करना
1621
समर्थक

ADX क्रॉसओवर ट्रेडिंग रणनीति

अवलोकन

यह रणनीति, बाजार की दिशा और प्रवृत्ति के लिए आधार प्रदान करने के लिए चलती सूचकांक औसत ((ADX) और ऊपर की ओर चलने वाले गतिशील सूचकांक ((DI +) का उपयोग करने के साथ-साथ ट्रेडिंग दिशा और होल्डिंग समय को निर्धारित करने के लिए तेजी से और धीमी गति से चलती औसत का उपयोग करती है। यह रणनीति ट्रेंड ट्रैकिंग ट्रेडिंग रणनीति के अंतर्गत आती है। यह रणनीति प्रभावी रूप से मध्य-लघु रेखा के उलट बिंदुओं को पकड़ सकती है और कम अस्थिरता और स्पष्ट रूप से प्रवृत्ति वाले बाजारों में बेहतर प्रदर्शन करती है।

सिद्धांत

इस रणनीति का मूल तर्क यह है कि जब + डीआई लाइन नीचे की ओर से एडीएक्स को तोड़ती है तो एक खरीद संकेत उत्पन्न होता है, और जब + डीआई लाइन ऊपर की ओर से नीचे की ओर से एडीएक्स को तोड़ती है तो एक बेचने का संकेत उत्पन्न होता है। इसलिए, यह रणनीति बाजार की प्रवृत्ति और रिवर्स पॉइंट का न्याय करने के लिए डीआई और एडीएक्स संकेतक के बीच के क्रॉसिंग पर निर्भर करती है। साथ ही, तेजी से या समान रेखा के संबंधों का उपयोग समग्र बाजार की प्रवृत्ति का न्याय करने के लिए किया जाता है, केवल जब तेजी से ईएमए धीमी ईएमए से अधिक होता है, तो व्यापार संकेत उत्पन्न करने के लिए विचार किया जाता है।

विशेष रूप से, जब निम्नलिखित शर्तें पूरी होती हैं, तो एक खरीद संकेत दिया जाता हैः 1। फास्ट ईएमए धीमी ईएमए से अधिक है 2। + डीआई लाइन नीचे की ओर से एडीएक्स लाइन को तोड़ती है 3। ADX 30 से कम का थ्रेशोल्ड स्तर

जब निम्नलिखित शर्तें पूरी हो जाती हैं, तो एक बेचने का संकेत दिया जाता हैः 1। ADX 30 से अधिक का थ्रेशोल्ड स्तर 2। + डीआई लाइन ऊपर से नीचे की ओर गिरती है ADX लाइन

इस रणनीति में स्टॉप लॉजिक भी शामिल है, जो स्टॉप मूल्य से कम होने पर सभी पदों से बाहर निकलता है।

लाभ

यह रणनीति, डीआई, एडीएक्स और औसत रेखा संकेतकों के संयोजन के साथ, बाजार के रुझान के मोड़ को प्रभावी ढंग से निर्धारित कर सकती है। इसके निम्नलिखित फायदे हैंः

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

जोखिम

इस रणनीति के कुछ जोखिम भी हैं, जिनके बारे में ध्यान देने की आवश्यकता हैः

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

इन जोखिमों के लिए, ADX और औसत पैरामीटर को अनुकूलित करने, स्टॉप लॉस स्तर को समायोजित करने और अन्य संकेतकों के साथ संयोजन में सिग्नल की पुष्टि करने जैसे तरीकों से सुधार किया जा सकता है।

अनुकूलन दिशा

इस रणनीति को और भी बेहतर बनाने के लिए जगह हैः

  1. ADX को विभिन्न लंबाई की अवधि के लिए परीक्षण किया जा सकता है, सर्वोत्तम पैरामीटर संयोजन की तलाश में
  2. अन्य संकेतकों जैसे आरएसआई, ब्रिन बैंड आदि को ट्रेडिंग सिग्नल की पुष्टि करने के लिए जोड़ा जा सकता है
  3. मशीन लर्निंग एल्गोरिदम के आधार पर स्वचालित रूप से इष्टतम पैरामीटर संयोजन और लेनदेन नियम
  4. स्टॉप लॉस स्तर को गतिशील रूप से समायोजित करके ओवरहेड जोखिम को कवर किया जा सकता है
  5. प्रवेश और निकास नियमों को मजबूत करने के लिए एक बहु-कारक स्कोरिंग मॉडल बनाया जा सकता है

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2022-12-01 00:00:00
end: 2023-12-07 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/
// © mohanee

//@version=4
//ADX strategy
SmoothedTrueRange=0.00
SmoothedDirectionalMovementPlus=0.00
SmoothedDirectionalMovementMinus=0.00


strategy(title="ADX strategy", overlay=false,pyramiding=3, default_qty_type=strategy.fixed, default_qty_value=3,    initial_capital=10000, currency=currency.USD)

len = input(11, title="ADX Length", minval=1)
threshold = input(30, title="threshold", minval=5)

fastEma=input(13, title="Fast EMA",minval=1, maxval=50)
slowEma=input(55, title="Slow EMA",minval=10, maxval=200)
stopLoss =input(8, title="Stop Loss",minval=1)   //


TrueRange = max(max(high-low, abs(high-nz(close[1]))), abs(low-nz(close[1])))
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


SmoothedTrueRange:= nz(SmoothedTrueRange[1]) - (nz(SmoothedTrueRange[1])/len) + TrueRange

SmoothedDirectionalMovementPlus := nz(SmoothedDirectionalMovementPlus[1]) - (nz(SmoothedDirectionalMovementPlus[1])/len) + DirectionalMovementPlus
SmoothedDirectionalMovementMinus:= nz(SmoothedDirectionalMovementMinus[1]) - (nz(SmoothedDirectionalMovementMinus[1])/len) + DirectionalMovementMinus

DIPlus = SmoothedDirectionalMovementPlus / SmoothedTrueRange * 100
DIMinus = SmoothedDirectionalMovementMinus / SmoothedTrueRange * 100
DX = abs(DIPlus-DIMinus) / (DIPlus+DIMinus)*100
ADX = sma(DX, len)

plot(DIPlus, color=color.green, title="DI+")
//plot(DIMinus, color=color.red, title="DI-")
plot(ADX, color=color.black, title="ADX")
hline(threshold, color=color.black, linestyle=hline.style_dashed)

fastEmaVal=ema(close,fastEma)
slowEmaVal=ema(close,slowEma)




//long condition
longCondition=  ADX < threshold  and crossover(DIPlus,ADX)  and fastEmaVal > slowEmaVal


barcolor(longCondition ? color.yellow: na)

strategy.entry(id="ADXLE", long=true,  when= longCondition  and strategy.position_size<1) 

barcolor(strategy.position_size>1 ? color.blue: na)
bgcolor(strategy.position_size>1 ? color.blue: na)



//Add
strategy.entry(id="ADXLE", comment="Add", long=true,  when= strategy.position_size>1 and close<strategy.position_avg_price and crossover(DIPlus,ADX) ) 


//calculate stop Loss
stopLossVal =  strategy.position_avg_price -  (strategy.position_avg_price*stopLoss*0.01)

strategy.close(id="ADXLE",comment="SL Exit",    when=close<stopLossVal)   //close all on stop loss


//exit condition
exitCondition=  ADX > threshold  and crossunder(DIPlus,ADX) // and fastEmaVal > slowEmaVal
strategy.close(id="ADXLE",comment="TPExitAll",    qty=strategy.position_size ,   when= exitCondition)   //close all