Strategi pecah saluran atas dan bawah


Tarikh penciptaan: 2024-02-28 18:12:47 Akhirnya diubah suai: 2024-02-28 18:12:47
Salin: 1 Bilangan klik: 695
1
fokus pada
1617
Pengikut

Strategi pecah saluran atas dan bawah

Gambaran keseluruhan

Strategi ini memanfaatkan saluran kenaikan yang terbentuk di atas dan di bawah landasan yang dikira oleh penunjuk gelombang sebenar rata-rata dan harga untuk menghasilkan isyarat perdagangan apabila harga menembusi saluran tersebut. Strategi ini mempunyai keupayaan untuk mengesan trend yang luar biasa.

Prinsip Strategi

Strategi ini mula-mula mengira indikator ATR sebagai ukuran pergerakan harga, kemudian menggabungkan nilai purata harga tertinggi, harga terendah, dan harga penutupan, untuk mengira kenaikan dan penurunan. Apabila harga naik, ia menghasilkan isyarat beli; apabila harga turun, ia menghasilkan isyarat jual.

Selepas IPO, strategi akan menetapkan sasaran mata keuntungan dan titik-titik berhenti, berhenti apabila harga mencapai sasaran mata, dan berhenti jika penarikan balik mencapai titik-titik berhenti.

Analisis kelebihan

Kelebihan terbesar strategi ini adalah keupayaan untuk mengesan trend yang sangat baik. Saluran menaik dapat menyesuaikan diri dengan mudah untuk menangkap perubahan trend harga. Pada masa yang sama, penggunaan indikator ATR juga memberikan jaminan untuk operasi pergerakan. Di samping itu, mekanisme stop loss dalam strategi juga menjadikan kawalan keuntungan dan kerugian lebih jelas.

Analisis risiko

Salah satu risiko utama strategi ini adalah bahawa ia mudah menghasilkan lebih banyak tempoh kosong. Apabila harga berada dalam keadaan goyah, ia sering menyebabkan saluran ke atas dan ke bawah sering dipicu, yang akan menghasilkan lebih banyak perdagangan yang tidak berkesan.

Untuk mengurangkan risiko ini, anda boleh mempertimbangkan untuk mengoptimumkan parameter ATR atau menyesuaikan lebar saluran agar saluran lebih dekat dengan trend sebenar. Selain itu, penyaringan masa masuk ke pasaran boleh digabungkan dengan indikator lain.

Arah pengoptimuman

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Optimumkan parameter ATR. Anda boleh menguji parameter kitaran yang berbeza, sehingga ATR lebih mencerminkan perubahan sebenar.

  2. Optimumkan lebar saluran. Anda boleh menguji pelbagai nilai penggandaan untuk menentukan parameter terbaik.

  3. Menambah penapis indikator lain. Sebagai contoh, penapis indikator MACD untuk menentukan titik jual beli dapat mengurangkan jumlah transaksi yang tidak sah.

  4. Mengoptimumkan titik hentian dan titik berhenti. Uji kesan parameter yang berbeza terhadap kadar keuntungan akhir.

  5. Pertimbangkan Sharpe Rate atau Rasio Kerugian sebagai sasaran pengoptimuman. Untuk menilai kualiti strategi secara lebih menyeluruh.

ringkaskan

Strategi ini mencapai trend yang sangat baik dengan cara menyesuaikan saluran menaik dan prinsip penembusan. Ia juga mempunyai logik stop-stop yang agak jelas. Dengan mengoptimumkan parameter dan peraturan tertentu, ia diharapkan untuk meningkatkan lagi prestasi strategi yang dinamik, sehingga ia boleh digunakan dalam persekitaran pasaran yang lebih luas.

Kod sumber strategi
/*backtest
start: 2024-02-26 00:00:00
end: 2024-02-26 20:20:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Supertrend Strategy", overlay=true)

// Input parameters
atr_length = input.int(10, title="ATR Length")
multiplier = input.float(3.0, title="Multiplier")

target_points = input.int(100, title="Target Points")
stop_loss_points = input.int(50, title="Stop Loss Points")

// Calculate ATR and Supertrend
atr = ta.atr(atr_length)
upper_band = hlc3 + (multiplier * atr)
lower_band = hlc3 - (multiplier * atr)
is_uptrend = close > lower_band
is_downtrend = close < upper_band
trend_changed = (is_uptrend[1] and is_downtrend) or (is_downtrend[1] and is_uptrend)

// Strategy logic
long_condition = is_uptrend and trend_changed
short_condition = is_downtrend and trend_changed

// Plot Supertrend
plot(is_uptrend ? lower_band : na, color=color.green, title="Supertrend Up", style=plot.style_linebr)
plot(is_downtrend ? upper_band : na, color=color.red, title="Supertrend Down", style=plot.style_linebr)

// Strategy entry and exit
if long_condition
    strategy.entry("Long", strategy.long)
if short_condition
    strategy.entry("Short", strategy.short)

// Calculate target and stop loss levels
long_target = strategy.position_avg_price + target_points
long_stop_loss = strategy.position_avg_price - stop_loss_points
short_target = strategy.position_avg_price - target_points
short_stop_loss = strategy.position_avg_price + stop_loss_points

// Strategy exit
strategy.exit("Long Exit", "Long", limit=long_target, stop=long_stop_loss)
strategy.exit("Short Exit", "Short", limit=short_target, stop=short_stop_loss)