Strategi Penembusan Osilasi Berdasarkan Purata Bergerak

Penulis:ChaoZhang, Tarikh: 2024-01-23 15:13:31
Tag:

img

Ringkasan

Strategi ini dinamakan Oscillation Breakthrough Strategy Based on Moving Average. Ia mengira garis purata bergerak kitaran harga yang berbeza untuk menentukan sama ada harga memecahkan purata bergerak utama untuk perdagangan panjang dan pendek. Apabila purata bergerak jangka pendek memecahkan purata bergerak jangka panjang, pergi panjang. Apabila purata bergerak jangka pendek jatuh melalui purata bergerak jangka panjang, pergi pendek.

Prinsip Strategi

Strategi ini terutamanya berdasarkan teori purata bergerak. purata bergerak adalah alat analisis yang biasa digunakan dalam analisis teknikal. Ia meratakan data harga dengan menapis turun naik harga jangka pendek bunyi bising dan mencerminkan arah trend utama harga. purata bergerak pantas mencerminkan trend harga jangka pendek, sementara purata bergerak perlahan mencerminkan trend harga jangka panjang. Apabila purata bergerak pantas melintasi di atas atau di bawah purata bergerak perlahan, ini bermakna bahawa trend jangka pendek membalikkan trend jangka panjang, yang sering menandakan pembalikan harga.

Strategi ini menggunakan prinsip ini dengan menetapkan dua purata EMA dengan parameter yang berbeza, satu jangka pendek sebagai garis pantas dan satu jangka panjang sebagai garis perlahan. Strategi menetapkan EMA dengan panjang 9 dan 26 untuk mengira garis penukaran dan garis asas. Apabila EMA jangka pendek melintasi di atas EMA jangka panjang, pergi panjang, menunjukkan harga jangka pendek lebih tinggi daripada harga jangka panjang, isyarat kenaikan. Apabila EMA jangka pendek melintasi di bawah EMA jangka panjang, pergi pendek, menunjukkan harga jangka pendek lebih rendah daripada harga jangka panjang, isyarat penurunan.

Oleh itu, strategi ini menilai kemungkinan titik pembalikan harga melalui terobosan EMA yang cepat dan perlahan untuk menangkap peluang trend harga jangka pendek.

Analisis Kelebihan

  • Menggunakan penunjuk yang boleh dipercayai berdasarkan teori purata bergerak untuk menentukan titik pembalikan harga
  • Mudah difahami dan dilaksanakan berdasarkan penunjuk asas
  • Parameter yang fleksibel untuk penyesuaian dan pengoptimuman untuk produk yang berbeza
  • Pilihan untuk hanya membuka kedudukan semasa jam dagangan tertentu untuk mengelakkan risiko semalam
  • Cari titik kejayaan yang lebih jelas untuk meningkatkan kadar kemenangan

Analisis Risiko dan Penyelesaian

  • Kecenderungan kepada banyak kerugian kecil daripada perdagangan ke belakang dan ke hadapan
    Boleh melonggarkan julat stop loss dengan sewajarnya, tunggu isyarat pembalikan yang jelas sebelum memasuki kedudukan

  • Untuk stok kecairan yang rendah, jurang harga atau harga yang tidak konsisten boleh berlaku Parameter boleh dioptimumkan, menyesuaikan parameter kitaran purata bergerak, perdagangan dengan parameter yang dioptimumkan

  • Mudah untuk mendapatkan isyarat palsu di sisi pasaran bergolak Boleh digabungkan dengan penunjuk lain untuk pengesahan sebelum memasuki kedudukan

  • Keupayaan terhad untuk menangani situasi pasaran yang kompleks dengan hanya penunjuk purata bergerak yang mudah Boleh memperkenalkan penunjuk teknikal lain untuk membuat keputusan yang lebih baik pada titik utama

Arahan pengoptimuman

Strategi ini juga boleh dioptimumkan lagi dalam aspek berikut:

  1. Tambahkan mekanisme ukuran kedudukan untuk mengawal risiko kedudukan dengan menambah/mengurangkan

  2. Tambahkan mekanisme stop loss untuk mengawal kerugian setiap perdagangan dengan berkesan

  3. Menggabungkan jumlah dagangan, penunjuk jumlah untuk mengelakkan pecah harga palsu

  4. Tambah ramalan model, gunakan pembelajaran mesin dan lain-lain untuk meramalkan kebarangkalian pembalikan harga, meningkatkan keputusan

  5. Menggunakan pembelajaran mendalam untuk mensimulasikan logika membuat keputusan pedagang profesional dan memilih isyarat pada titik kemungkinan pembalikan yang tinggi

Ringkasan

Ini adalah strategi pembalikan purata jangka pendek berdasarkan penunjuk purata bergerak. Parameter yang boleh disesuaikan memberikan fleksibiliti yang baik. Walaupun menggunakan penunjuk mudah, ia boleh disesuaikan dengan baik dengan persekitaran pasaran melalui penyesuaian parameter. Strategi ini bertujuan untuk menangkap peluang arbitraj dari pembalikan harga jangka pendek. Dengan memperkenalkan mekanisme seperti ukuran kedudukan, stop loss dll, risiko dapat dikendalikan dengan berkesan untuk meningkatkan kestabilan. Penunjuk teknikal yang lebih maju dan kaedah pembelajaran mesin juga boleh digunakan untuk meneroka peningkatan prestasi.


/*backtest
start: 2023-01-16 00:00:00
end: 2024-01-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Juiced Ichimoku Strat", overlay=true)

USE_TRADESESSION = input(title='Use Trading Session?', type=bool, defval=true)
trade_session = input(title='Trade Session:', defval='0800-1600', confirm=false)
istradingsession = not USE_TRADESESSION ? false : not na(time('1', trade_session))
bgcolor(istradingsession?gray:na)

varLo = input(title="Fast (Conversion) Line",  defval=9, minval=1, maxval=99999)
varHi = input(title="Slow (Base) Line",  defval=26, minval=1, maxval=99999)
emafreq = input(title="Ema on price frequency",  defval=2, minval=1, maxval=99999)

a = lowest(varLo)
b = highest(varLo)
c = (a + b ) / 2

d = lowest(varHi)
e = highest(varHi)
f = (d + e) / 2

//g = ((c + f) / 2)[varHi]
//h = ((highest(varHi * 2) + lowest(varHi * 2)) / 2)[varHi]

z = ema(close, emafreq)

bgcolor(z > c and z > f ? green : z < c and z < f ? red : yellow, transp=70)
plot(z, title="ema on Price", color=black)
plot(c, title="Fast (Conversion) Line", color=green)
plot(f, title="Slow (Base) Line", color=red)

long = z > c and z > f and (USE_TRADESESSION ? istradingsession : true)
short = z < c and z < f and (USE_TRADESESSION ? istradingsession : true)
//exit = z < c and z > f or z > c and z < f

closelong = z < c and z > f or z > c and z < f and (USE_TRADESESSION ? istradingsession : true)
if (closelong)
    strategy.close("Long")
closeshort = z < c and z > f or z > c and z < f and (USE_TRADESESSION ? istradingsession : true)
if (closeshort)
    strategy.close("Short")
strategy.entry("long", strategy.long, when=long)
strategy.entry("short", strategy.short, when=short)




Lebih lanjut