Strategi Crossover Rata-rata Pergerakan Ganda Momentum


Tanggal Pembuatan: 2023-11-17 17:00:32 Akhirnya memodifikasi: 2023-11-17 17:00:32
menyalin: 1 Jumlah klik: 625
1
fokus pada
1621
Pengikut

Strategi Crossover Rata-rata Pergerakan Ganda Momentum

Ringkasan

Strategi ini menggunakan metode crossover dua rata-rata dengan momentum untuk melakukan perdagangan berisiko rendah. Ini menggunakan rata-rata, garis cepat, dan garis lambat dari dua periode yang berbeda untuk menilai kapan harus membeli atau menjual berdasarkan persimpangan mereka. Strategi ini dirancang untuk menangkap perubahan tren dan mengambil keuntungan dari garis panjang dalam tren besar.

Prinsip Strategi

Strategi ini menggunakan WMA fast line dan WMA slow line untuk menentukan sinyal jual beli. Periode garis cepat adalah setengah dari siklus garis lambat. Sinyal beli dihasilkan ketika garis cepat melintasi garis lambat dari bawah; Sinyal jual dihasilkan ketika garis cepat melintasi garis lambat dari atas.

Secara khusus, logika kunci dalam strategi ini adalah:

  1. Definisi harga dan parameter: ekstraksi data harga OHLC; definisi parameter HullMA siklus z, data harga p。

  2. Hitung garis rata-rata ganda: Hitung garis rata-rata 2 siklus n2ma, z siklus rata-rata nma ≠

  3. Menghitung perbedaan garis rata-rata: Menghitung perbedaan dua garis rata-rata.

  4. Perhitungan indikator momentum: perhitungan rata-rata pergerakan rata-rata n1, n2, n3 dari sqn periode rata-rata diferensial garis rata-rata

  5. Pertimbangan silang: Tanda hijau saat n1 memakai n2, dan merah jika tidak.

  6. Menggambar bentuk: menggambar n1, n2 bentuk.

  7. Sinyal penghakiman: Sinyal yang dihasilkan ketika tiga garis rata-rata gerak n1, n2, n3 bersinggungan.

  8. Dalam dan di luar lapangan: di garis cepat, lakukan lebih banyak saat melewati garis lambat dan indikator momentum sesuai dengan persyaratan; di bawah garis cepat, lakukan kosong saat melewati garis lambat dan indikator momentum sesuai dengan persyaratan.

Keunggulan Strategis

Strategi ini menggabungkan crossover dan indikator momentum yang dapat secara efektif memfilter sinyal palsu dan menghasilkan sinyal perdagangan hanya pada awal perubahan tren, sehingga mendapatkan efek strategi yang lebih baik.

  1. Garis cepat dan garis lambat dapat digunakan untuk menentukan kapan tren berubah, dan memanfaatkan tren untuk mendapatkan keuntungan.

  2. Menambahkan indikator momentum dapat memfilter sinyal palsu dan menghindari tertipu oleh penurunan jangka pendek di pasar.

  3. Perdagangan hanya pada saat perubahan tren besar dapat mengurangi frekuensi perdagangan yang tidak perlu.

  4. Periode rata-rata linear dengan parameter yang dioptimalkan dapat membuat indikator lebih sesuai dengan karakteristik varietas yang berbeda.

  5. Hal ini memungkinkan pyreming untuk memperpanjang siklus keuntungan.

Risiko Strategis

Strategi ini juga memiliki beberapa risiko yang perlu diperhatikan:

  1. Pada saat ini, ada banyak sekali cara yang dapat digunakan untuk mengevaluasi pergerakan harga.

  2. Pengaturan parameter indikator momentum yang tidak tepat dapat menyesatkan perdagangan.

  3. Ada beberapa masalah dengan posisi kosong yang tidak seimbang.

  4. Strategi tidak memiliki mekanisme yang baik untuk menangani kondisi pasar yang bergejolak.

  5. Ada beberapa risiko overoptimisasi, parameter harus dioptimalkan secara bertahap.

