
यह रणनीति मूल्य चैनल और MACD सूचकांकों को जोड़ती है, जिससे कई समय-सीमाओं में प्रवृत्ति का पालन किया जा सकता है और ओवरबॉट के निर्णय को ओवरबॉट किया जा सकता है, जिससे खरीद और बिक्री के निर्णयों को तैयार किया जा सकता है। यह रणनीति जोखिम को प्रबंधित करने के लिए स्टॉप-लॉस स्टॉप के साथ संयुक्त है।
मूल्य चैनल सूचक उच्चतम और निम्नतम कीमतों के ईएमए के आधार पर मूल्य चैनल का निर्माण करता है, कीमतों के माध्यम से चैनल को तोड़कर प्रवृत्ति का आकलन करता है; एमएसीडी सूचक बहु-हवा की स्थिति का आकलन करता है, शून्य-अक्ष के ऊपर बहु-हेड बाजार है, नीचे एक खाली बाजार है।
इस रणनीति के लिए ट्रेडिंग सिग्नल निम्नलिखित में से कुछ से आते हैंः
एमएसीडी हिस्टोग्राम उलटा लाल Enter मल्टी हेड, उलटा हरा Enter खाली हेड
जब कीमत चैनल के निचले हिस्से के करीब है और MACD शून्य अक्ष के नीचे है तो Enter खोलें
जब कीमत चैनल के शीर्ष के करीब है और MACD शून्य-अक्ष के ऊपर है
एमएसीडी शून्य-अक्ष के माध्यम से प्रवेश करता है और शून्य-अक्ष के माध्यम से प्रवेश करता है
Exit सिग्नल स्टॉप लॉस स्टॉप सेटिंग से आता है.
बहु-सूचक संयोजन सत्यापन, झूठी सफलताओं से बचें
विभिन्न समय-सीमाओं के सूचकांक का संयोजन प्रवृत्ति की दिशा को अधिक विश्वसनीय बनाता है
एकल हानि को प्रभावी ढंग से नियंत्रित करने के लिए स्टॉप लॉस स्टॉप मैकेनिज्म
पैरामीटर अनुकूलन के लिए सीमित स्थान, अति-अनुकूलन के लिए आसान
मूल्य चैनल पैरामीटर को बहुत कम सेट करें, इससे अधिक हानि होगी
स्टॉप लॉस प्वाइंट को बहुत छोटा सेट करें और अधिक नुकसान उठाएं
समाधान:
वॉक फॉरवर्ड विधि का उपयोग करें ताकि अति-अनुकूलित पैरामीटर से बचा जा सके
मूल्य चैनल पैरामीटर को अनुकूलन पैरामीटर पर सेट करें
गतिशील रूप से स्टॉप दूरी को समायोजित करने के लिए अस्थिरता स्टॉप लॉस का परिचय
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)