Strategi break-out rata-rata bergerak titik tunggal adalah strategi perdagangan kuantitatif yang didasarkan pada Osilator Momentum Chande. Ini mendeteksi ketika pasar berada dalam fase konsolidasi dengan menghitung perubahan momentum harga. Ketika garis Momentum Chande melintasi di atas garis beli atau jatuh di bawah garis jual, perdagangan panjang atau pendek akan dilaksanakan sesuai.
Strategi pertama menghitung perubahan momentum hargamomm
, kemudian memisahkannya menjadi momentum positifm1
dan momentum negatifm2
. Selanjutnya, jumlah momentum positif dan negatif selama periode melihat kembali kesm1
dansm2
Akhirnya, Chande Momentum OscillatorchandeMO
Indikator berosilasi di sekitar garis nol. pembacaan di atas nol menunjukkan momentum naik yang lebih kuat, sementara pembacaan di bawah nol menunjukkan momentum turun yang lebih kuat.
Ketika garis Chande Momentum melintasi di atas garis beli dari level yang lebih rendah, itu menandakan bahwa harga sedang keluar dari tren penurunan dan siap untuk memulai tren naik. Strategi akan panjang. Ketika garis jatuh di bawah garis jual dari level yang lebih tinggi, posisi pendek akan dimulai.
Beberapa cara untuk meningkatkan termasuk menggunakan garis beli / jual dinamis, menyaring sinyal dengan indikator lain, dan menerapkan stop loss untuk mengendalikan risiko.
Strategi breakout rata-rata bergerak titik tunggal mengidentifikasi titik balik tren dari downtrend ke konsolidasi ke uptrend menggunakan Chande Momentum Oscillator, yang memungkinkan perdagangan jual tinggi beli rendah. Meskipun sederhana dan intuitif, peningkatan dalam penyesuaian parameter, penyaringan sinyal dan pengendalian risiko dapat lebih meningkatkan kinerja. Secara keseluruhan, ini berfungsi sebagai alat yang efektif bagi pedagang kuantitatif untuk menentukan pembalikan tren.
/*backtest start: 2024-01-02 00:00:00 end: 2024-02-01 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //* Backtesting Period Selector | Component *// //* https://www.tradingview.com/script/eCC1cvxQ-Backtesting-Period-Selector-Component *// //* https://www.tradingview.com/u/pbergden/ *// //* Modifications made *// testStartYear = input(2021, "Backtest Start Year") testStartMonth = input(1, "Backtest Start Month") testStartDay = input(10, "Backtest Start Day") testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0) testStopYear = input(999999, "Backtest Stop Year") testStopMonth = input(9, "Backtest Stop Month") testStopDay = input(26, "Backtest Stop Day") testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0) testPeriod() => true /////////////// END - Backtesting Period Selector | Component /////////////// strategy(title="Chande Momentum Strat", shorttitle="ChandeMO Strat", format=format.price, precision=2) length = input(9, minval=1) src = input(close, "Price", type = input.source) momm = change(src) f1(m) => m >= 0.0 ? m : 0.0 f2(m) => m >= 0.0 ? 0.0 : -m m1 = f1(momm) m2 = f2(momm) sm1 = sum(m1, length) sm2 = sum(m2, length) percent(nom, div) => 100 * nom / div chandeMO = percent(sm1-sm2, sm1+sm2) plot(chandeMO, "Chande MO", color=color.blue) hline(0, color=#C0C0C0, linestyle=hline.style_dashed, title="Zero Line") buyline= input(-80) sellline= input(80) hline(buyline, color=color.gray) hline(sellline, color=color.gray) if testPeriod() if crossover(chandeMO, buyline) strategy.entry("Long", strategy.long, alert_message="a=ABCD b=buy e=binanceus q=1.2 s=uniusd") // strategy.exit(id="Long Stop Loss", stop=strategy.position_avg_price*0.8) //20% stop loss if crossunder(chandeMO, sellline) strategy.entry("Short", strategy.short, alert_message="a=ABCD b=sell e=binanceus q=1.2 s=uniusd") // strategy.exit(id="Short Stop Loss", stop=strategy.position_avg_price*1.2) //20% stop loss // remember to alert as {{strategy.order.alert_message}}