Terobosan strategi purata bergerak regresi rendah baharu


Tarikh penciptaan: 2023-11-02 15:34:22 Akhirnya diubah suai: 2023-11-02 15:34:22
Salin: 0 Bilangan klik: 658
1
fokus pada
1617
Pengikut

Terobosan strategi purata bergerak regresi rendah baharu

Gambaran keseluruhan

Idea utama strategi ini adalah untuk mengesan sama ada harga melanggar harga terendah dalam tempoh yang ditetapkan, dan jika ia melanggar lebih banyak, tunggu harga kembali ke garis tengah. Ia adalah strategi mengikut trend.

Prinsip Strategi

Strategi ini menggunakan kaedah ta.lowest skrip Pine untuk mendapatkan harga terendah dalam tempoh yang ditetapkan dan membandingkannya dengan harga terendah pada tempoh sebelumnya.

Jika harga terendah dalam kitaran terkini adalah lebih rendah daripada harga terendah dalam kitaran sebelumnya, maka ia akan memberi isyarat untuk melakukan lebih banyak. Selepas melakukan lebih banyak, ia akan membandingkan dengan harga tertinggi dalam kitaran yang ditetapkan. Jika harga tertinggi dalam kitaran terkini adalah lebih tinggi daripada harga tertinggi dalam kitaran sebelumnya, maka ia akan meratakan kedudukan.

Strategi ini membolehkan pilihan keadaan pemicu, iaitu harga minimum perlu memecahkan satu, dua, tiga atau empat harga minimum sebelumnya secara berturut-turut, untuk mengawal frekuensi perdagangan.

Selain itu, strategi ini juga memetakan garis purata harga terendah (lowestLow) dan garis purata harga tertinggi (highestHigh) pada carta untuk menunjukkan perubahan trend secara intuitif.

Analisis kelebihan

  • Strategi ini menangkap trend pembalikan selepas penembusan baru rendah, dengan kadar kemenangan yang tinggi.

  • Anda boleh memilih berapa kali harga terendah akan ditembusi, dan anda boleh mengawal frekuensi dagangan.

  • Membuat garis rata membantu untuk menilai perubahan trend secara intuitif.

  • Strategi logiknya mudah difahami dan mudah dilaksanakan.

  • Boleh dikonfigurasi untuk pelbagai saham dan tempoh masa untuk ujian optimasi.

Analisis risiko

  • Penembusan palsu tidak dapat menentukan titik pembalikan trend dan boleh menyebabkan kerugian.

  • Ia perlu menguji konfigurasi pengoptimuman kombinasi parameter yang berbeza, jika tidak, frekuensi perdagangan mungkin terlalu tinggi atau terlalu rendah.

  • Parameter perlu disesuaikan untuk saham yang berbeza, tidak sesuai untuk aplikasi mekanikal.

  • Tidak mencukupi kitaran masa pengembalian mungkin menyebabkan strategi terlalu sesuai.

  • Harga mungkin lebih rendah selepas penembusan, dan anda perlu meletakkan stop loss untuk mengawal risiko.

Arah pengoptimuman

  • Menambah mekanisme penangguhan kerugian, seperti penangguhan bergerak, penangguhan pengesanan, dan lain-lain, untuk mengawal kerugian tunggal.

  • Mengoptimumkan bilangan penembusan, mengimbangi frekuensi dagangan dan kualiti isyarat.

  • Uji optimasi parameter untuk pelbagai saham dan tempoh masa.

  • Menambah syarat penapisan untuk mengelakkan dagangan yang kerap berlaku di pasaran yang bergolak.

  • Pertimbangkan untuk menggunakan indikator trend untuk mengelakkan dagangan berlawanan arah.

  • Uji pelbagai isyarat keluar.

ringkaskan

Strategi ini menangkap peluang untuk berbalik dengan memantau penembusan harga terendah, dan merupakan salah satu strategi penembusan semula yang tipikal. Kelebihannya adalah mudah difahami, frekuensi perdagangan dapat dikawal, dan boleh digunakan dalam pelbagai saham. Tetapi ada juga risiko penembusan palsu, yang memerlukan penapisan penapis untuk menambah syarat tambahan, dan pengendalian risiko sangat diperlukan.

Kod 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")