दोहरी चलती औसत प्रवृत्ति अनुवर्ती रणनीति


निर्माण तिथि: 2024-03-22 13:56:44 अंत में संशोधित करें: 2024-03-22 13:56:44
कॉपी: 1 क्लिक्स: 501
1
ध्यान केंद्रित करना
1617
समर्थक

दोहरी चलती औसत प्रवृत्ति अनुवर्ती रणनीति

अवलोकन

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

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

इस रणनीति के केंद्र में दो चलती औसत हैं: एक तेज औसत (डिफ़ॉल्ट चक्र 32 है) और एक धीमी औसत (डिफ़ॉल्ट चक्र 32 है, जिसे पैरामीटर के माध्यम से समायोजित किया जा सकता है) । जब समापन मूल्य ऊपर / नीचे इन दो समानताओं को पार करता है, तो यह संकेत देता है कि प्रवृत्ति में उलट है, इसलिए रणनीति एक खरीद और बिक्री संकेत उत्पन्न करती हैः

  • जब आप एक धीमी गति से औसत रेखा को पार करते हैं, तो अधिक करें
  • जब तेज औसत रेखा के नीचे धीमी औसत रेखा से गुजरती है, तो खाली करें
  • एक बार जब आपके पास एक बहु हो जाता है, तो एक धीमी औसत रेखा के नीचे एक तेज औसत रेखा को पार करें, एक बहु को समतल करें और खाली करें
  • जब आप के पास एक खाली टिकट है, तो एक धीमी गति से औसत रेखा पर एक तेज औसत रेखा को पार करें, खाली करें और अधिक करें

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

एडवांटेज विश्लेषण

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

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

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

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

अनुकूलन दिशा Optimization Direction

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

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

सारांश

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

रणनीति स्रोत कोड
/*backtest
start: 2023-03-16 00:00:00
end: 2024-03-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5

//study(title="Demo - SSL Basic", shorttitle="Demo - SSL Basic", overlay=true)
strategy(title='Demo - SSL Basic', shorttitle='Demo - SSL Basic', overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=100, commission_value=0.15)

// Backtest Date Range
start_date_long = input(title='Backtest Long Start Date', defval=timestamp('01 Jan 2018 00:00 +0530'))
end_date_long = input(title='Backtest Long End Date', defval=timestamp('25 Jan 2030 00:00 +0530'))
backtest_range = true

// Inputs
maType = input.string(title='SSL MA Type', options=['SMA', 'EMA', 'WMA'], defval='SMA')
sslLen = input(title='SSL Length', defval=32)
showCross = input(title='Show Crossover?', defval=true)
showEntry = input(title='Show Entry?', defval=true)
showTrend = input(title='Show Trend Colors?', defval=true)

// Calc MA for SSL Channel
calc_ma(close, len, type) =>
    float result = 0
    if type == 'SMA'  // Simple
        result := ta.sma(close, len)
        result
    if type == 'EMA'  // Exponential
        result := ta.ema(close, len)
        result
    if type == 'WMA'  // Weighted
        result := ta.wma(close, len)
        result    
    result

// Add SSL Channel
maHigh = calc_ma(high, sslLen, maType)
maLow = calc_ma(low, sslLen, maType)
Hlv = int(na)
Hlv := close > maHigh ? 1 : close < maLow ? -1 : Hlv[1]
sslDown = Hlv < 0 ? maHigh : maLow
sslUp = Hlv < 0 ? maLow : maHigh
ss1 = plot(sslDown, title='Down SSL', linewidth=2, color=showTrend ? na : color.red)
ss2 = plot(sslUp, title='Up SSL', linewidth=2, color=showTrend ? na : color.lime)

// Conditions
longCondition = ta.crossover(sslUp, sslDown)
shortCondition = ta.crossover(sslDown, sslUp)

// Strategy
if shortCondition
    strategy.close('Long', comment='Long Exit', alert_message='JSON')

if longCondition
    strategy.close('Short', comment='Short Exit', alert_message='JSON')

if backtest_range and longCondition
    strategy.entry('Long', strategy.long, comment='Long Entry', alert_message='JSON')

if backtest_range and shortCondition
    strategy.entry('Short', strategy.short, comment= 'Short Entry', alert_message='JSON')


// Plots
fill(ss1, ss2, color=showTrend ? sslDown < sslUp ? color.new(color.lime, transp=75) : color.new(color.red, transp=75) : na, title='Trend Colors')