Strategi Breakout Momentum Stochastic

Penulis:ChaoZhang, Tanggal: 2023-10-24 16:35:24
Tag:

img

Gambaran umum

Strategi Momentum Breakout terutama menggunakan indikator osilator Stochastic untuk menentukan arah tren pasar, dikombinasikan dengan indikator ADX untuk menilai kekuatan tren, untuk menghasilkan sinyal perdagangan.

Logika Strategi

Strategi ini didasarkan pada dua indikator teknis:

  1. Stochastic oscillator: digunakan untuk menentukan arah tren pasar. Nilai stochastic oscillator berkisar dari 0 sampai 100. Nilai antara 45 dan 55 ketika periode adalah 14 berarti tidak ada tren yang jelas. Stochastic di atas 55 adalah sinyal bullish dan di bawah 45 adalah sinyal bearish.

  2. Indikator ADX: digunakan untuk menilai kekuatan tren.

Strategi ini pertama-tama menilai apakah ada tren naik atau turun yang jelas berdasarkan nilai osilator Stochastic. Ketika Stochastic di atas 55, itu menandakan tren naik. Ketika di bawah 45, itu menandakan tren turun.

Jika ADX di atas 20, itu berarti tren cukup kuat untuk perdagangan tren. Jika ADX di bawah 20, tren dianggap tidak jelas dan tidak ada sinyal perdagangan yang akan dihasilkan.

Dengan menggabungkan osilator Stochastic dan ADX, sinyal perdagangan dihasilkan ketika kedua kondisi berikut terpenuhi:

  1. Stochastic di atas 55, menandakan tren naik.
  2. ADX di atas 20, mengkonfirmasi tren naiknya kuat.

Sinyal jual dihasilkan ketika kedua kondisi ini terpenuhi:

  1. Stochastic di bawah 45, menandakan penurunan.
  2. ADX di atas 20, mengkonfirmasi downtrend yang kuat.

Dengan aturan-aturan ini, strategi membentuk sistem tren jangka menengah hingga panjang.

Keuntungan

Keuntungan dari strategi ini meliputi:

  1. Menangkap tren jangka menengah hingga panjang: Dengan menggabungkan Stochastic dan ADX, dapat secara efektif menentukan arah tren pasar dan kekuatan, menangkap tren utama.

  2. Pengendalian penarikan: Hanya perdagangan ketika tren jelas dapat membantu mengendalikan whipsaws yang tidak perlu.

  3. Pengaturan parameter: Periode Stochastic dan ADX dapat dioptimalkan untuk pasar yang berbeda.

  4. Kesederhanaan: Logika keseluruhan sederhana dan intuitif, terdiri dari dua indikator teknis umum.

  5. Universalitas: Strategi dapat diterapkan pada pasar yang berbeda dengan penyesuaian parameter.

Risiko

Beberapa risiko dari strategi:

  1. Titik breakout yang hilang: Sebagai indikator yang mengikuti tren, Stochastic dan ADX dapat melewatkan titik pembalikan tren potensial dan perdagangan breakout awal.

  2. Risiko pembalikan tren: Mereka mungkin salah menilai tren untuk berlanjut di dekat akhir tren, kehilangan kesempatan untuk keluar tepat waktu, yang mengarah pada kerugian yang diperkuat.

  3. Kesulitan dalam optimasi parameter: Parameter perlu disesuaikan untuk pasar yang berbeda, yang menimbulkan beberapa kesulitan.

  4. Whipsaws: Ini dapat menghasilkan beberapa sinyal yang tidak valid di pasar yang terikat rentang tanpa tren yang jelas.

  5. Divergensi: Ketika tren harga bertentangan dengan tren osilator Stochastic, divergensi muncul, yang dapat menyebabkan kehilangan perdagangan.

Risiko dapat dikurangi dengan:

  1. Menambahkan indikator lain untuk mengidentifikasi tren lokal dan titik pecah potensial.

  2. Menggabungkan sinyal pembalikan tren untuk keluar tepat waktu ketika tren secara substansial berbalik.

  3. Menggunakan pembelajaran mesin untuk mengoptimalkan parameter secara otomatis.

  4. Meningkatkan ambang ADX untuk menyaring sinyal tren yang lemah di berbagai pasar.

  5. Menerapkan indikator tambahan untuk mengkonfirmasi sinyal Stochastic dan menghindari perdagangan divergensi.

