चलती औसत चैनल ब्रेकआउट ट्रेडिंग रणनीति

लेखक:चाओझांग, दिनांकः 2024-01-29 14:31:25
टैगः

img

अवलोकन

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

रणनीति तर्क

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

विशेष रूप से, यह रणनीति एसएमए संकेतक का उपयोग करके 7-दिवसीय और 14-दिवसीय सरल चलती औसत की गणना करती है। प्रत्येक मोमबत्ती के गठन के बाद, यह 7-दिवसीय रेखा और 14-दिवसीय रेखा के वर्तमान मूल्यों की तुलना करता है। यदि 7-दिवसीय रेखा 14-दिवसीय रेखा के ऊपर पार करती है, तो एक लंबा संकेत लंबा होने के लिए उत्पन्न होता है। यदि 7-दिवसीय रेखा 14-दिवसीय रेखा के नीचे पार करती है, तो एक छोटा संकेत छोटा होने के लिए उत्पन्न होता है।

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

लाभ

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

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

जोखिम और प्रति उपाय

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

  1. चलती औसत प्रवृत्ति परिवर्तनों को प्रतिबिंबित करने में देरी कर सकती है, जो संभावित रूप से प्रवृत्तियों के उलट होने पर बड़े नुकसान का कारण बन सकती है।
  2. विभिन्न बाजारों के दौरान लगातार क्रॉसओवर सिग्नल आने से अधिक झूठे सिग्नल उत्पन्न होते हैं, जिससे रणनीति की प्रभावशीलता कम होती है।

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

  1. क्रॉसओवर संकेतों को फ़िल्टर करने और रुझान मोड़ बिंदुओं पर गलत संकेतों से बचने के लिए एमएसीडी और केडीजे जैसे अन्य संकेतकों को जोड़ें।
  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)






अधिक