এই কৌশলটি বাজারের প্রবণতা নির্ধারণের জন্য বিভিন্ন সময়ের সাথে তিনটি এক্সপোনেন্সিয়াল মুভিং এভারেজ (ইএমএ) ব্যবহার করে এবং এন্ট্রি পয়েন্ট, স্টপ-লস এবং টেক-লাভের স্তরগুলি সনাক্ত করতে আপেক্ষিক শক্তি সূচক (আরএসআই) এবং গড় সত্য পরিসীমা (এটিআর) একত্রিত করে। যখন দাম তিনটি ইএমএ দ্বারা গঠিত চ্যানেলটি ভেঙে যায় এবং আরএসআইও তার চলমান গড়টি ভেঙে যায়, তখন কৌশলটি একটি এন্ট্রি সিগন্যাল ট্রিগার করে। এটিআর অবস্থান আকার নিয়ন্ত্রণ এবং স্টপ-লস স্তর সেট করতে ব্যবহৃত হয়, যখন ঝুঁকি-পুরষ্কার অনুপাত (আরআর) লাভের স্তর নির্ধারণ করতে ব্যবহৃত হয়। এই কৌশলটির মূল সুবিধাটি এর সরলতা এবং কার্যকারিতাতে রয়েছে, কারণ এটি কঠোর ঝুঁকি ব্যবস্থাপনা ব্যবস্থার মাধ্যমে বাজারের প্রবণতা অনুসরণ করতে পারে এবং সম্ভাব্য ক্ষতি সীমাবদ্ধ করতে পারে।
এই কৌশলটি ইএমএ, আরএসআই এবং এটিআর এর মতো একাধিক সাধারণ প্রযুক্তিগত সূচককে একত্রিত করে একটি সহজ এবং কার্যকর প্রবণতা অনুসরণকারী ট্রেডিং সিস্টেম তৈরি করে। এটি বাজারের প্রবণতা নির্ধারণের জন্য ইএমএ চ্যানেল, প্রবণতা শক্তি নিশ্চিত করার জন্য আরএসআই এবং ঝুঁকি নিয়ন্ত্রণের জন্য এটিআর ব্যবহার করে। কৌশলটির সুবিধা হ'ল এর সরলতা এবং অভিযোজনযোগ্যতা, কারণ এটি বিভিন্ন বাজারের অবস্থার অধীনে প্রবণতা এবং বাণিজ্য অনুসরণ করতে পারে। তবে কৌশলটির কার্যকারিতা মূলত পরামিতিগুলির পছন্দের উপর নির্ভর করে এবং অনুপযুক্ত পরামিতি সেটিং কৌশল ব্যর্থতা বা খারাপ পারফরম্যান্সের দিকে পরিচালিত করতে পারে। তদতিরিক্ত, অপ্রত্যাশিত ঘটনা বা চরম বাজারের অবস্থার সময় কৌশলটি উল্লেখযোগ্য ঝুঁকির মুখোমুখি হতে পারে। কৌশলটি আরও অনুকূল করার জন্য, গতিশীল পরামিতি সমন্বয় প্রবর্তন, অন্যান্য সূচকগুলি একত্রিত করা, বাজারের আবেগ বিশ্লেষণ অন্তর্ভুক্ত করা এবং মাল্টি-টাইমফ্রেম ট্রেডিং পরিচালনা করা
/*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)