
Strategi perdagangan reversal biner adalah strategi perdagangan garis pendek yang menggabungkan indikator momentum dan indikator tren. Strategi ini pertama-tama menghasilkan sinyal perdagangan dengan menggunakan indikator reversal, dan kemudian dikombinasikan dengan indikator tren, sehingga menghasilkan sinyal perdagangan yang lebih andal. Strategi ini dirancang untuk menangkap reversal harga jangka pendek dan melakukan perdagangan dalam konteks tren garis pendek tengah.
Strategi ini terdiri dari dua substrategi:
Substrategi pertama adalah strategi 123 reversal. Ini memantau apakah harga telah mencapai titik tinggi atau tidak. Secara khusus, ini akan menghasilkan sinyal beli jika dua hari sebelumnya harga penutupan turun, dan penutupan hari itu lebih tinggi dari penutupan hari sebelumnya, dan garis lambat Stochastic lebih rendah dari 50. Ini akan menghasilkan sinyal jual jika dua hari sebelumnya harga penutupan naik, dan penutupan hari itu lebih rendah dari penutupan hari sebelumnya, dan garis cepat Stochastic lebih tinggi dari 50.
Substrategi kedua adalah ergodic random indicator ((EMDI)). Ini adalah indikator trendi yang mengidentifikasi arah tren garis tengah dan panjang. Ini menggabungkan pemikiran rata-rata bergerak dan MACD untuk menghasilkan sinyal beli dan jual dengan menggunakan indeks sekali lipat yang meluruskan rata-rata bergerak dan persilangan garis cepat dan lambat MACD.
Strategi ini menggabungkan sinyal dari dua substrategi. Strategi ini hanya akan membuka posisi jika kedua substrategi menghasilkan sinyal yang sama. Artinya, strategi ini hanya akan melakukan perdagangan jika ada dukungan tren garis tengah yang kuat di samping pembalikan pendek.
Strategi perdagangan reversal biner mencoba untuk menangkap peluang reversal harga jangka pendek pada garis tengah pendek melalui kombinasi indikator reversal dan tren. Ini dapat memfilter sinyal misinformasi secara efektif dan mengendalikan risiko perdagangan hingga batas tertentu. Namun, strategi ini juga memiliki beberapa masalah, seperti kemungkinan kehilangan peluang jangka pendek, sensitivitas parameter, dan risiko overfit.
/*backtest
start: 2023-10-09 00:00:00
end: 2023-10-16 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 28/07/2020
// This is combo strategies for get a cumulative signal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// This is one of the techniques described by William Blau in his book "Momentum,
// Direction and Divergence" (1995). If you like to learn more, we advise you to
// read this book. His book focuses on three key aspects of trading: momentum,
// direction and divergence. Blau, who was an electrical engineer before becoming
// a trader, thoroughly examines the relationship between price and momentum in
// step-by-step examples. From this grounding, he then looks at the deficiencies
// in other oscillators and introduces some innovative techniques, including a
// fresh twist on Stochastics. On directional issues, he analyzes the intricacies
// of ADX and offers a unique approach to help define trending and non-trending periods.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
EMDI(r,s,u,SmthLen) =>
pos = 0
xEMA = ema(close, r)
xEMA_S = close - xEMA
xEMA_U = ema(ema(xEMA_S, s), u)
xSignal = ema(xEMA_U, u)
pos := iff(xEMA_U > xSignal, 1,
iff(xEMA_U < xSignal, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Ergodic MDI", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
r = input(32, minval=1)
s = input(5, minval=1)
u = input(5, minval=1)
SmthLen = input(3, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posEMDI = EMDI(r,s,u,SmthLen)
pos = iff(posReversal123 == 1 and posEMDI == 1 , 1,
iff(posReversal123 == -1 and posEMDI == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1 , 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )