Sumber dimuat naik... memuat...

Strategi Pembalikan Rata-rata

Penulis:ChaoZhang, Tarikh: 2024-06-17 14:57:59
Tag:SMADEVMA

img

Ringkasan

Strategi ini berdasarkan prinsip pembalikan purata, menggunakan penyimpangan harga dari purata bergerak untuk membuat keputusan perdagangan. Ia pergi pendek apabila harga menyimpang di atas jalur atas dan pergi panjang apabila ia menyimpang di bawah jalur bawah. Posisi ditutup apabila harga kembali ke purata bergerak. Asumsi utama strategi ini adalah bahawa harga akan selalu kembali ke tahap purata.

Prinsip Strategi

  1. Mengira purata bergerak mudah (SMA) untuk tempoh tertentu (default 20) sebagai tahap harga purata.
  2. Mengira penyesuaian standard (DEV) harga dan menggunakannya untuk membina band atas dan bawah. Band atas adalah SMA ditambah kelipatan (default 1.5) penyesuaian standard, dan band bawah adalah SMA dikurangkan kelipatan penyesuaian standard.
  3. Pergi pendek apabila harga melangkau band atas, dan pergi panjang apabila ia melangkau di bawah band bawah.
  4. Tutup kedudukan panjang apabila harga melintasi di bawah SMA, dan tutup kedudukan pendek apabila harga melintasi di atas SMA.
  5. Tandai purata bergerak, band atas, band bawah, dan isyarat beli / jual pada carta.

Analisis Kelebihan

  1. Strategi pembalikan purata adalah berdasarkan prinsip statistik bahawa harga sentiasa kembali kepada purata, yang mempunyai kebarangkalian keuntungan tertentu dalam jangka panjang.
  2. Tetapan jalur atas dan bawah menyediakan titik masuk dan keluar yang jelas, yang mudah untuk pelaksanaan dan pengurusan.
  3. Logik strategi adalah mudah dan jelas, mudah difahami dan dilaksanakan.
  4. Ia sesuai untuk instrumen dan kerangka masa yang menunjukkan ciri-ciri pembalikan purata yang jelas.

Analisis Risiko

  1. Apabila trend pasaran berubah, harga mungkin menyimpang dari purata untuk masa yang lama tanpa membalik, menyebabkan strategi gagal.
  2. Penentuan kelipatan penyimpangan standard yang tidak betul boleh menyebabkan kekerapan perdagangan terlalu tinggi atau terlalu rendah, yang mempengaruhi pulangan.
  3. Dalam keadaan pasaran yang melampau, turun naik harga boleh menjadi ganas, dan jalur atas dan bawah boleh kehilangan keberkesanannya.
  4. Jika instrumen atau jangka masa tidak mempunyai ciri-ciri pembalikan purata, strategi mungkin tidak menguntungkan.

Arahan pengoptimuman

  1. Melakukan ujian pengoptimuman pada tempoh SMA dan kelipatan penyimpangan standard untuk mencari parameter terbaik.
  2. Memperkenalkan penunjuk penilaian trend untuk mengelakkan perdagangan yang bertentangan dengan trend apabila trend jelas.
  3. Tambah penunjuk turun naik seperti ATR sebagai tambahan kepada penyimpangan piawai untuk membina jalur dinamik.
  4. Pertimbangkan kos dagangan seperti slippage dan komisen untuk mengawal keaslian backtesting.
  5. Tambah modul kawalan risiko, seperti stop-loss, mengambil keuntungan, dan pengurusan kedudukan.

Ringkasan

Strategi pembalikan purata adalah strategi perdagangan kuantitatif berdasarkan prinsip statistik, yang membuat keputusan perdagangan dengan membina jalur atas dan bawah di sekitar harga purata. Strategi ini mempunyai logika yang mudah dan pelaksanaan yang jelas, tetapi perhatian harus diberikan kepada pemilihan instrumen dan pengoptimuman parameter. Dalam aplikasi praktikal, faktor-faktor seperti trend, kos dagangan, dan kawalan risiko juga perlu dipertimbangkan untuk meningkatkan ketahanan dan keuntungan strategi. Secara umum, strategi pembalikan purata adalah perkara biasa dan layak dikaji secara mendalam dalam bidang perdagangan kuantitatif.


/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Mean Regression Strategy", overlay=true)

// Define the lookback period for the moving average
length = input.int(20, title="Moving Average Length")
mult = input.float(1.5, title="Standard Deviation Multiplier")

// Calculate the moving average and standard deviation
ma = ta.sma(close, length)
dev = mult * ta.stdev(close, length)

// Calculate upper and lower bands
upper_band = ma + dev
lower_band = ma - dev

// Plot the moving average and bands
plot(ma, color=color.blue, linewidth=2, title="Moving Average")
plot(upper_band, color=color.red, linewidth=2, title="Upper Band")
plot(lower_band, color=color.green, linewidth=2, title="Lower Band")

// Entry conditions
long_condition = ta.crossover(close, lower_band)
short_condition = ta.crossunder(close, upper_band)

// Exit conditions
exit_long_condition = ta.crossunder(close, ma)
exit_short_condition = ta.crossover(close, ma)

// Strategy orders
if (long_condition)
    strategy.entry("Long", strategy.long)
if (short_condition)
    strategy.entry("Short", strategy.short)

if (exit_long_condition)
    strategy.close("Long")
if (exit_short_condition)
    strategy.close("Short")

// Plot signals on the chart
plotshape(series=long_condition, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal")
plotshape(series=short_condition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal")


Berkaitan

Lebih lanjut