Terobosan baru strategi rata-rata pergerakan regresi rendah


Tanggal Pembuatan: 2023-11-02 15:34:22 Akhirnya memodifikasi: 2023-11-02 15:34:22
menyalin: 0 Jumlah klik: 658
1
fokus pada
1617
Pengikut

Terobosan baru strategi rata-rata pergerakan regresi rendah

Ringkasan

Gagasan utama dari strategi ini adalah untuk mendeteksi apakah harga telah menembus harga terendah dalam periode yang ditentukan, dan jika ada lebih banyak penembusan, menunggu harga kembali ke garis tengah.

Prinsip Strategi

Strategi ini mendapatkan lowestLow dalam periode yang ditentukan dengan memanggil metode ta.lowest dari skrip Pine, dan membandingkannya dengan prevLow dari periode sebelumnya.

Jika harga terendah (lowestLow) di periode terbaru lebih rendah dari harga terendah (prevLow) di periode sebelumnya, maka akan ada sinyal untuk melakukan over. Setelah melakukan over, maka akan terjadi perbandingan dengan harga terendah (highestHigh) di periode yang ditentukan. Jika harga terendah di periode terbaru lebih besar dari harga terendah di periode sebelumnya, maka akan terjadi negosiasi.

Strategi ini memungkinkan untuk memilih kondisi pemicu, yaitu bahwa harga minimum perlu untuk memecahkan satu, dua, tiga atau empat harga minimum sebelumnya secara berturut-turut, sehingga mengendalikan frekuensi perdagangan.

Selain itu, strategi ini juga memetakan garis harga minimum (lowestLow) dan garis harga maksimum (highestHigh) pada grafik untuk menunjukkan perubahan tren secara intuitif.

Analisis Keunggulan

  • Strategi ini menangkap reversal setelah penembusan new low dan memiliki tingkat kemenangan yang lebih tinggi.

  • Memungkinkan untuk memilih jumlah harga terendah yang dapat dilalui, dan mengontrol frekuensi transaksi.

  • Menggambar garis rata-rata membantu untuk menilai titik perubahan tren secara intuitif.

  • Strategi logisnya sederhana, jelas, dan mudah dimengerti.

  • Anda dapat mengkonfigurasi berbagai saham dan periode waktu untuk pengujian optimasi.

Analisis risiko

  • Penembusan palsu tidak dapat menentukan titik balik tren dan dapat menyebabkan kerugian.

  • Konfigurasi optimasi dari kombinasi parameter yang berbeda perlu diuji, jika tidak, frekuensi transaksi mungkin terlalu tinggi atau terlalu rendah.

  • Parameter ini perlu disesuaikan untuk berbagai saham, tidak cocok untuk aplikasi mekanis.

  • Periode waktu respons yang tidak memadai dapat menyebabkan over-fitting strategi.

  • Harga mungkin akan lebih rendah setelah terobosan, dan Anda perlu mengatur stop loss untuk mengendalikan risiko.

Arah optimasi

  • Menambahkan mekanisme stop loss, seperti stop loss mobile, stop loss tracking, dan lain-lain, untuk mengendalikan kerugian tunggal.

  • Mengoptimalkan jumlah terobosan, menyeimbangkan frekuensi transaksi dengan kualitas sinyal.

  • Uji optimasi parameter untuk berbagai saham dan periode waktu.

  • Menambahkan kondisi penyaringan untuk menghindari perdagangan yang sering terjadi di pasar yang bergejolak.

  • Pertimbangkan untuk memasukkan indikator tren dan hindari perdagangan berlawanan arah.

  • Uji sinyal Exit yang berbeda.

Meringkaskan

Strategi ini digunakan untuk menangkap peluang reversal dengan memantau harga terendah yang terobosan, dan merupakan salah satu dari tipikal strategi reversal yang terobosan. Keuntungan dari strategi ini adalah sederhana dan mudah dipahami, frekuensi perdagangan dapat dikontrol, dapat diterapkan di berbagai jenis saham. Namun, ada juga risiko terobosan palsu tertentu, perlu menambahkan kondisi tambahan untuk pengoptimalan penyaringan, sementara pengendalian risiko sangat diperlukan.

Kode Sumber Strategi
/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © merovinh

//@version=5
strategy(title="Merovinh - Mean Reversion Lowest low",
     overlay = true,
     default_qty_type = strategy.percent_of_equity,
     initial_capital = 10000,
     default_qty_value = 10,
     commission_type = strategy.commission.percent,
     slippage = 1,
     commission_value = 0.04)

GR_TIME = 'Time Period'

bars = input(9, title = "Minimum number of bars", tooltip = "The minimum number of bars before updating lowest low / highest high")

numberOfLows  = input.string(defval='One', title='Number of broken lows', options=['One', 'Two', 'Three', 'Four'])

//Period

var prevLow = .0
var prevHigh = .0
var prevLow2 = .0
var prevLow3 = .0
var prevLow4 = .0

truetime = true


highestHigh = ta.highest(high, bars)
lowestLow = ta.lowest(low, bars)

if numberOfLows == 'One'
    if truetime and prevLow > 0 and lowestLow < prevLow
        strategy.entry('long', strategy.long)
if numberOfLows == 'Two'
    if truetime and prevLow > 0 and lowestLow < prevLow and prevLow < prevLow2
        strategy.entry('long', strategy.long)
if numberOfLows == 'Three'
    if truetime and prevLow > 0 and lowestLow < prevLow and prevLow < prevLow2 and prevLow2 < prevLow3
        strategy.entry('long', strategy.long)
if numberOfLows == 'Four'
    if truetime and prevLow > 0 and lowestLow < prevLow and prevLow < prevLow2 and prevLow2 < prevLow3 and prevLow3 < prevLow4
        strategy.entry('long', strategy.long)

if truetime and prevHigh > 0 and highestHigh > prevHigh
    strategy.close('long')


if prevLow != lowestLow
    prevLow4 := prevLow3
    prevLow3 := prevLow2
    prevLow2 := prevLow
    prevLow := lowestLow
prevHigh := highestHigh

plot(lowestLow, color=color.green, linewidth=1, title="Lowest Low Line")
plot(highestHigh, color=color.green, linewidth=1, title="Highest High Line")