Strategi Persentase Trailing Stop


Tanggal Pembuatan: 2023-09-19 21:18:39 Akhirnya memodifikasi: 2023-09-19 21:18:39
menyalin: 0 Jumlah klik: 636
1
fokus pada
1617
Pengikut

Ringkasan

Strategi ini mengimplementasikan mekanisme tracking stop loss persentase yang dapat dikonfigurasi untuk mengontrol risiko perdagangan. Ini memungkinkan untuk mengatur persentase stop loss untuk posisi panjang dan pendek, dan terus-menerus melacak harga tertinggi atau terendah ke arah yang menguntungkan dari harga masuk, sehingga memungkinkan stop loss dinamis.

Prinsip Strategi

Logika utama dari strategi ini adalah:

  1. Persentase Stop Loss untuk Posisi Panjang dan Pendek
  2. Posisi panjang: terus melacak titik rendah dan menghitung stop loss berdasarkan harga terendah
  3. Saat posisi pendek: terus melacak titik tinggi dan menghitung stop loss berdasarkan harga tertinggi
  4. Keluar dari posisi saat ini ketika harga menyentuh garis stop loss

Strategi ini memungkinkan untuk menyesuaikan persentase stop loss, misalnya dengan pengaturan 10%; jika posisi panjang, itu akan dihitung secara real-time 10% di atas harga terendah sebagai garis stop loss; jika posisi pendek, dihitung di bawah 10% dari harga tertinggi sebagai garis stop loss.

Dengan cara ini, stop loss line akan terus bergerak ke arah yang menguntungkan, memungkinkan stop loss yang dilacak secara dinamis, melindungi keuntungan maksimum, sekaligus mengendalikan risiko.

Keunggulan Strategis

  • Membuat otomatis tracking stop loss, tidak perlu operasi manual
  • Garis Stop Loss Dinamis, Memaksimalkan Proteksi Keuntungan
  • Persentase Stop Loss yang dapat disesuaikan untuk berbagai jenis transaksi
  • Membantu dalam pengendalian risiko dan mengurangi kerugian yang lebih besar dari yang diharapkan
  • Adaptasi untuk berbagai strategi perdagangan, mudah diintegrasikan

Risiko Strategis dan Tanggapan

  • Pelacakan lambat, risiko tak terhindarkan
  • Stop loss yang terlalu longgar dapat menyebabkan kerugian yang lebih besar.
  • Stop loss yang terlalu ketat dapat menyebabkan stop loss yang terlalu sering

Cara Mengatasinya:

  1. Mengoptimalkan persentase stop loss, menyeimbangkan efek stop loss
  2. Kombinasi dengan metode stop loss lainnya, seperti stop loss waktu
  3. Parameter stop loss yang dioptimalkan berdasarkan volatilitas pasar
  4. Menjaga konsistensi stop loss dan menghindari parameter yang terlalu acak

Arah optimasi strategi

Strategi ini dapat dioptimalkan:

  1. Mengoptimalkan parameter stop loss secara dinamis menggunakan algoritma pembelajaran mesin
  2. Mengatur stop loss secara otomatis berdasarkan indikator seperti Maximum Withdrawal
  3. Mengatur posisi stop loss dengan indikator seperti moving averages
  4. Pilih konfigurasi parameter yang berbeda sesuai dengan situasi fluktuasi
  5. Setting Stop Loss dan Adjusting Stop Loss Posisi untuk Mengambil Profit

Meringkaskan

Strategi ini menyediakan metode persentase yang efektif untuk melacak stop loss, yang dapat secara dinamis menyesuaikan garis stop loss. Ini dapat memaksimalkan perlindungan keuntungan, tetapi juga dapat secara efektif mengendalikan risiko. Dengan cara optimasi parameter, integrasi indikator, dan lain-lain, strategi stop loss dapat dibuat lebih cerdas dan dioptimalkan.

Kode Sumber Strategi
/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © theCrypster

//@version=4
strategy("Percent Trailing Stop %", overlay=true)

//ENTER SOME SETUP TRADES FOR TSL EXAMPLE
longCondition = crossover(sma(close, 10), sma(close, 20))
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)

shortCondition = crossunder(sma(close, 10), sma(close, 20))
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)
    

//TRAILING STOP CODE
trailStop = input(title="Long Trailing Stop (%)", type=input.float, minval=0.0, step=0.1, defval=10) * 0.01

longStopPrice = 0.0
shortStopPrice = 0.0
longStopPrice := if strategy.position_size > 0
    stopValue = close * (1 - trailStop)
    max(stopValue, longStopPrice[1])
else
    0
shortStopPrice := if strategy.position_size < 0
    stopValue = close * (1 + trailStop)
    min(stopValue, shortStopPrice[1])
else
    999999

//PLOT TSL LINES
plot(series=strategy.position_size > 0 ? longStopPrice : na, color=color.red, style=plot.style_linebr, linewidth=1, title="Long Trail Stop", offset=1, title="Long Trail Stop")
plot(series=strategy.position_size < 0 ? shortStopPrice : na, color=color.red, style=plot.style_linebr, linewidth=1, title="Short Trail Stop", offset=1, title="Short Trail Stop")


//EXIT TRADE @ TSL
if strategy.position_size > 0
    strategy.exit(id="Close Long", stop=longStopPrice)
if strategy.position_size < 0
    strategy.exit(id="Close Short", stop=shortStopPrice)