एडीएक्स, एमए और ईएमए केवल लंबी ट्रेंड ट्रैकिंग रणनीति

लेखक:चाओझांग, दिनांकः 2024-01-29 11:30:15
टैगः

img

अवलोकन

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

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

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

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

एडीएक्स और चलती औसत की विशेषताओं को मिलाकर, यह रणनीति प्रवृत्ति की दिशा का न्याय करने के लिए ट्रेडिंग संकेत बनाता हैः जब एडीएक्स बढ़ता है और कीमतें ऊपर की ओर एमए और ईएमए को तोड़ती हैं, और जब एडीएक्स गिरती है या कीमतें एमए / ईएमए को तोड़ती हैं, तो स्थिति बंद हो जाती है। यह केवल लंबी ट्रेंड ट्रैकिंग रणनीति लागू करता है।

लाभ विश्लेषण

इस रणनीति के मुख्य लाभ इस प्रकार हैंः

  1. ADX का उपयोग प्रवृत्ति की ताकत का आकलन करने, अमान्य ट्रेडों को कम करने और प्रवृत्तियों को ट्रैक करने के लिए करें।
  2. विभिन्न पैरामीटर सेटिंग्स के साथ दो चलती औसत का संयोजन प्रभावी रूप से रुझानों की पहचान कर सकता है।
  3. केवल लंबी पोजीशन ही लगातार रिवर्स ऑपरेशन और स्लिपगेज हानि से बचती हैं।
  4. सख्त प्रवेश शर्तें जोखिमों को प्रभावी ढंग से नियंत्रित कर सकती हैं।
  5. केवल लंबी अवधि के रुझानों को ट्रैक करने की रणनीति लागू करें।

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

कुछ जोखिम भी हैं:

  1. ADX संकेतक में विलंब है, संभवतः सबसे अच्छा प्रवेश बिंदु याद आ रहा है।
  2. केवल लंबी पोजीशन ही गिरते बाजारों से लाभ नहीं उठा सकती।
  3. जब रुझान बदलते हैं तो कुछ नुकसान का जोखिम होता है।
  4. गलत पैरामीटर सेटिंग्स भी रणनीति प्रदर्शन को प्रभावित करती हैं।

समाधान:

  1. ADX मापदंडों को समायोजित करें ताकि देरी को उचित रूप से कम किया जा सके।
  2. एकल हानि को नियंत्रित करने के लिए स्टॉप हानि सेट करें.
  3. सर्वोत्तम का चयन करने के लिए मापदंडों का परीक्षण और अनुकूलन करें।

अनुकूलन

रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः

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

निष्कर्ष

सामान्य तौर पर, यह एक लंबी-केवल प्रवृत्ति ट्रैकिंग रणनीति है जो प्रवृत्ति की ताकत और दो चलती औसत को सहायक फिल्टर के रूप में न्याय करने के लिए एडीएक्स का उपयोग करती है। यह अमान्य ट्रेडों की घटना को प्रभावी ढंग से नियंत्रित करती है और रुझानों को ट्रैक करने के प्रभाव को प्राप्त करती है। यह एक अपेक्षाकृत स्थिर लंबी-केवल रणनीति है। कुछ अनुकूलन के साथ, रणनीति की स्थिरता और उपज को और बढ़ाया जा सकता है।


/*backtest
start: 2023-01-22 00:00:00
end: 2024-01-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("ADX, MA, and EMA Long Strategy - ADX Trending Up", shorttitle="ADX_MA_EMA_Long_UpTrend", overlay=true)
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
maPeriod = input(50, title="MA Period")
emaPeriod = input(50, title="EMA Period")
dirmov(len) =>
    up = change(high)
    down = -change(low)
    plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
    minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
    truerange = rma(tr, len)
    plus = fixnan(100 * rma(plusDM, len) / truerange)
    minus = fixnan(100 * rma(minusDM, len) / truerange)
    [plus, minus]
adx(dilen, adxlen) =>
    [plus, minus] = dirmov(dilen)
    sum = plus + minus
    100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
sig = adx(dilen, adxlen)
maValue = sma(close, maPeriod)
emaValue = ema(close, emaPeriod)
longCondition = sig > sig[1] and close > maValue and close > emaValue
if (longCondition)
    strategy.entry("Long", strategy.long)
exitCondition = sig < sig[1] or  close < maValue or close < emaValue
if (exitCondition)
    strategy.close("Long")
plot(maValue, color=color.blue, title="MA")
plot(emaValue, color=color.orange, title="EMA")
plot(sig, color=color.red, title="ADX")


अधिक