Model pemantauan purata bergerak berganda

Penulis:ChaoZhang, Tarikh: 2023-10-17 16:33:29
Tag:

img

Ringkasan

Strategi ini menggunakan gabungan purata bergerak eksponensial (EMA) dan penunjuk crossover purata bergerak (MACD) untuk mengenal pasti stok yang terlalu dinilai dalam jangka pendek dan mengambil kedudukan pendek untuk mendapat keuntungan daripada penurunan harga. Strategi ini memanfaatkan sepenuhnya keupayaan EMA untuk bertindak balas dengan cepat terhadap perubahan harga dan kekuatan MACD dalam memantau arah momentum, menangkap peluang keuntungan jangka pendek pada titik perubahan antara lembu dan beruang.

Logika Strategi

  1. Hitung EMA 8 hari dan EMA 26 hari. Apabila EMA 8 hari melintasi di atas EMA 26 hari, ia dianggap isyarat beli.

  2. Mengira MACD dengan 12 hari EMA, 26 hari EMA dan 9 hari EMA perbezaan yang dipanggil DEA. Apabila MACD melintasi di atas DEA, ia dianggap isyarat beli.

  3. Peraturan kemasukan: EMA 8 hari > EMA 26 hari dan MACD melintasi di atas DEA, lama apabila kedua-dua syarat dipenuhi.

  4. Peraturan Keluar: Tetapkan stop loss trailing pada 3% daripada harga masuk, stop loss trailing pada 1% daripada harga masuk, keluar apabila salah satu disentuh.

Strategi ini menggunakan kedua-dua tindak balas cepat EMA terhadap harga dan penghakiman MACD mengenai arah momentum, mengenal pasti titik perubahan utama dari lembu kepada beruang. EMA cepat mencerminkan pembetulan nilai intrinsik jangka pendek terhadap EMA yang lebih perlahan, sementara MACD mencerminkan perubahan dalam kuasa perdagangan menjangkakan arah purata bergerak, meningkatkan ketepatan menangkap peluang perdagangan menggunakan penunjuk dual.

Analisis Kelebihan

  1. Gabungan EMA dan MACD meningkatkan ketepatan menangkap isyarat dagangan. EMA menangkap trend harga manakala MACD menilai perubahan arah momentum, digabungkan mereka mengenal pasti ekstrem jangka pendek dan mengelakkan kerugian daripada pecah palsu.

  2. Stop loss trailing mengawal risiko dan keluar tepat pada masanya.

  3. Data backtest yang kukuh, strategi diuji melalui keseluruhan pasaran beruang pada tahun 2022, mensimulasikan persekitaran perdagangan sebenar.

  4. Rasio stop loss, nisbah saiz kedudukan boleh disesuaikan untuk memenuhi pilihan risiko peribadi.

Analisis Risiko

  1. Perdagangan yang kerap memerlukan pemantauan yang dekat. Jangka masa 5 minit bermakna kekerapan masuk dan keluar yang tinggi, yang memerlukan masa yang mencukupi untuk mengikuti perdagangan.

  2. Stop loss yang terlalu ketat boleh membawa kepada exit yang lebih awal.

  3. Prestasi yang lemah di pasaran yang berbeza. EMA dan MACD berfungsi dengan lebih baik untuk pasaran yang bertrend.

  4. Kos dagangan perlu dipertimbangkan. Setiap dagangan sepadan dengan komisen, perdagangan yang kerap meningkatkan kos.

Arahan pengoptimuman

  1. Sesuaikan parameter tempoh EMA untuk mengoptimumkan kemasukan dan keluar. Boleh menguji memendekkan tempoh EMA cepat, memperbesar spread antara EMA untuk mencari kombinasi yang optimum.

  2. Mengoptimumkan nisbah stop loss untuk mengurangkan risiko stop awal.

  3. Uji tempoh penyimpanan yang berbeza untuk mencari yang optimum.

  4. Menilai penambahan penapis teknikal lain. Uji penambahan indeks turun naik dan lain-lain untuk meningkatkan keberkesanan keputusan perdagangan.

Kesimpulan

Strategi perdagangan EMA dan MACD berganda ini bertujuan untuk menangkap peluang mundur jangka pendek untuk pendek dan keuntungan. Ia sepenuhnya menggunakan tindak balas cepat EMA dan kekuatan penghakiman perubahan momentum MACD untuk meningkatkan ketepatan dalam masa perdagangan dengan pengesahan berganda. Ruang pengoptimuman terletak pada penyesuaian parameter, kawalan slippage, tempoh pegangan dll. Pengoptimuman parameter yang teliti dapat membawa kepada pulangan yang baik.


/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Coinrule

//@version=5
// strategy('Fast EMA above Slow EMA with MACD (by Coinrule)',
//          overlay=true,
//          initial_capital=1000,
//          process_orders_on_close=true,
//          default_qty_type=strategy.percent_of_equity,
//          default_qty_value=30,
//          commission_type=strategy.commission.percent,
//          commission_value=0.1)

showDate = input(defval=true, title='Show Date Range')
timePeriod = time >= timestamp(syminfo.timezone, 2022, 1, 1, 0, 0)
notInTrade = strategy.position_size <= 0

// EMAs 
fastEMA = ta.ema(close, 8)
slowEMA = ta.ema(close, 26)
plot(fastEMA, color = color.blue)
plot(slowEMA, color = color.green)
//buyCondition1 = ta.crossover(fastEMA, slowEMA)
buyCondition1 = fastEMA > slowEMA


// DMI and MACD inputs and calculations
[macd, macd_signal, macd_histogram] = ta.macd(close, 12, 26, 9)
buyCondition2 = ta.crossover(macd, macd_signal)


// Configure trail stop level with input options
longTrailPerc = input.float(title='Trail Long Loss (%)', minval=0.0, step=0.1, defval=3) * 0.01
shortTrailPerc = input.float(title='Trail Short Loss (%)', minval=0.0, step=0.1, defval=1) * 0.01

// Determine trail stop loss prices
longStopPrice = 0.0
shortStopPrice = 0.0

longStopPrice := if strategy.position_size > 0
    stopValue = close * (1 - longTrailPerc)
    math.max(stopValue, longStopPrice[1])
else
    0

shortStopPrice := if strategy.position_size < 0
    stopValue = close * (1 + shortTrailPerc)
    math.min(stopValue, shortStopPrice[1])
else
    999999
    

if (buyCondition1 and buyCondition2 and notInTrade and timePeriod)
    strategy.entry(id="Long", direction = strategy.long)

strategy.exit(id="Exit", stop = longStopPrice, limit = shortStopPrice)


//if (sellCondition1 and sellCondition2 and notInTrade and timePeriod)
//strategy.close(id="Close", when = sellCondition1 or sellCondition2)

Lebih lanjut