मूविंग एवरेज चैनल ब्रेकआउट ट्रेडिंग रणनीति


निर्माण तिथि: 2024-01-29 14:31:25 अंत में संशोधित करें: 2024-01-29 14:31:25
कॉपी: 0 क्लिक्स: 631
1
ध्यान केंद्रित करना
1617
समर्थक

मूविंग एवरेज चैनल ब्रेकआउट ट्रेडिंग रणनीति

अवलोकन

यह रणनीति सरल चलती औसत के स्वर्ण-चिकोटी-मृत-चिकोटी सिद्धांत पर आधारित है, जो 7-दिवसीय औसत और 14-दिवसीय औसत के क्रॉसिंग के माध्यम से खरीद और बिक्री के निर्णय लेता है। 7 दिन की औसत नीचे से 14 दिन की औसत को तोड़ने पर एक खरीद संकेत देता है; जब 7 दिन की औसत ऊपर से 14 दिन की औसत को तोड़ती है तो एक बेचने का संकेत देता है। इस रणनीति में एक ही समय में स्टॉप, स्टॉप और ट्रैक स्टॉप की सुविधा होती है ताकि मुनाफे को लॉक किया जा सके और जोखिम को नियंत्रित किया जा सके।

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

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

विशेष रूप से, यह रणनीति SMA सूचक के माध्यम से 7 वें और 14 वें दिन के सरल चलती औसत की गणना करती है। प्रत्येक K लाइन के गठन के बाद, वर्तमान 7 वें और 14 वें लाइन के आकार के संबंध की तुलना करें। यदि 7 वें लाइन पर 14 वें लाइन को पार किया जाता है, तो एक अधिक संकेत जारी किया जाता है और लंबी स्थिति में प्रवेश किया जाता है; यदि 7 वें लाइन के नीचे 14 वें लाइन को पार किया जाता है, तो एक खाली संकेत जारी किया जाता है और एक छोटी स्थिति में प्रवेश किया जाता है।

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

रणनीतिक लाभ

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

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

जोखिम और उपाय

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

  1. जब प्रवृत्ति में बदलाव होता है, तो समानांतर क्रॉस सिग्नल में देरी होती है, जिससे प्रवृत्ति में बदलाव के लिए समय पर प्रतिक्रिया नहीं मिल पाती है, जिससे अधिक नुकसान हो सकता है;
  2. गंभीर क्षैतिज बाजारों में, औसत रेखा क्रॉस सिग्नल अक्सर होते हैं, जो अधिक झूठे सिग्नल पैदा करते हैं और रणनीति के प्रभाव को प्रभावित करते हैं।

उपरोक्त जोखिमों से निपटने के लिए, निम्नलिखित उपायों पर विचार किया जा सकता हैः

  1. अन्य संकेतकों जैसे कि MACD, KDJ, आदि के साथ संयोजन में फ़िल्टर्ड समानांतर रेखा पार सिग्नल, प्रवृत्ति मोड़ बिंदु पर गलत सिग्नल से बचने के लिए;
  2. एकल घाटे के प्रभाव को कम करने के लिए स्टॉप लॉस की सीमा बढ़ाएं और अपनी स्थिति को कम करें;
  3. विभिन्न बाजार स्थितियों के अनुसार औसत रेखा मापदंडों का अनुकूलन करें, पारदर्शी बाजार में औसत रेखा चक्र को उचित रूप से बढ़ाएं, क्रॉस सिग्नल की आवृत्ति को कम करें।

अनुकूलन दिशा

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

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

संक्षेप

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

रणनीति स्रोत कोड
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © bensonsuntw

strategy("Strategy Template[Benson]", pyramiding=1, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

backtest_year = input(2019, type=input.integer, title='backtest_year')
backtest_month = input(01, type=input.integer, title='backtest_month', minval=1, maxval=12)
backtest_day = input(01, type=input.integer, title='backtest_day', minval=1, maxval=31)
start_time = timestamp(backtest_year, backtest_month, backtest_day, 00, 00)
stop_loss_and_tp = input(title="Enable Stop Loss and Take Profit", type=input.bool, defval=true)
trail_stop = input(title="Enable Trail Stop", type=input.bool, defval=true)
buy_stop_loss = input(0.2, type=input.float, title='buy_stop_loss')
sell_stop_loss = input(0.1, type=input.float, title='sell_stop_loss')
buy_tp = input(0.4, type=input.float, title='buy_tp')
sell_tp =input(0.2, type=input.float, title='sell_tp')
trail_stop_long = input(1.1, type=input.float, title='trail_stop_long')
trail_stop_short = input(0.9, type=input.float, title='trail_stop_short')
trail_stop_long_offset = input(0.05, type=input.float, title='trail_stop_long_offset')
trail_stop_short_offset = input(0.05, type=input.float, title='trail_stop_short_offset')


// you can set your own logic here
shortCondition = crossunder(sma(close,7),sma(close,14))
longCondition = crossover(sma(close,7),sma(close,14))

strategy.entry("Buy", strategy.long, when=longCondition  )
strategy.close("Buy", when=shortCondition)
strategy.exit("Close Buy","Buy", limit= stop_loss_and_tp?strategy.position_avg_price * (1+buy_tp):na, stop = stop_loss_and_tp?strategy.position_avg_price * (1-buy_stop_loss):na,trail_price=trail_stop?strategy.position_avg_price *trail_stop_long:na,trail_offset=trail_stop?-strategy.position_avg_price *trail_stop_long_offset:na)

strategy.entry("Sell", strategy.short, when=shortCondition)
strategy.close("Sell", when=longCondition)
strategy.exit("Close Sell","Sell", limit= stop_loss_and_tp?strategy.position_avg_price * (1-sell_tp):na, stop = stop_loss_and_tp?strategy.position_avg_price * (1+sell_stop_loss):na,trail_price=trail_stop?strategy.position_avg_price *trail_stop_short:na,trail_offset=trail_stop?strategy.position_avg_price *trail_stop_short_offset:na)


net_profit = strategy.netprofit + strategy.openprofit

plot(net_profit, title="Net Profit", linewidth=2, style=plot.style_area, transp=50, color=net_profit >= 0 ? #26A69A : color.red)