Strategi Perdagangan Kuantitatif Purata Pergerakan Eksponen Berganda


Tarikh penciptaan: 2024-02-02 11:41:34 Akhirnya diubah suai: 2024-02-02 11:41:34
Salin: 0 Bilangan klik: 632
1
fokus pada
1617
Pengikut

Strategi Perdagangan Kuantitatif Purata Pergerakan Eksponen Berganda

Gambaran keseluruhan

Strategi ini menghasilkan isyarat perdagangan dengan mengira persilangan purata bergerak indeks 5 hari (EMA) dan purata bergerak mudah 20 hari (SMA). Apabila 5 hari EMA melintasi SMA 20 hari, masuk ke dalam pelbagai pilihan dengan penarikan; apabila perubahan harga mencapai 5% atau -5%, keluar dari kedudukan yang kosong. Strategi ini digabungkan dengan indeks jumlah perdagangan (TII) sebagai penunjuk penilaian tambahan.

Prinsip Strategi

Rata-rata bergerak dua indeks adalah satu petunjuk teknikal yang digunakan secara meluas. EMA 5 hari mewakili trend perubahan harga terkini, dan SMA 20 hari mewakili pergerakan harga jangka menengah. Apabila rata-rata jangka pendek melintasi rata-rata jangka panjang, menunjukkan pergerakan harga dengan turun naik, anda boleh masuk lebih banyak; sebaliknya, apabila rata-rata jangka pendek melintasi rata-rata jangka panjang, menunjukkan harga dengan turun naik, anda harus mempertimbangkan untuk keluar.

Strategi ini menetapkan 5 hari EMA dan 20 hari SMA sebagai isyarat perdagangan. Menghasilkan isyarat kedudukan panjang apabila 5 hari EMA melintasi SMA 20 hari. Apabila perubahan harga memegang mencapai 5% atau -5%, dianggap sebagai keuntungan atau kerugian.

Langkah-langkah strategi terperinci adalah seperti berikut:

  1. Pengiraan EMA 5 hari, SMA 20 hari dan TII
  2. Apabila 5 hari EMA melintasi SMA 20 hari, sementara TII adalah positif dan lebih besar daripada kitaran sebelumnya, menghasilkan isyarat beli
  3. Memasuki kedudukan panjang
  4. Apabila perubahan harga mencapai 5% atau -5%, keluar dari kedudukan kosong

Kelebihan Strategik

Strategi ini menggunakan isyarat perdagangan silang emas pada purata bergerak dan mempunyai kelebihan berikut:

  1. Isyarat strategi mudah, jelas dan mudah dilaksanakan.
  2. Rata-rata bergerak adalah satu petunjuk teknikal yang utama dan biasa digunakan, dan silang emas adalah isyarat dagangan yang lebih dipercayai.
  3. Gabungan dengan TII dapat menyaring sebahagian daripada isyarat ketidakpastian dan meningkatkan peluang kemenangan strategi.
  4. Dengan menetapkan standard stop loss dan stop loss, risiko perdagangan tunggal dapat dikawal dengan berkesan.

Secara keseluruhannya, peraturan strategi ini jelas, mudah difahami dan dilaksanakan, menggunakan petunjuk teknikal yang matang seperti persilangan purata bergerak, langkah-langkah kawalan risiko yang lebih komprehensif, dan merupakan strategi perdagangan kuantitatif yang sesuai untuk digunakan oleh pemula.

Risiko Strategik

Strategi ini juga mempunyai beberapa risiko, terutamanya:

  1. Sinyal persilangan purata bergerak akan mengalami kelewatan.
  2. Indeks TII kurang berkesan dalam pengiraan.
  3. Standard penangguhan kerosakan yang ditetapkan mungkin terlalu berat.

Risiko ini boleh dikurangkan dengan:

  1. Optimumkan parameter purata bergerak untuk mengurangkan kelewatan isyarat.
  2. Menambah petunjuk tambahan untuk meningkatkan kebolehpercayaan isyarat.
  3. Tetapkan parameter Henti Kerosakan Dinamik.

Oleh itu, terdapat ruang untuk pengoptimuman strategi ini.

Arah pengoptimuman strategi

Strategi ini boleh dioptimumkan dalam beberapa aspek:

  1. Mengoptimumkan parameter purata bergerak. Anda boleh menguji kombinasi parameter EMA dan SMA yang lebih pendek atau lebih panjang untuk mencari pasangan parameter yang lebih baik.

  2. Tambah penapis untuk petunjuk lain. Penghakiman tambahan untuk petunjuk seperti MACD, KDJ dan sebagainya dapat mengelakkan beberapa isyarat yang salah.

  3. Menggunakan algoritma pembelajaran mesin. Menggunakan kaedah statistik atau rangkaian saraf untuk memodelkan data sejarah, secara automatik mencari parameter yang lebih baik.

  4. Tetapkan Hentian Kerosakan Dinamik. Mengubah lebar Hentian Kerosakan mengikut tahap turun naik pasaran dan ciri-ciri saham individu dapat mengawal risiko dengan lebih baik.

  5. Perluaskan kepada jenis lain. Peraturan strategi yang sama digunakan untuk jenis lain seperti mata wang asing, mata wang digital.

Dengan melakukan beberapa penambahbaikan di atas, anda dapat meningkatkan kestabilan dan keuntungan strategi anda.

ringkaskan

Strategi ini secara keseluruhannya adalah strategi silang purata bergerak yang mudah difahami dan dilaksanakan. Ia menggunakan kelebihan isyarat purata bergerak, dan ditambah dengan indikator TII untuk mencuba menyaring isyarat yang salah.

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

//@version=5
strategy("EMA-SMA Crossover Strategy", shorttitle="EMA-SMA Cross", overlay=true)

// Define the moving averages
ema5 = ta.ema(close, 5)
sma20 = ta.sma(close, 20)
smaVolume10 = ta.sma(volume, 50)

majorLength = input(60, title="Major Length")
minorLength = input(30, title="Minor Length")
src = input(close, title="Source")

smaValue = ta.sma(src, majorLength)

positiveSum = 0.0
negativeSum = 0.0

for i = 0 to minorLength - 1
    price = na(src[i]) ? 0 : src[i]
    avg = na(smaValue[i]) ? 0 : smaValue[i]
    positiveSum := positiveSum + (price > avg ? price - avg : 0)
    negativeSum := negativeSum + (price > avg ? 0 : avg - price)

tii = 100 * positiveSum / (positiveSum + negativeSum)

// Buy condition: 5 EMA crosses above 20 SMA
buyCondition = ta.crossover(ema5, sma20) and tii > 0 and tii >= tii[1]

//and volume > smaVolume10 //

// Track entry price
var entryPrice = 0.0
if (buyCondition)
    entryPrice := close

// Calculate percentage change from entry price
priceChange = close / entryPrice - 1

// Plotting the moving averages on the chart
plot(ema5, color=color.blue, title="5 EMA")
plot(sma20, color=color.red, title="20 SMA")

// Highlighting buy signals and exit signals on the chart
// plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, size=size.small, style=shape.labelup, text="Buy")

// Strategy entry and exit
if (buyCondition)
    strategy.entry("Buy", strategy.long)

// Exit conditions
if (strategy.opentrades > 0)
    if (priceChange >= 0.05 or priceChange <= -0.05)
        strategy.close("Buy")