Arah Peningkatan

Beberapa cara untuk meningkatkan strategi:

  1. Mengoptimalkan parameter Stochastic seperti periode K dan D untuk menemukan titik balik dengan akurat.

  2. Mengoptimalkan periode ADX untuk menentukan parameter terbaik untuk menilai kekuatan tren.

  3. Menambahkan sinyal pembalikan tren seperti meningkatkan ukuran posisi di zona overbought/oversold Stochastic dengan stop loss.

  4. Menggabungkan indikator lain seperti RSI dan MACD untuk memperbaiki waktu masuk dan keluar.

  5. Menggunakan pembelajaran mesin untuk menemukan kombinasi parameter yang optimal.

  6. Mengimplementasikan strategi stop loss seperti memindahkan stop loss atau membalikkan stop loss untuk mengendalikan kerugian perdagangan tunggal.

  7. Trailong stop loss: Tambahkan trailing stop loss untuk mengunci keuntungan saat tren meluas.

  8. Manajemen uang: Optimalkan manajemen risiko dengan menyesuaikan ukuran posisi berdasarkan kekuatan ADX.

Ringkasan

Singkatnya, strategi Momentum Breakout ini secara keseluruhan adalah sistem yang mengikuti tren, menggunakan Stochastic untuk menentukan arah tren dan ADX untuk mengukur kekuatan, membentuk strategi perdagangan jangka menengah hingga panjang. Keuntungannya terletak pada menangkap tren dan mengendalikan penarikan dengan logika yang sederhana dan intuitif. Kelemahannya adalah potensi perdagangan awal yang terlewatkan dan risiko pembalikan tren. Kita dapat mengoptimalkannya melalui metode seperti penyesuaian parameter, menambahkan sinyal, menerapkan stop loss untuk meningkatkan imbalan / risiko sambil mengendalikan risiko.


/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Created by Bitcoinduke
//Original Creator is Jake Bernstein 
// Link: https://school.stockcharts.com/doku.php?id=trading_strategies:stochastic_pop_drop
// Tested: XBTUSD 3h | BTCPERP FTX 3h
//@version=4
// strategy(shorttitle="Stochastic Pop and Drop", title="Pop and Drop", overlay=false, 
//      calc_on_every_tick=false, pyramiding=0, default_qty_type=strategy.cash, 
//      default_qty_value=1000, currency=currency.USD, initial_capital=1000,
//      commission_type=strategy.commission.percent, commission_value=0.075)

upper_threshold_buy = input(55, minval=50, title="Buy Entry/Exit Line")
lower_threshold_sell = input(45, maxval=50, title="Sell Entry/Exit Line")

oscillator_length = input(14, minval=1, title="Stochastic Length - Default 14")
sma_length = input(2, minval=1, title="SMA Length - 3-day (3 by default) simple moving average of stoch")

stoch_oscillator = sma(stoch(close, high, low, oscillator_length), sma_length)

//Upper and Lower Entry Lines
upper_line = upper_threshold_buy
lower_line = lower_threshold_sell

stoch_color = stoch_oscillator >= upper_line ? green : stoch_oscillator <= lower_line ? red : purple

//Charts
plot(stoch_oscillator, title="Stochastic", style=histogram, linewidth=4, color=stoch_color)
upper_threshold = plot(upper_line, title="Upper Line", style=line, linewidth=4, color=green)
lower_threshold = plot(lower_line, title="Lower Line", style=line, linewidth=4, color=red)

// Strategy Logic
LongSignal = stoch_oscillator >= upper_line and not (stoch_oscillator > lower_line and stoch_oscillator < upper_line) ? true : false
ShortSignal = stoch_oscillator <= lower_line and not (stoch_oscillator > lower_line and stoch_oscillator < upper_line) ? true : false

strategy.entry("POP_Short", strategy.short, when=ShortSignal)
strategy.entry("POP_Long", strategy.long, when=LongSignal)

// === Backtesting Dates === thanks to Trost

testPeriodSwitch = input(true, "Custom Backtesting Dates")
testStartYear = input(2019, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, testStartHour, 0)
testStopYear = input(2020, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(5, "Backtest Stop Day")
testStopHour = input(0, "Backtest Stop Hour")
testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, testStopHour, 0)
testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false
testPeriod_1 = testPeriod()
isPeriod = testPeriodSwitch == true ? testPeriod_1 : true
// === /END



Lebih banyak