Solusi untuk menghadapi risiko adalah:

  1. Anda dapat mempertimbangkan untuk menambahkan indikator awal lainnya untuk menilai perubahan harga, dan bersiaplah lebih awal.

  2. Parameter indikator dinamika harus dioptimalkan dengan tepat untuk menemukan kombinasi parameter optimal.

  3. Anda dapat mempertimbangkan untuk menambahkan indikator volatilitas untuk membantu mengontrol waktu posisi.

  4. Anda dapat membatasi jumlah posisi yang tepat untuk mengurangi kerugian tunggal.

  5. Parameter harus diuji untuk stabilitas, untuk menghindari masalah optimasi.

Arah optimasi strategi

Strategi ini juga dapat dioptimalkan dalam beberapa hal:

  1. Cobalah berbagai jenis rata-rata indikator untuk menemukan parameter yang optimal untuk varietas.

  2. Uji coba menambahkan indikator bantu lainnya, seperti MACD, perubahan tren penilaian, dan lain-lain.

  3. Optimalkan waktu masuk, pertimbangkan titik awal dari harga yang berbalik.

  4. Mengoptimalkan waktu bermain, menggunakan tracking stop loss dan lainnya untuk mengunci keuntungan.

  5. Parameter dioptimalkan sesuai dengan karakteristik varietas yang berbeda.

  6. Menggunakan metode pembelajaran mesin untuk menemukan kombinasi parameter yang optimal.

  7. Membangun mekanisme manajemen posisi dinamis untuk mengendalikan risiko.

  8. Menambahkan metrik evaluasi strategi kuantitatif, seperti rasio Sharpe, rasio untung rugi, dan lain sebagainya.

  9. Menggunakan strategi evaluasi mesin pengembalian kinerja pada data historis.

Meringkaskan

Secara keseluruhan, strategi linier dinamis ini menggunakan titik balik linier dan indikator dinamis untuk menentukan tren besar, yang dapat secara efektif menyaring kebisingan untuk perdagangan berisiko rendah. Ini memiliki keuntungan seperti stabilitas keuntungan, kesederhanaan, dan beberapa masalah dalam pengoptimalan parameter dan pengendalian risiko. Kita dapat melakukan perbaikan dalam mengoptimalkan waktu masuk dan keluar, manajemen posisi dinamis, dan lain-lain, sehingga strategi lebih sesuai dengan karakteristik pasar.

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

//@version=2
//OCTOPUS Indicator Strategy
strategy("FAVEL corp. Indicator Strategy", shorttitle="FAVEL corp. Monarch", overlay=true, default_qty_type=strategy.percent_of_equity, max_bars_back=420, default_qty_value=20, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)
z=input(defval=60,title="HullMA cross")
p=input(ohlc4,title="Price data")
n2ma=2*wma(p,round(z/2))
nma=wma(p,z)
diff=n2ma-nma
sqn=round(sqrt(z))
n2ma1=2*wma(p[1],round(z/2))
nma1=wma(p[1],z)
diff1=n2ma1-nma1
sqn1=round(sqrt(z))
n2ma2=2*wma(p[2],round(z/2))
nma2=wma(p[2],z)
diff2=n2ma2-nma2
sqn2=round(sqrt(z))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
n3=wma(diff2,sqn)
c=n1>n2?green:red
n1e=plot(n1, color=c, linewidth=1, offset=2)
n2e=plot(n2, color=c, linewidth=1, offset=2)
fill(n1e, n2e, color=c, transp=75)
plot(cross(n1, n2) ? n1 : na, style = circles,color=c, linewidth = 4)
closelong = p<p[1] and n1<n3
if (closelong)
    strategy.close("BUY")
closeshort = p>p[1] and n1>n3
if (closeshort)
    strategy.close("SELL")
longCondition = strategy.opentrades<1 and n1>n2 and p>p[1] and n1>n3
if (longCondition)
    strategy.entry("BUY",strategy.long)
shortCondition = strategy.opentrades<1 and n1<n2 and p<p[1] and n1<n3
if (shortCondition)
    strategy.entry("SELL",strategy.short)