एटीआर चैनल मूविंग एवरेज रिवर्सल पर आधारित मात्रात्मक ट्रेडिंग रणनीति


निर्माण तिथि: 2023-12-11 15:38:25 अंत में संशोधित करें: 2023-12-11 15:38:25
कॉपी: 3 क्लिक्स: 776
1
ध्यान केंद्रित करना
1621
समर्थक

एटीआर चैनल मूविंग एवरेज रिवर्सल पर आधारित मात्रात्मक ट्रेडिंग रणनीति

अवलोकन

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

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

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

विशेष रूप से, इस रणनीति में मुख्य रूप से निम्नलिखित तर्क शामिल हैंः

  1. एटीआर और एटीआर चैनल औसत रेखा की गणना करें
  2. समय फ़िल्टर की शर्तों को निर्धारित करें
  3. जब कीमत एटीआर चैनल की निचली सीमा से नीचे हो, तो मार्क अधिक प्रवेश कर सकता है
  4. अगली K लाइन के लिए एक और प्रवेश
  5. प्रवेश शुल्क रिकॉर्ड करें
  6. स्टॉप लॉस की गणना करें
  7. जब कीमत एटीआर चैनल की औसत रेखा या एटीआर चैनल की ऊपरी सीमा से अधिक हो, तो बंद करें
  8. जब कीमत स्टॉप-लॉस कीमत से कम हो तो स्टॉप-लॉस से बाहर निकलें

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

इस रणनीति के निम्नलिखित फायदे हैं:

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

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

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

  1. बार-बार लेन-देन से संबंधित लेन-देन शुल्क और स्लिप पॉइंट जोखिम
  2. संभावित रूप से लगातार ट्रिगर होने वाले स्टॉप लॉस
  3. गलत पैरामीटर अनुकूलन नीति को प्रभावित कर सकता है
  4. जब कीमतों में उतार-चढ़ाव होता है, तो स्टॉप लॉस बहुत अधिक हो सकता है

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

अनुकूलन दिशा

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

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

संक्षेप

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

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

//@version=5
strategy("ATR Mean Reversion", overlay=true, initial_capital=100000,default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=6E-5) // Brokers rate (ICmarkets = 6E-5)
SLx = input(1.5, "SL Multiplier", tooltip = "Multiplies ATR to widen stop on volatile assests, Higher values reduce risk:reward but increase winrate, Values below 1.2 are not reccomended")
src = input(close, title="Source")
period = input.int(10, "ATR & MA PERIOD")
plot(open+ta.atr(period))
plot(open-ta.atr(period))
plot((ta.ema(src, period)), title = "Mean", color=color.white)

i_startTime     = input(title="Start Filter", defval=timestamp("01 Jan 1995 13:30 +0000"), group="Time Filter", tooltip="Start date & time to begin searching for setups")
i_endTime       = input(title="End Filter", defval=timestamp("1 Jan 2099 19:30 +0000"), group="Time Filter", tooltip="End date & time to stop searching for setups")

// Check filter(s)
f_dateFilter = true

atr = ta.atr(period)

// Check buy/sell conditions
var float buyPrice = 0
buyCondition    = low < (open-ta.atr(period)) and strategy.position_size == 0 and f_dateFilter
sellCondition   = (high > (ta.ema(close, period)) and strategy.position_size > 0 and close < low[1]) or high > (open+ta.atr(period))
stopDistance    = strategy.position_size > 0 ? ((buyPrice - atr)/buyPrice) : na
stopPrice       = strategy.position_size > 0 ? (buyPrice - SLx*atr): na
stopCondition   = strategy.position_size > 0 and low < stopPrice

// Enter positions
if buyCondition
    strategy.entry(id="Long", direction=strategy.long)

if buyCondition[1]
    buyPrice := open

// Exit positions
if sellCondition or stopCondition
    strategy.close(id="Long", comment="Exit" + (stopCondition ? "SL=true" : ""))
    buyPrice := na

// Draw pretty colors
plot(buyPrice, color=color.lime, style=plot.style_linebr)
plot(stopPrice, color=color.red, style=plot.style_linebr, offset=-1)