यह रणनीति पारंपरिक चलती औसत क्रॉसओवर रणनीति को अनुकूलित करती है, जिसमें विभिन्न अवधियों के साथ तीन चलती औसत सेट किए जाते हैं, 9 अवधि, 50 अवधि और 100 अवधि के चलती औसत के साथ एक स्वर्ण क्रॉस पैटर्न का निर्माण किया जाता है। यह खरीद संकेत उत्पन्न करता है जब अल्पकालिक एमए मध्यम अवधि के एमए से ऊपर पार हो जाता है जबकि दीर्घकालिक एमए अपट्रेंड में होता है। रणनीति का नाम
रणनीति में 9, 50 और 100 की अवधि के साथ तीन चलती औसत का उपयोग किया जाता है। 9-पीरियड एमए अल्पकालिक एमए है, 50-पीरियड एमए मध्यमकालिक एमए है, और 100-पीरियड एमए दीर्घकालिक एमए है। ट्रेडिंग सिग्नल अल्पकालिक एमए और मध्यमकालिक एमए के बीच क्रॉसओवर द्वारा उत्पन्न होते हैं। विशेष रूप से, जब दीर्घकालिक एमए अपट्रेंड (मध्यमकालिक एमए से ऊपर) में होता है, तो एक खरीद संकेत तब ट्रिगर किया जाता है जब अल्पकालिक एमए मध्यमकालिक एमए से ऊपर पार हो जाता है। एक बिक्री संकेत तब ट्रिगर किया जाता है जब अल्पकालिक एमए मध्यमकालिक एमए से नीचे पार हो जाता है।
पारंपरिक दोहरी चलती औसत क्रॉसओवर रणनीति की तुलना में, यह रणनीति व्यापार संकेत उत्पन्न करने से पहले मध्यम और दीर्घकालिक रुझानों का न्याय करने की शर्त जोड़ती है, जो प्रभावी रूप से कुछ अमान्य संकेतों को फ़िल्टर कर सकती है। जब दीर्घकालिक रुझान अस्पष्ट होते हैं, तो रणनीति संकेत उत्पन्न नहीं करेगी, समेकन में फंसने से बचती है। साथ ही, यह रणनीति आक्रामक प्रवेश की संभावना को कम करते हुए, अल्पकालिक और मध्यम अवधि में रुझान आंदोलनों को पकड़ने के लिए उपयुक्त है।
इस रणनीति के लिए पैरामीटर निर्धारित करते समय, चलती औसत अवधि के संयोजन को समायोजित करने की आवश्यकता होती है। विभिन्न अवधि संयोजनों का रणनीति की प्रभावशीलता पर प्रभाव पड़ेगा। यदि अवधि पैरामीटर ठीक से सेट नहीं किए जाते हैं, तो बहुत सारे झूठे संकेत उत्पन्न होने का जोखिम होता है। इसके अलावा, व्यापारियों को संभावित प्रणालीगत जोखिमों के बारे में पता होना चाहिए और जोखिमों को कम करने के लिए समय पर नुकसान को रोकना चाहिए।
बाजार के रुझानों का आकलन करने में सहायता करने के लिए अन्य संकेतकों जैसे एमएसीडी, बीओएलएल आदि को शामिल करने पर विचार करें और अधिक सख्त प्रवेश शर्तें निर्धारित करें, या अनुकूलनशील चलती औसत बनाने के लिए अस्थिरता संकेतकों को शामिल करें ताकि रणनीति को और अनुकूलित करने के लिए बाजार की स्थितियों के आधार पर पैरामीटर स्वचालित रूप से समायोजित हो सकें।
पारंपरिक दोहरी चलती औसत क्रॉसओवर के आधार पर, यह रणनीति दीर्घकालिक एमए निर्णय और फ़िल्टर स्थितियों को जोड़ती है, जो प्रभावी रूप से झूठे संकेतों को फ़िल्टर कर सकती है और अल्पकालिक से मध्यम अवधि के रुझान आंदोलनों को पकड़ने के लिए उपयुक्त है। यह एक सरल और व्यावहारिक प्रवृत्ति-अनुसरण रणनीति है। हालांकि, व्यापारियों को अभी भी पैरामीटर अनुकूलन और प्रणालीगत जोखिमों पर ध्यान देने और वैज्ञानिक जोखिम प्रबंधन रणनीतियों को तैयार करने की आवश्यकता है।
/*backtest start: 2022-12-12 00:00:00 end: 2023-12-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Golden Cross, SMA 100, Moving Average Strategy (by Coinrule)", shorttitle="Golden_Cross_Strat_MA100_optimized", overlay=true, initial_capital = 1000,process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100) // Input switch1=input(true, title="Enable Bar Color?") switch2=input(false, title="Show Fast Moving Average") switch3=input(true, title="Show Slow Moving Average") //Calculate Moving Averages movingaverage_fast = sma(close, input(9)) movingaverage_slow = sma(close, input(100)) movingaverage_normal= sma(close, input(50)) //Backtest dates fromMonth = input(defval = 1, title = "From Month", type = input.integer, minval = 1, maxval = 12) fromDay = input(defval = 1, title = "From Day", type = input.integer, minval = 1, maxval = 31) fromYear = input(defval = 2020, title = "From Year", type = input.integer, minval = 1970) thruMonth = input(defval = 1, title = "Thru Month", type = input.integer, minval = 1, maxval = 12) thruDay = input(defval = 1, title = "Thru Day", type = input.integer, minval = 1, maxval = 31) thruYear = input(defval = 2112, title = "Thru Year", type = input.integer, minval = 1970) showDate = input(defval = true, title = "Show Date Range", type = input.bool) start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window window() => time >= start and time <= finish ? true : false // create function "within window of time" // Calculation bullish_cross = crossover(movingaverage_fast, movingaverage_normal) bearish_cross = crossunder(movingaverage_fast, movingaverage_normal) //Entry and Exit if bullish_cross and window() and movingaverage_slow > movingaverage_normal strategy.entry("long", strategy.long) strategy.close("long", when = bearish_cross and window()) // Colors bartrendcolor = close > movingaverage_fast and close > movingaverage_slow and change(movingaverage_slow) > 0 ? color.green : close < movingaverage_fast and close < movingaverage_slow and change(movingaverage_slow) < 0 ? color.red : color.blue barcolor(switch1?bartrendcolor:na) // Output plot(movingaverage_fast, color=color.orange, linewidth=2) plot(movingaverage_slow, color=color.purple, linewidth=3) plot(movingaverage_normal, color=color.blue, linewidth=2) bgcolor(color = showDate and window() ? color.gray : na, transp = 90)