चलती औसत ट्रैकिंग रणनीति

लेखक:चाओझांग, दिनांक: 2023-10-20 17:02:52
टैगः

img

अवलोकन

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

रणनीति तर्क

यह रणनीति निम्नलिखित सिद्धांतों पर आधारित हैः

  1. मूल्य प्रवृत्ति निर्धारित करने के लिए 200-दिवसीय सरल चलती औसत (स्लो एमए) का प्रयोग करें।
  2. जब समापन मूल्य (बंद) slowMA के ऊपर से पार हो जाता है, तो यह ऊपर की ओर प्रवृत्ति का संकेत देता है, इसलिए लंबा जाओ।
  3. जब समापन मूल्य (बंद) slowMA से नीचे जाता है, तो यह एक नीचे की ओर प्रवृत्ति का संकेत देता है, इसलिए शॉर्ट करें।
  4. पिछले लंबे और छोटे प्रविष्टि समय को रिकॉर्ड करने के लिए last_long और last_short चर का उपयोग करें.
  5. क्रॉसओवर फ़ंक्शन का उपयोग व्यापार संकेत उत्पन्न करने के लिए last_long और last_short के बीच क्रॉसओवर का पता लगाने के लिए करें.
  6. बैकटेस्ट अवधि में, लंबे सिग्नल (long_signal) प्राप्त करने पर लंबा और छोटे सिग्नल (short_signal) प्राप्त करने पर छोटा करें।

यह रणनीति औसत दिशा में आगे बढ़कर प्रवृत्ति को ट्रैक करती है और जब एमए क्रॉसओवर होता है, तो प्रवृत्ति से लाभ कमाने के लिए रिवर्स ट्रेड करती है।

लाभ विश्लेषण

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

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

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

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

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

जोखिमों को निम्नलिखित अनुकूलन के माध्यम से संबोधित किया जा सकता हैः

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

अनुकूलन दिशाएँ

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

  1. इष्टतम मापदंडों को खोजने के लिए वॉक फॉरवर्ड विश्लेषण जैसे तरीकों का उपयोग करके एमए अवधि पैरामीटर का अनुकूलन करें।

  2. दीर्घकालिक और अल्पकालिक दोनों रुझानों को ट्रैक करने के लिए एक अल्पकालिक एमए जोड़ें।

  3. रुझान उलटा पहचान में सुधार के लिए एमएसीडी जैसे रुझान संकेतक शामिल करें।

  4. एकल व्यापार हानि को नियंत्रित करने के लिए ट्रैलिंग स्टॉप लॉस जैसे स्टॉप लॉस तंत्र जोड़ें।

  5. विभिन्न उत्पादों और समय अवधि पर मजबूती परीक्षण।

  6. पैरामीटर अनुकूलन अनुकूलन के लिए मशीन सीखने का उपयोग करें.

निष्कर्ष

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


/*backtest
start: 2023-09-19 00:00:00
end: 2023-10-19 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("MA X 200 BF", overlay=true, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.0)

/////////////// Time Frame ///////////////
testStartYear = input(2012, "Backtest Start Year") 
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay, 0, 0)

testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(12, "Backtest Stop Month")
testStopDay = input(31, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay, 0, 0)

testPeriod() => true

///////////// MA 200 /////////////
slowMA = sma(close, input(200))

/////////////// Strategy ///////////////
long = close > slowMA
short = close < slowMA

last_long = 0.0
last_short = 0.0
last_long := long ? time : nz(last_long[1])
last_short := short ? time : nz(last_short[1])

long_signal = crossover(last_long, last_short)
short_signal = crossover(last_short, last_long)

/////////////// Execution /////////////// 
if testPeriod()
    strategy.entry("Long Entry",  strategy.long, when=long_signal)
    strategy.entry("Short Entry", strategy.short, when=short_signal)
    strategy.exit("Long Ex", "Long Entry")
    strategy.exit("Short Ex", "Short Entry")

/////////////// Plotting /////////////// 
plot(slowMA, color = long ? color.lime : color.red, linewidth=2)
bgcolor(strategy.position_size > 0 ? color.lime : strategy.position_size < 0 ? color.red : color.white, transp=80)
bgcolor(long_signal ? color.lime : short_signal ? color.red : na, transp=30)

अधिक