Strategi Pembalikan Momentum Berdasarkan Beberapa Kerangka Waktu

Penulis:ChaoZhang, Tanggal: 2024-02-27 14:27:49
Tag:

img

Gambaran umum

Strategi ini mengidentifikasi peluang perdagangan dengan menghitung rasio candlestick body/wick dan menggabungkan indikator RSI untuk mendeteksi kondisi pasar overbought/oversold.

Logika Strategi

Logika inti dari strategi ini didasarkan pada hal berikut:

  1. Hitung persentase body/wick candlesticks: Dengan menghitung harga buka, tutup, tinggi dan rendah, dapatkan persentase yang diduduki oleh body lilin dan lilin.

  2. Menghitung persentase perubahan kekuatan lilin: Menghitung besarnya pergerakan harga internal dari setiap lilin untuk menentukan kekuatan lilin. Fluktuasi yang lebih besar berarti momentum yang lebih kuat dan karenanya menunjukkan lilin yang lebih kuat.

  3. Gabungkan dengan RSI untuk mengidentifikasi kondisi overbought/oversold: Tetapkan garis ambang overbought dan oversold untuk RSI. RSI di atas garis overbought menandakan keadaan overbought dan sebaliknya untuk oversold. Lilin yang kuat dalam keadaan tersebut memiliki probabilitas tinggi pembalikan.

  4. Tentukan sinyal pembalikan: Ketika persentase lilin < 20% dan kekuatan lilin > 2 x kekuatan rata-rata, bersama dengan penutupan lilin sebelumnya lebih tinggi dari penutupan lilin saat ini, itu menandakan kondisi pendek.

  5. Mendefinisikan stop loss dan take profit: Atur stop loss berbasis persentase tetap dan ambil tingkat profit secara terpisah untuk perdagangan panjang dan pendek.

Analisis Keuntungan

Keuntungan dari strategi ini meliputi:

  1. Identifikasi tren dan pembalikan yang efektif dengan menggunakan proporsi tubuh lilin / wick.

  2. Keakuratan sinyal pembalikan yang lebih tinggi dengan menggabungkan perubahan kekuatan lilin dan RSI. RSI dapat disesuaikan memberikan kemampuan optimasi yang lebih besar.

  3. Konfigurasi stop loss/take profit yang wajar untuk memanfaatkan peluang jangka pendek sambil mengurangi risiko perdagangan.

  4. Fleksibilitas pengaturan parameter untuk mengoptimalkan di berbagai produk dan kerangka waktu.

Analisis Risiko

Beberapa risiko yang ada dalam strategi:

  1. Sinyal palsu potensial selama tren yang kuat dapat dikurangi melalui optimasi periode perbandingan lilin dan parameter RSI.

  2. Kemungkinan pembalikan yang gagal tidak dapat dihilangkan sepenuhnya. Menjadi panjang dalam downtrend dan sebaliknya menyebabkan kerugian. Stop loss harus disesuaikan untuk meminimalkan kerusakan.

  3. Kinerja tergantung pada produk dan kerangka waktu.

Peluang Peningkatan

Strategi dapat dioptimalkan dengan cara berikut:

  1. Periode penyesuaian halus yang dipertimbangkan dalam mengidentifikasi overbought/oversold untuk menentukan kombinasi parameter yang optimal.

  2. Mengoptimalkan ambang RSI overbought/oversold berdasarkan spesifikasi produk.

  3. Uji rasio stop loss/take profit untuk mendapatkan rencana manajemen risiko yang ideal.

  4. Mengkategorikan produk sesuai volatilitas untuk penyesuaian parameter yang lebih ditargetkan.

  5. Filter tambahan berdasarkan indikator lain dapat meningkatkan ketahanan.

Kesimpulan

Strategi ini sangat praktis secara keseluruhan untuk mendeteksi pembalikan dengan memahami informasi candlestick. Sebagai sistem perdagangan jangka pendek yang khas, ia memiliki kemampuan optimasi yang cukup besar di seluruh produk dan lingkungan untuk melacak tren jangka menengah. Namun, kontrol risiko yang memadai melalui stop loss sangat penting.


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

//@version=5
strategy("mecha larga study",overlay = true,  max_bars_back = 600)
//Porcentaje Mecha cuerpo
bodyPercent = math.abs(open - close) / (high - low) * 100
wickPercent = 100 - bodyPercent

plot(bodyPercent, "Porcentaje del cuerpo", color.rgb(163, 76, 175))
plot(wickPercent, "Porcentaje de la mecha", color.red)

VelaDeFuerza =  math.abs(((high[0] - low[0])*100)/high)//PORCENTAJE DE VARIACION DE UNA VELA
plot(VelaDeFuerza, color = color.purple)

Promedio = ((VelaDeFuerza[0] + VelaDeFuerza[1] + VelaDeFuerza[2] + VelaDeFuerza[3] + VelaDeFuerza[4]  + VelaDeFuerza[5] + VelaDeFuerza[6] + VelaDeFuerza[7] + VelaDeFuerza[8] + VelaDeFuerza[9] + VelaDeFuerza[10] + VelaDeFuerza[11] + VelaDeFuerza[12] + VelaDeFuerza[13]  + VelaDeFuerza[14] ) / 15)
plot(Promedio, color = color.yellow)


// rsi 
per_Rsi = input.int(14, "Periodo RSI",minval= 11, maxval=20) //inicializo el rsi en 14 periodos pero doy la posibilidad al usuario de cambiarlo
rsi_Sc = input.int(75,"Sobre Compra",minval=68,maxval=80) //ENTRADA DE SOBRE COMPRA DE RSI
rsi_Sv = input.int(25,"Sobre Venta",minval=20,maxval=33) //ENTRADA DE SOBRE VENTA DE RSI
rsi= ta.rsi(close,per_Rsi)//guardo el rsi con los paramentros anteriores en una variable

//logica
MayorPromedio =   Promedio + 0.800
plot(MayorPromedio, color = color.green)

Venta =   bodyPercent > 80   and VelaDeFuerza > Promedio * 2  and close < close[1]
Compra =   bodyPercent > 80  and VelaDeFuerza > Promedio * 2 and close > close[1]


precioVenta = Venta? close : na
precioCompra = Compra? close : na

tp1 = 0.00
sl  = 0.00
tp1 := 0.003
sl := 0.010

TP1short = precioVenta - (precioVenta * tp1)
Slshort = precioVenta + (precioVenta * sl)

TP1long = precioCompra + (precioCompra * tp1)
SLlong = precioCompra - (precioCompra * sl)


name1 = "tp1"
name2 = "tp2"
name3= "SL"




if ( precioVenta ) 
    strategy.entry("short", strategy.short , comment = "Sell  SL: " + str.tostring(Slshort, "0.000")  + " TP1: " + str.tostring(TP1short,"0.000") ) 
    strategy.exit("exit" , "short", stop = Slshort , limit = TP1short ,qty_percent = 100 )  
if ( precioCompra ) 
    strategy.entry("long", strategy.long , comment = "Buy   SL: " + str.tostring(SLlong, "0.000")  + " TP1: " + str.tostring(TP1long,"0.000") )
    strategy.exit("exit" , "long", stop = SLlong  , limit = TP1long ,qty_percent = 100 )

Lebih banyak