
Strategi ini menggabungkan indikator dua arah dan indikator rata-rata bergerak, menggunakan indikator dua arah untuk menilai arah tren pasar, dan menggunakan rata-rata bergerak untuk mengkonfirmasi tren, termasuk strategi pelacakan tren.
Perhitungan harga penutupan kemarin dengan rata-rata SMA tertinggi dalam periode yang ditentukan, dan rel bawah dengan rata-rata SMA penutupan kemarin dengan harga terendah dalam periode yang ditentukan.
Bandingkan harga penutupan saat ini dengan hubungan atas dan bawah, menilai arah tren saat ini. Harga penutupan lebih tinggi dari atas, dinilai sebagai multihead; harga penutupan lebih rendah dari bawah, dinilai sebagai kosong.
Perhitungan rata-rata SMA untuk periode 200 sebagai kriteria untuk menentukan tren garis tengah dan panjang.
Bila dinilai sebagai overhead, jika harga close out menembus SMA dari arah bawah, menghasilkan sinyal beli; bila dinilai sebagai open out, jika harga close out menembus SMA dari arah atas, menghasilkan sinyal jual.
Setelah masuk ke posisi multihead, jika harga tutup di bawah terbalik, sebagai sinyal posisi kosong; setelah masuk ke posisi kosong, jika harga tutup di atas terbalik, sebagai sinyal posisi kosong.
Stop loss yang ditetapkan dalam proporsi tetap, jika titik stop loss di bawah harga penutupan, stop loss akan diaktifkan.
Menggunakan indikator dua arah untuk menilai arah tren, dapat secara efektif mengidentifikasi tren, meningkatkan probabilitas untuk masuk ke arah yang benar.
Penambahan garis rata dapat memfilter beberapa sinyal kebisingan untuk menghindari kesalahan perdagangan dalam situasi getaran.
Stop loss digunakan untuk mengontrol risiko kerugian tunggal dan dapat secara efektif mencegah kerugian yang berlebihan.
Operasi strategi relatif sederhana, mudah dipahami, dan cocok untuk pemula.
Indikator dua-sistem lebih sensitif terhadap pengaturan parameter, kombinasi parameter periode yang berbeda, dapat menyebabkan perbedaan hasil yang lebih besar, perlu hati-hati menguji parameter optimasi.
Setelan rata-rata terlalu panjang, akan memfilter lebih banyak peluang perdagangan; rata-rata terlalu pendek, akan memiliki efek yang buruk pada penghapusan kebisingan. Harus mempertimbangkan pengaturan parameter siklus rata-rata.
Stop loss set terlalu lebar, tidak dapat melakukan kontrol risiko yang baik; terlalu sempit mudah untuk ditarik keluar oleh fluktuasi harga rutin. Perlu hati-hati untuk mengatur jangkauan stop loss.
Strategi lebih bergantung pada optimasi parameter, dan jika parameter tidak disetel dengan benar, mungkin tidak dapat mengenali arah tren dengan benar, yang menyebabkan kesalahan keputusan perdagangan.
Kombinasi dari parameter periode yang berbeda dapat diuji untuk mencari parameter yang membuat indikator biner lebih akurat dalam menilai tren.
Hal ini memungkinkan untuk menguji indikator rata-rata untuk periode yang berbeda untuk menemukan parameter rata-rata optimal yang menyeimbangkan efek penghapusan kebisingan dan mempertahankan sinyal.
Anda dapat mencoba merancang mekanisme stop loss yang dapat disesuaikan dengan tingkat fluktuasi pasar, sehingga stop loss lebih dekat dengan situasi pasar.
Anda juga dapat mencoba untuk menambahkan indikator lain untuk membantu, seperti konfirmasi kuantitas, multi-framework penetrasi, dan lain-lain, untuk meningkatkan stabilitas strategi.
Strategi yang telah dioptimalkan dapat diverifikasi dengan analisa walk forward untuk memastikan parameter tetap stabil.
Strategi ini mengintegrasikan keuntungan dari indikator ganda dan moving averages, dan merupakan strategi pelacakan tren dengan ruang untuk mengoptimalkan parameter. Dengan pengaturan dan pengoptimalan parameter yang masuk akal, kinerja strategi yang lebih baik dapat diperoleh. Namun, perlu diperhatikan untuk mengendalikan risiko pengoptimalan parameter yang berlebihan dan memastikan stabilitas parameter. Secara keseluruhan, strategi ini cocok untuk digunakan sebagai kasus eksplorasi dan pembelajaran strategi.
/*backtest
start: 2022-10-30 00:00:00
end: 2023-11-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
//@Isaac
//Estrategia vista en ▼▼
//YT: Trading Zone
strategy('SSL Strategy + EMA 200 AND Stop Loss', overlay=true)
ema = ta.ema(close, 200)
stop_loss = input.float(2.00, title='Stop Loss', step=0.10)
period = input(title='Period', defval=10)
len = input(title='Period', defval=10)
smaHigh = ta.sma(high, len)
smaLow = ta.sma(low, len)
Hlv = int(na)
Hlv := close > smaHigh ? 1 : close < smaLow ? -1 : Hlv[1]
sslDown = Hlv < 0 ? smaHigh : smaLow
sslUp = Hlv < 0 ? smaLow : smaHigh
cruceArriba = ta.crossover(sslUp, sslDown)
cruceAbajo = ta.crossunder(sslUp, sslDown)
alcista = (close > ema ) and (cruceArriba)
bajista = (close < ema) and (cruceAbajo)
var SL = 0.0
//Cerrar compra por cruce
por_cruce = ta.crossunder(sslUp, sslDown)
//Cerrar venta por cruce
por_cruceAB = ta.crossunder(sslDown, sslUp)
//Cerrar compra y venta por stop loss
Stop = SL
comprado = strategy.position_size > 0
vendido = strategy.position_size < 0
UTmpconvertL = strategy.position_avg_price * (1 + 0.1)
UTmpdefineL = (UTmpconvertL > close and strategy.openprofit > 0.1)
UTSPL = UTmpdefineL
SPL = UTSPL
///////////////////////////////////////////////////////////////////////
UTmpconvertLS = strategy.position_avg_price * (1 + 0.1)
UTmpdefineLS = (UTmpconvertLS > close and strategy.openprofit > 0.1)
UTSPLS = UTmpdefineLS
SPLS = UTSPLS
////////////////////////////////////////////////////////////////////////
if not comprado and not vendido and alcista
cantidad = (strategy.equity / close)
strategy.entry('Compra', strategy.long, qty=cantidad, comment="Long")
SL := sslDown
if comprado and not vendido and por_cruce and SPL
strategy.close("Compra", comment="Exit Long")
SL := 0
if comprado and not vendido and Stop
strategy.exit('Compra', stop=Stop, comment="SL")
SL := 0
///////////////////////////////////////////////////////////////////
if not comprado and not vendido and bajista
cantidad = (strategy.equity / close)
strategy.entry('Venta', strategy.short, qty=cantidad, comment="Short")
SL := sslDown
if not comprado and vendido and por_cruceAB and SPLS
strategy.close("Venta", comment="Exit Short")
SL := 0
if not comprado and vendido and Stop
strategy.exit('Venta', stop=Stop, comment="SLS")
SL := 0
plot(Stop > 0 ? Stop : na, style=plot.style_circles, color=color.new(color.yellow,0))
plot(ema)
plot(sslDown, linewidth=2, color=color.new(color.red, 0))
plot(sslUp, linewidth=2, color=color.new(color.lime, 0))