संसाधन लोड हो रहा है... लोड करना...

हान युई - एकाधिक ईएमए, एटीआर और आरएसआई पर आधारित ट्रेडिंग रणनीति के बाद की प्रवृत्ति

लेखक:चाओझांग, दिनांकः 2024-05-14 16:37:52
टैगःईएमएएटीआरआरएसआई

img

अवलोकन

यह रणनीति बाजार की प्रवृत्ति को निर्धारित करने के लिए विभिन्न अवधियों के साथ तीन घातीय चलती औसत (ईएमए) का उपयोग करती है, और प्रवेश बिंदुओं, स्टॉप-लॉस और ले-प्रॉफिट स्तरों की पहचान करने के लिए रिलेटिव स्ट्रेंथ इंडेक्स (आरएसआई) और औसत ट्रू रेंज (एटीआर) को जोड़ती है। जब कीमत तीन ईएमए द्वारा गठित चैनल को तोड़ती है और आरएसआई भी अपने चलती औसत को तोड़ता है, तो रणनीति एक प्रवेश संकेत को ट्रिगर करती है। एटीआर का उपयोग स्थिति आकार को नियंत्रित करने और स्टॉप-लॉस स्तर निर्धारित करने के लिए किया जाता है, जबकि जोखिम-लाभ अनुपात (आरआर) का उपयोग ले-प्रॉफिट स्तरों को निर्धारित करने के लिए किया जाता है। इस रणनीति का मुख्य लाभ इसकी सादगी और प्रभावशीलता में निहित है, क्योंकि यह सख्त जोखिम प्रबंधन उपायों के माध्यम से बाजार के रुझानों का पालन कर सकता है और संभावित नुकसान को सीमित कर सकता है।

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

  1. समग्र बाजार प्रवृत्ति निर्धारित करने के लिए विभिन्न अवधियों (अल्पकालिक, मध्यमकालिक और दीर्घकालिक) के साथ तीन ईएमए की गणना करें।
  2. रुझान की मजबूती और स्थिरता की पुष्टि करने के लिए आरएसआई सूचक का प्रयोग करें। जब आरएसआई अपने चलती औसत को तोड़ता है, तो यह रुझान में बदलाव का संकेत देता है।
  3. मूल्य और ईएमए चैनल के बीच संबंध के आधार पर प्रवेश संकेत उत्पन्न करें, साथ ही आरएसआई संकेतः प्रवृत्ति की दिशा में एक स्थिति खोलें जब मूल्य ईएमए चैनल के माध्यम से टूटता है और आरएसआई भी अपने चलती औसत के माध्यम से टूटता है।
  4. प्रत्येक व्यापार के जोखिम जोखिम को नियंत्रित करते हुए, स्थिति आकार और स्टॉप-लॉस स्तर निर्धारित करने के लिए एटीआर का उपयोग करें।
  5. रणनीति की लाभप्रदता सुनिश्चित करने के लिए पूर्वनिर्धारित जोखिम-लाभ अनुपात (जैसे, 1.5:1) के आधार पर लाभ लेने के स्तर निर्धारित करें।

लाभ विश्लेषण

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

जोखिम विश्लेषण

  1. पैरामीटर अनुकूलन: रणनीति का प्रदर्शन काफी हद तक मापदंडों की पसंद पर निर्भर करता है, और अनुचित पैरामीटर सेटिंग्स से रणनीति विफलता या खराब प्रदर्शन हो सकता है।
  2. बाजार जोखिमः रणनीति अप्रत्याशित घटनाओं या चरम बाजार स्थितियों में, विशेष रूप से रुझान उलट या अस्थिर बाजारों के दौरान महत्वपूर्ण नुकसान का सामना कर सकती है।
  3. ओवरफिटिंगः यदि पैरामीटर अनुकूलन प्रक्रिया के दौरान रणनीति को ऐतिहासिक डेटा के लिए ओवरफिट किया जाता है, तो यह वास्तविक व्यापार में खराब प्रदर्शन का कारण बन सकता है।

अनुकूलन दिशाएँ

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

सारांश

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


/*backtest
start: 2024-04-01 00:00:00
end: 2024-04-30 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © hatnxkld

//@version=4
strategy("Win ha", overlay=true)

ss2 = input("0300-1700", title = "Khung thời gian")

t2 = time(timeframe.period,ss2)
c2 = #cacae6

bgcolor(t2 ? c2 : na, transp = 70)


//3ema
emangan=input(title="Ema ngắn", defval = 12)
ngan=ema(close, emangan)
a= plot(ngan, title="EMA ngắn", color=color.yellow)
ematb=input(title="Ema trung bình", defval = 100)
tb=ema(close, ematb)
b= plot(tb, title="EMA trung bình", color=color.blue)
//emadai=input(title="Ema dai", defval = 288)
//dai=ema(close,emadai)
//c= plot(dai, title="EMA dai", color=color.red)




// nhập hệ số nhân ATR
i=input(title="Hệ số nhân với ATR", defval=1.25)

// RSI
rsi=rsi(close, emangan)
marsi=sma(rsi, emangan)

// Kênh keltler
//heso=input(defval=1, title="Hệ số Kênh Keltler")
//atr=atr(emangan)
//tren=ngan+atr*heso
//d=plot(tren, title="Kênh trên", color=color.white)
//duoi=ngan-atr*heso
//e=plot(duoi, title="Kênh dưới", color=color.white)
//fill(d,e, color=color.rgb(48, 58, 53))

ban = ( close[1]>open[1] and (high[1]-close[1])>(close[1]-low[1]) and open>close and close<low[1]   ) 


//or (    open[1] > close[1] and (high[1]-open[1])>(open[1]-low[1]) and (open[1]-close[1])>(close[1]-low[1]) and open>close and close <low[1]     )   )  //and time(timeframe.period,"2200-1300")
//and (close[1]-open[1])>(open[1]-low[1]) 
//high > ngan and close < ngan and ngan<tb and 
// and time(timeframe.period,"1000-2300")
bgcolor(color = ban ? color.rgb(235, 106, 123) : na)
//bgcolor(color.rgb(82, 255, 154),transp = 100, offset = 1, show_last = 2)
//and time(timeframe.period,"2300-1500") and ((open>ngan and close<ngan) or (open>tren and close<tren))
plotshape(ban , style=shape.arrowdown, location=location.abovebar, color=#ff00ff, size=size.tiny, textcolor=color.rgb(255, 59, 213))
alertcondition(ban, "Ban", "Ban")

mua=  (  open[1]>close[1] and (close[1]-low[1])>(high[1]-close[1]) and close > open and close > high[1]  )  //and time(timeframe.period,"2200-1300")


//or  (  close[1]>open[1] and (open[1]-low[1]) > (high[1]-open[1]) and (close[1]-open[1])>(high[1]-close[1]) and close>open and close>high[1]      ) )
//and (open[1]-close[1])>(high[1]-open[1])
//low < ngan and close > ngan and ngan>tb and
//or  (  close[1]>open[1] and (open[1]-low[1]) > (high[1]-open[1]) and (close[1]-open[1])>(high[1]-close[1]) and close>open and close>high[1]      )

// and time(timeframe.period,"1000-2300")
bgcolor(color= mua? color.rgb(108, 231, 139):na)
//and time(timeframe.period,"2300-1500") and ((open<ngan and close>ngan)or (open<duoi and close>duoi) )
plotshape(mua , style=shape.arrowup, location=location.belowbar, color=#00ff6a, size=size.tiny, textcolor=color.rgb(83, 253, 60))
alertcondition(mua , "Mua", "Mua")


//len1 = ban==true and (high-low)>2*atr
//plotshape(len1 , style=shape.flag, location=location.abovebar, color=#ff00ff, size=size.tiny, title="Sell Signal", text="Xuong 1", textcolor=color.rgb(255, 59, 213))

//bann= ban==true and rsi < marsi and marsi[2]>marsi[1]
//plotshape(bann , style=shape.labeldown, location=location.abovebar, color=#ff00ff, size=size.tiny, title="Sell Signal", text="BAN 2", textcolor=color.rgb(240, 234, 239))

//bannn = mua==true and rsi>marsi and marsi[2]<marsi[1]
//plotshape(bannn , style=shape.labelup, location=location.belowbar, color=#00ff6a, size=size.tiny, title="Buy Signal", text="Mua 2", textcolor=color.rgb(237, 241, 236))

//a1= ban==true and (high - low)<atr 
//plotshape(a1 , style=shape.xcross, location=location.bottom, color=#00ff6a, size=size.tiny, title="Sell", text="<atr", textcolor=color.rgb(240, 95, 76))

//a2 = ban ==true and (high - low)>atr and (high - low)<(2*atr) 
//plotshape(a2 , style=shape.xcross, location=location.bottom, color=#00ff6a, size=size.tiny, title="Sell", text="<2atr", textcolor=color.rgb(237, 241, 236))

//a3= ban==true and (high - low)>(2*atr) 
//plotshape(a3 , style=shape.xcross, location=location.bottom, color=#00ff6a, size=size.tiny, title="Sell", text=">2atr", textcolor=color.rgb(234, 252, 74))


//b1= mua==true and (high - low)<atr 
//plotshape(b1 , style=shape.xcross, location=location.bottom, color=#00ff6a, size=size.tiny, title="Buy", text="<atr", textcolor=color.rgb(237, 241, 236))

//b2 = mua ==true and (high - low)>atr and (high - low)<(2*atr) 
//plotshape(b2 , style=shape.xcross, location=location.bottom, color=#00ff6a, size=size.tiny, title="Buy", text="<2atr", textcolor=color.rgb(237, 241, 236))

//b3= mua==true and (high - low)>(2*atr) 
//plotshape(b3 , style=shape.xcross, location=location.bottom, color=#00ff6a, size=size.tiny, title="Buy", text=">2atr", textcolor=color.rgb(237, 241, 236))

// Đặt SL TP ENTRY
risk= input(title="Rủi ro % per Trade", defval=0.5)
rr= input(title="RR", defval=1.5)
onlylong= input(defval=false)
onlyshort=input(defval=false)

stlong = mua and strategy.position_size<=0 ? low[1]:na
stoplong= fixnan(stlong)

stshort = ban and strategy.position_size>=0 ? high[1]:na
stopshort= fixnan(stshort)

enlong = mua and strategy.position_size<=0 ? close:na
entrylong =fixnan(enlong)

enshort = ban and strategy.position_size>=0 ? close:na
entryshort = fixnan(enshort)

amountL = risk/100* strategy.initial_capital / (entrylong - stoplong)
amountS = risk/100* strategy.initial_capital / (stopshort - entryshort)

TPlong= mua and strategy.position_size<=0? entrylong + (entrylong -stoplong)*rr:na
takeprofitlong =fixnan(TPlong)
TPshort = ban and strategy.position_size>=0? entryshort - (stopshort - entryshort)*rr:na 
takeprofitshort = fixnan(TPshort)

strategy.entry("Long", strategy.long , when = enlong and not onlyshort, qty= amountL )
strategy.exit("exitL", "Long", stop = stoplong, limit= takeprofitlong)

strategy.entry("Short", strategy.short , when = enshort and not onlylong, qty= amountS )
strategy.exit("exitS", "Short", stop = stopshort, limit= takeprofitshort)



संबंधित

अधिक