Mata tinggi dan rendah harian digabungkan dengan strategi perdagangan kuantitatif trend EMA bingkai berbilang masa

EMA MA
Tarikh penciptaan: 2024-11-28 15:20:59 Akhirnya diubah suai: 2024-11-28 15:20:59
Salin: 1 Bilangan klik: 487
1
fokus pada
1617
Pengikut

Mata tinggi dan rendah harian digabungkan dengan strategi perdagangan kuantitatif trend EMA bingkai berbilang masa

Gambaran keseluruhan

Ini adalah strategi dagangan kuantitatif yang menggabungkan penembusan paras paras paras paras paras paras tinggi dan rendah dan EMA pelbagai tempoh masa. Strategi ini digunakan untuk menentukan masa perdagangan dengan memantau penembusan harga terhadap paras paras paras tinggi dan rendah pada hari sebelumnya, digabungkan dengan EMA rata-rata dan CMF. Strategi ini menggunakan EMA rata-rata 200 siklus dalam kedua-dua tempoh masa.

Prinsip Strategi

Logik teras strategi merangkumi elemen utama berikut:

  1. Gunakan fungsi request.security untuk mendapatkan harga tertinggi dan terendah hari sebelumnya sebagai tahap rintangan sokongan utama.
  2. Garis EMA 24 kitaran digunakan sebagai garis asas untuk menilai trend.
  3. Memperkenalkan CMF ((20 kitaran) sebagai penunjuk komprehensif mengenai jumlah transaksi dan harga untuk menilai aliran dana pasaran.
  4. Pada masa yang sama, garis purata 200 untuk kitaran masa semasa dan kitaran 1 jam dikira untuk menentukan arah trend untuk kitaran yang lebih besar.

Peraturan transaksi adalah seperti berikut: Buat banyak syarat: harga menembusi paras tertinggi sehari sebelumnya + harga penutupan di atas EMA + CMF positif Syarat kosong: harga jatuh ke paras terendah sehari sebelumnya + harga penutupan di bawah EMA + CMF negatif Syarat kedudukan rata: harga turun di bawah EMA semasa melakukan dagangan, harga melampaui EMA semasa melakukan dagangan

Kelebihan Strategik

  1. Pengesahan komprehensif pelbagai petunjuk teknikal meningkatkan kebolehpercayaan transaksi
  2. Analisis kitaran masa yang lebih luas untuk memahami trend pasaran
  3. Indeks CMF yang menggabungkan kuantiti dan harga untuk menilai keadaan kewangan pasaran
  4. Menggunakan paras tertinggi dan terendah sehari sebelumnya sebagai harga utama, sesuai dengan kebiasaan perdagangan peserta pasaran
  5. Logik strategi adalah jelas, mudah difahami dan dilaksanakan
  6. Mempunyai syarat kemasukan dan keluar yang jelas, mengurangkan penilaian subjektif

Risiko Strategik

  1. Isyarat yang salah boleh berlaku dalam pasaran yang bergolak
  2. Tidak peka terhadap harga yang melanda seketika
  3. Kemungkinan kehilangan peluang perdagangan di tempat penting
  4. Keadaan trend yang tidak mengambil kira kitaran yang lebih besar
  5. Ia mungkin menyebabkan penarikan balik yang lebih besar apabila pasaran berubah-ubah.

Cadangan kawalan risiko:

  1. Tetapkan kedudukan hentian yang munasabah
  2. Parameter penyesuaian mengikut keadaan pasaran yang berbeza
  3. Tambah penapis trend
  4. Pertimbangan untuk memasukkan indikator kadar turun naik

Arah pengoptimuman strategi

  1. Memperkenalkan mekanisme pengoptimuman parameter penyesuaian
  2. Menambahkan lebih banyak syarat penapis persekitaran pasaran
  3. Optimumkan mekanisme henti dan henti
  4. Penambahan penunjuk kadar turun naik untuk menyesuaikan diri dengan keadaan pasaran yang berbeza
  5. Pertimbangkan untuk menyertai mekanisme pengurusan lokasi
  6. Meningkatkan analisis jumlah transaksi

ringkaskan

Ini adalah sistem perdagangan yang lengkap yang menggabungkan pelbagai petunjuk teknikal dan analisis kitaran masa yang banyak. Strategi mencari peluang perdagangan melalui analisis komprehensif mengenai penembusan tinggi dan rendah dalam sehari, trend rata-rata dan aliran dana. Walaupun terdapat risiko tertentu, strategi ini mempunyai nilai aplikasi yang baik melalui kawalan risiko yang munasabah dan penambahbaikan pengoptimuman yang berterusan.

Kod sumber strategi
/*backtest
start: 2024-10-28 00:00:00
end: 2024-11-27 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(title='The security Daily HIGH/LOW strategy', overlay=true, initial_capital=10000, calc_on_every_tick=true, 
         default_qty_type=strategy.percent_of_equity, default_qty_value=100, 
         commission_type=strategy.commission.percent, commission_value=0.1)

// General Inputs
len = input.int(24, minval=1, title='Length MA', group='Optimization parameters')
src = input.source(close, title='Source MA', group='Optimization parameters')
out = ta.ema(src, len)

length = input.int(20, minval=1, title='CMF Length', group='Optimization parameters')
ad = close == high and close == low or high == low ? 0 : (2 * close - low - high) / (high - low) * volume
mf = math.sum(ad, length) / math.sum(volume, length)

// Function to get daily high and low
f_secureSecurity(_symbol, _res, _src) =>
    request.security(_symbol, _res, _src[1], lookahead=barmerge.lookahead_on)

pricehigh = f_secureSecurity(syminfo.tickerid, 'D', high)
pricelow = f_secureSecurity(syminfo.tickerid, 'D', low)

// Plotting previous daily high and low
plot(pricehigh, title='Previous Daily High', style=plot.style_linebr, linewidth=2, color=color.new(color.white, 0))
plot(pricelow, title='Previous Daily Low', style=plot.style_linebr, linewidth=2, color=color.new(color.white, 0))

// Entry Conditions
short = ta.crossunder(low, pricelow) and close < out and mf < 0
long = ta.crossover(high, pricehigh) and close > out and mf > 0

if short and barstate.isconfirmed
    strategy.entry('short', strategy.short, stop=pricelow[1])
    strategy.close('short', when=close > out)

if long and barstate.isconfirmed
    strategy.entry('long', strategy.long, stop=pricehigh[1])
    strategy.close('long', when=close < out)

// 200 EMA on 1-hour timeframe
ema_200 = ta.ema(close, 200)
ema_200_1h = request.security(syminfo.tickerid, "60", ta.ema(close, 200))

plot(ema_200_1h, color=color.purple, title="200 EMA (1H)")
plot(ema_200, color=color.white, title="200 EMA")