Parabol Oscillator Mencari Strategi Tinggi dan Rendah


Tarikh penciptaan: 2024-02-20 16:01:12 Akhirnya diubah suai: 2024-02-20 16:01:12
Salin: 0 Bilangan klik: 568
1
fokus pada
1617
Pengikut

Parabol Oscillator Mencari Strategi Tinggi dan Rendah

Gambaran keseluruhan

Strategi ini menilai trend dan turun naik harga dengan mengira rata-rata dan perbezaan untuk tempoh yang berbeza, untuk mengenal pasti titik tinggi dan rendah.

Prinsip Strategi

Logik teras strategi ini adalah untuk mengira rata-rata dan perbezaan bagi tempoh yang berbeza dalam tempoh yang baru-baru ini. Secara khusus, rata-rata ((ma, mb, mc) dan perbezaan ((da, db, dc) untuk 5 hari, 4 hari dan 3 hari yang lalu, masing-masing. Kemudian lebih besar, pilih satu tempoh yang paling besar perbezaan yang mewakili trend semasa.

Dengan cara ini, apabila harga berlaku pecah ke atas atau pecah ke bawah, perubahan besar akan berlaku dalam kitaran dan perbezaan yang mewakili trend. Oleh itu, output akhir WG juga akan mengalami perubahan besar, untuk mengenal pasti titik tinggi dan rendah.

Analisis kelebihan

Pendekatan ini berdasarkan pada perubahan trend dalam penilaian pelbagai kitaran adalah berkesan, dapat mengenal pasti titik perubahan harga. Berbanding dengan penilaian satu kitaran, pendekatan ini menggabungkan beberapa kitaran dapat meningkatkan ketepatan dan ketepatan masa penilaian.

Pengiraan rata-rata dan perbezaan kuasa dua juga sangat mudah dan berkesan, tidak banyak kod, dan sangat sensitif terhadap perubahan harga yang tiba-tiba, sehingga dapat dengan cepat mengesan penembusan.

Analisis risiko

Period yang digunakan dalam strategi ini adalah lebih pendek, dan penghakiman mungkin tidak cukup tepat dan menyeluruh untuk garis panjang dan tengah. Pertembungan harga dalam jangka masa pendek boleh menyebabkan kesalahan penghakiman.

Selain itu, penyetempatan berat rata-rata dan perbezaan kuadrat juga boleh mempengaruhi keputusan, dan jika berat tidak betul, isyarat mungkin menyimpang.

Arah pengoptimuman

Anda boleh cuba menambah lebih banyak pengiraan kitaran yang berbeza, membentuk kombinasi kitaran, untuk membuat penghakiman yang lebih menyeluruh. Sebagai contoh, masukkan penghakiman kitaran jangka panjang dan sederhana seperti 10 hari, 20 hari.

Anda juga boleh mencuba pelbagai skim penyetempatan berat, meningkatkan fleksibiliti penyetempatan berat. Anda boleh menambah pengoptimuman parameter, supaya berat dapat disesuaikan secara automatik mengikut keadaan pasaran, mengurangkan kemungkinan kesalahan penilaian.

Selain itu, ia boleh digabungkan dengan petunjuk lain, seperti ketidaksuburan dalam jumlah dagangan, dan sebagainya, untuk mengelakkan penghakiman yang keliru dalam perdagangan lelang.

ringkaskan

Strategi ini mempunyai pemikiran keseluruhan yang jelas dan mudah difahami, menggunakan garis rata-rata dan perbezaan untuk menilai trend harga dan turun naik, dan kemudiannya output gabungan dapat mengenal pasti garis kurva yang tinggi dan rendah. Kaedah berdasarkan penilaian gabungan pelbagai kitaran ini dapat memperoleh ciri jangka panjang dan jangka pendek pasaran dengan berkesan, meningkatkan ketepatan penilaian pada titik-titik perubahan. Ruang pengoptimuman juga besar, dapat disesuaikan dengan pelbagai aspek, berat kitaran, dan indikator, menjadikan strategi lebih stabil dan menyeluruh.

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

//@version=3
strategy("x²", overlay=false)


a1=(close[2]-close[3])/1
a2=(close[1]-close[3])/4
a3=(close[0]-close[3])/9

b1=(close[3]-close[4])/1
b2=(close[2]-close[4])/4
b3=(close[1]-close[4])/9
b4=(close[0]-close[4])/16

c1=(close[4]-close[5])/1
c2=(close[3]-close[5])/4
c3=(close[2]-close[5])/9
c4=(close[1]-close[5])/16
c5=(close[0]-close[5])/25

ma=(a1+a2+a3)/3
da=(a1-ma)*(a1-ma)
da:=da+(a2-ma)*(a2-ma)
da:=da+(a3-ma)*(a3-ma)
da:=sqrt(da)
da:=min(2, da)
da:=1-da/2
da:=max(0.001, da)


mb=(b1+b2+b3+b4)/4
db=(b1-mb)*(b1-mb)
db:=db+(b2-mb)*(b2-mb)
db:=db+(b3-mb)*(b3-mb)
db:=db+(b4-mb)*(b4-mb)
db:=sqrt(db)
db:=min(2, db)
db:=1-db/2
db:=max(0.001, db)

mc=(c1+c2+c3+c4+c5)/5
dc=(c1-mc)*(c1-mc)
dc:=dc+(c2-mc)*(c2-mc)
dc:=dc+(c3-mc)*(c3-mc)
dc:=dc+(c4-mc)*(c4-mc)
dc:=dc+(c5-mc)*(c5-mc)
dc:=sqrt(dc)
dc:=min(2, dc)
dc:=1-dc/2
dc:=max(0.001, dc)



g=close
if(da>db and da>dc)
    g:=da*da*ma
else
    if(db > da and db > dc)
        g:=db*db*mb
    else
        g:=dc*dc*mc

wg=wma(g, 2)
plot(wg)
plot(0, color=black)


longCondition = true //crossover(sma(close, 14), sma(close, 28))
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)

shortCondition = true //crossunder(sma(close, 14), sma(close, 28))
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)