यह रणनीति मूल्य चैनल संकेतक और एमएसीडी संकेतक को ट्रैक करने और कई समय सीमाओं में ओवरबॉट और ओवरसोल्ड स्तरों की पहचान करने के लिए जोड़ती है, जिससे खरीद और बिक्री के निर्णय लिए जाते हैं। इस रणनीति में जोखिमों को प्रबंधित करने के लिए स्टॉप लॉस और लाभ लेने को भी शामिल किया गया है।
मूल्य चैनल संकेतक उच्चतम और निम्नतम कीमतों की ईएमए लाइनों के आधार पर एक मूल्य चैनल का निर्माण करता है जब कीमत चैनल से बाहर निकलती है तो रुझानों का निर्धारण करता है। एमएसीडी संकेतक तेजी और मंदी की गति का न्याय करता है। शून्य रेखा से ऊपर के मूल्य एक बैल बाजार का सुझाव देते हैं जबकि नीचे के मूल्य एक भालू बाजार का सुझाव देते हैं।
इस रणनीति के व्यापार संकेत निम्नलिखित पहलुओं से आते हैंः
जब MACD हिस्टोग्राम लाल हो जाता है तो लंबा दर्ज करें. जब MACD हिस्टोग्राम हरा हो जाता है तो छोटा दर्ज करें.
शॉर्ट में प्रवेश करें जब कीमत चैनल के नीचे की ओर बढ़े और एमएसीडी शून्य रेखा से नीचे हो।
जब कीमत चैनल के शीर्ष तक पहुँचती है और एमएसीडी शून्य रेखा से ऊपर होता है तो लॉन्ग दर्ज करें।
जब एमएसीडी शून्य रेखा के ऊपर पार करता है तो लंबा दर्ज करें. जब एमएसीडी शून्य रेखा के नीचे पार करता है तो छोटा दर्ज करें.
बाहर निकलना स्टॉप लॉस और लाभ लेने से शुरू होता है।
संकेतकों का संयोजन झूठे ब्रेकआउट को रोकता है।
समय-सीमाओं में संकेतकों का संयोजन ट्रेंड का विश्वसनीय पता लगाने को सुनिश्चित करता है।
स्टॉप लॉस और ले लाभ प्रभावी रूप से प्रति व्यापार हानि नियंत्रण शामिल करना।
सीमित अनुकूलन स्थान अत्यधिक अनुकूलन के लिए अग्रणी है।
मूल्य चैनल की कम सेटिंग बड़ी चाल को याद करती है।
तंग स्टॉप लॉस से बड़े नुकसान होते हैं।
समाधान:
अति अनुकूलन को रोकने के लिए आगे बढ़ो अनुकूलन को अपनाएं।
मूल्य चैनल के लिए अनुकूलन पैरामीटर सेट करें.
स्टॉप दूरी के गतिशील समायोजन के लिए अस्थिरता आधारित स्टॉप लॉस का परिचय दें।
एमएसीडी मापदंडों के संयोजन को अनुकूलित करें।
मूल्य चैनल मापदंडों की अनुकूलन गणना को अनुकूलित करना।
झूठे ब्रेकआउट को रोकने और दक्षता में सुधार के लिए अधिक फ़िल्टर जोड़ें।
यह रणनीति उचित पैरामीटर सेटअप और बड़े अनुकूलन स्थान द्वारा मूल्य चैनल और एमएसीडी की ताकत को जोड़ती है। यह प्रवृत्ति का पता लगाने और ओवरबॉट / ओवरसोल्ड पहचान में अच्छा प्रदर्शन करती है। स्टॉप लॉस / टेक प्रॉफिट तंत्र प्रति व्यापार हानि को नियंत्रित करता है। आगे बढ़ते हुए, पैरामीटर अनुकूलन, फ़िल्टर जोड़ने और स्टॉप लॉस तंत्र को अनुकूलित करके सुधार किए जा सकते हैं।
/*backtest start: 2022-12-01 00:00:00 end: 2023-12-07 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Sonic R + Barcolor MACD", overlay=true) HiLoLen = input(34, minval=2,title="High Low channel Length") pacL = ema(low,HiLoLen) pacH = ema(high,HiLoLen) // Plot the Price Action Channel (PAC) base on EMA high,low and close// L=plot(pacL, color=yellow, linewidth=1, title="High PAC EMA",transp=0) H=plot(pacH, color=yellow, linewidth=1, title="Low PAC EMA",transp=0) fastLength = input(12) slowlength = input(26) MACDLength = input(9) MACD = ema(close, fastLength) - ema(close, slowlength) aMACD = ema(MACD, MACDLength) delta = MACD - aMACD hisup= iff(delta>delta[1] and delta>0, 1, iff(delta<delta[1], -1, nz(hisup[1], 0))) hisdown = iff(delta<delta[1] and delta<0, 1, iff(delta>delta[1], -1, nz(hisdown[1], 0))) barcolor(hisup==1 and MACD>0 ? lime: hisdown==1 and MACD<0 ? red : blue ) //SR PeriodLookBack = input(34) xHighest = highest(PeriodLookBack) xLowest = lowest(PeriodLookBack) Trend= close>xHighest[1] ? 1: close< xLowest[1]?-1 : nz(Trend[1],0) // Strategy// conbuy= hisdown==1 or MACD<0 ? 1: hisup[5]==1 and MACD[5]>0 ?-1 : nz(conbuy[1],0) gobuy= conbuy==1 and close-open<2*(pacH-pacL) and high-close<(pacH-pacL)/2 and hisup==1 and MACD>0 and close-pacH<1.5*(pacH-pacL) and close>open and high-close<close-open and close>pacH consell= hisup==1 or MACD>0 ?1 : hisdown[5]==1 and MACD[5]<0 ?-1 : nz(consell[1],0) gosell= consell==1 and open-close<2*(pacH-pacL) and close-low<(pacH-pacL)/2 and hisdown==1 and MACD<0 and pacL-close<1.5*(pacH-pacL) and close<open and close-low<open-close and close<pacL if(gobuy) strategy.entry("Buy",strategy.long) if(gosell) strategy.entry("Sell",strategy.short) //if(Trend==-1 and close<pacL) // strategy.close("Buy") //if(Trend==1 and close>pacH) // strategy.close("Sell") ////////////// TP and SL// SL = input(defval=100.00, title="Stop Loss Point", type=float, step=1) rr= input(defval=0.1,title="Reward/Risk",type=float) useTPandSL = input(defval = false, title = "Use exit order strategy?") Stop = SL Take=SL*rr Q = 100 if(useTPandSL) strategy.exit("Out Long", "Buy", qty_percent=Q, profit= Take, loss=Stop) strategy.exit("Out Short", "Sell", qty_percent=Q, profit= Take, loss=Stop)