Strategi perdagangan hari breakout London dirancang untuk perdagangan intraday forex, memanfaatkan aksi harga sesi London dengan logika breakout sederhana.
Perdagangan hanya selama jam sesi London pada hari kerja, misalnya 0400-0500 GMT.
Tentukan tren jangka pendek: pergi panjang pada 3 lilin naik berturut-turut, pergi pendek pada 3 lilin turun berturut-turut.
Sinyal panjang: masukkan panjang ketika melihat 3 lilin berturut-turut.
Sinyal pendek: masukkan singkat ketika melihat 3 lilin di bawah berturut-turut.
Stop loss/take profit: mengatur stop loss dan take profit pada persentase tertentu dari harga masuk.
Aturan keluar: keluar pada stop loss/take profit trigger, atau pada akhir sesi London.
Strategi ini murni menggunakan sinyal breakout sederhana untuk menangkap tren jangka pendek, dengan manajemen risiko yang ketat untuk mengontrol risiko / imbalan per perdagangan.
Perdagangan hanya selama jam London yang sangat aktif
Logika price breakout sederhana untuk sinyal
Risiko kontrol stop loss/take profit yang ketat
Menghindari sesi malam dan liburan dengan likuiditas rendah
Aturan masuk dan keluar yang jelas
Potensi masalah awal atau penundaan masuk
Risiko terjebak
Peluang dapat muncul pada malam hari/hari libur
Tingkat pendukung/resistensi utama perlu diperhatikan
Strategi perdagangan hari breakout London sangat cocok untuk perdagangan intraday jangka pendek, menghindari periode kacau dan keluar dengan keuntungan selama likuiditas tinggi. Dengan penyesuaian parameter dapat beradaptasi dengan lebih banyak aset untuk perdagangan jangka pendek yang efektif.
/*backtest start: 2023-09-07 00:00:00 end: 2023-09-08 09:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("time zone", overlay=true, initial_capital=1000) fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) fromYear = input(defval = 2000, title = "From Year", minval = 1970) //monday and session // To Date Inputs toDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31) toMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) toYear = input(defval = 2020, title = "To Year", minval = 1970) startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00) finishDate = timestamp(toYear, toMonth, toDay, 00, 00) time_cond = true s = input(title="Session", type=input.session, defval="0400-0500") s2 = input(title="eXOT", type=input.session, defval="0300-0900") t1 = time(timeframe.period, s) t2 = time(timeframe.period, s2) c2 = #0000FF //bgcolor(t1 ? c2 : na, transp=85) UseHAcandles = input(false, title="Use Heikin Ashi Candles in Algo Calculations") // // === /INPUTS === // === BASE FUNCTIONS === haClose = UseHAcandles ? security(heikinashi(syminfo.tickerid), timeframe.period, close) : close haOpen = UseHAcandles ? security(heikinashi(syminfo.tickerid), timeframe.period, open) : open haHigh = UseHAcandles ? security(heikinashi(syminfo.tickerid), timeframe.period, high) : high haLow = UseHAcandles ? security(heikinashi(syminfo.tickerid), timeframe.period, low) : low isMon() => dayofweek(time('D')) == dayofweek.monday isTue() => dayofweek(time('D')) == dayofweek.tuesday isWed() => dayofweek(time('D')) == dayofweek.wednesday isThu() => dayofweek(time('D')) == dayofweek.thursday isFri() => dayofweek(time('D')) == dayofweek.friday isSat() => dayofweek(time('D')) == dayofweek.saturday isSun() => dayofweek(time('D')) == dayofweek.sunday longe = input(true, title="LONG only") shorte = input(true, title="SHORT only") //sl=input(0.001, title="sl % price movement") //accbalance = strategy.initial_capital + strategy.netprofit entry = close sl = input(0.005, title = "Stop Loss") tp = input(0.005, title="Target Price") // sldist = entry - sl // tgdist = tp - entry // slper = sldist / entry * 100 // tgper = tgdist / entry * 100 // rr = tgper / slper // size = accbalance * riskper / slper balance = strategy.netprofit + 50000 //current balance floating = strategy.openprofit //floating profit/loss risk = input(1,type=input.float,title="Risk % of equity ") //risk % per trade temp01 = (balance * risk)/100 //Risk in USD temp02 = temp01/close*sl //Risk in lots temp03 = temp02*100000 //Convert to contracts size = temp03 - temp03%1000 //Normalize to 1000s (Trade size) if(size < 1000) size := 1000 //Set min. lot size longC = haClose> haClose[1] and haClose[1] > haClose[2] and haClose[2] < haClose[3] shortC = haClose < haClose[1] and haClose[1] < haClose[2] and haClose[2] > haClose[3] luni = input(true, title="Monday") marti = input(true, title="Tuesday") miercuri = input(true, title="Wednesday") joi = input(true, title="Thursday") vineri = input(true, title="Friday") if(time_cond) if(t1) if(luni==true and dayofweek == dayofweek.monday) if(longC and longe ) strategy.entry("long",1) if(shortC and shorte) strategy.entry("short",0) if(marti==true and dayofweek == dayofweek.tuesday) if(longC and longe ) strategy.entry("long",1) if(shortC and shorte) strategy.entry("short",0) if(miercuri==true and dayofweek == dayofweek.wednesday) if(longC and longe ) strategy.entry("long",1) if(shortC and shorte) strategy.entry("short",0) if(joi==true and dayofweek == dayofweek.thursday) if(longC and longe) strategy.entry("long",1) if(shortC and shorte) strategy.entry("short",0) if(vineri==true and dayofweek == dayofweek.friday) if(longC and longe) strategy.entry("long",1 ) if(shortC and shorte) strategy.entry("short",0) //strategy.exit("closelong", "RSI_BB_LONG" , profit = close * 0.01 / syminfo.mintick, loss = close * 0.01 / syminfo.mintick, alert_message = "closelong") //strategy.exit("closeshort", "RSI_BB_SHORT" , profit = close * 0.01 / syminfo.mintick, loss = close * 0.01 / syminfo.mintick, alert_message = "closeshort") strategy.exit("sl","long", loss = close * sl / syminfo.mintick, profit = close * tp / syminfo.mintick) strategy.exit("sl","short", loss=close * sl / syminfo.mintick, profit = close * tp / syminfo.mintick) //strategy.close("long") //strategy.close("short" ) //strategy.exit("sl","long", loss = sl) //strategy.exit("sl","short", loss= sl) if(not t2) strategy.close_all() //strategy.risk.max_intraday_filled_orders(2)