Strategi ini menggunakan indikator Parabolic SAR untuk mengidentifikasi titik balik dalam tren harga saham dan memasuki posisi panjang atau pendek ketika terjadi pembalikan.
Indikator inti dari strategi ini adalah Parabolic SAR. Indikator ini dapat mengidentifikasi tren naik dan turun dalam harga saham. Ketika harga naik, titik SAR tetap di bawah harga. Ketika harga turun, titik SAR melompat di atas harga. Strategi ini mendeteksi persilangan antara titik harga dan titik SAR sebagai sinyal perdagangan. Secara khusus, ketika garis harga melintasi di atas titik SAR dari bawah, sinyal masuk panjang dihasilkan. Ketika garis harga melintasi di bawah titik SAR dari atas, sinyal masuk pendek dipicu.
Kondisi panjangnya adalah:close
di atassar
, yang menunjukkan garis harga telah melintasi di atas titik SAR dari bawah, sinyal panjang.close
di bawahsar
Jadi logika inti dari strategi ini adalah untuk melacak titik inversi dalam momentum harga dan perdagangan pada crossover.
Keuntungan terbesar dari strategi ini adalah dapat secara otomatis mengidentifikasi titik balik dalam tren harga tanpa gangguan manual, menghindari kesalahan umum seperti mengejar puncak dan membunuh penurunan.
Selain itu, SAR bereaksi sensitif terhadap perubahan harga, menangkap pullback kecil tepat waktu. Ini penting untuk strategi yang menargetkan tingkat kemenangan tinggi dan perdagangan yang sering. Jadi strategi dapat menyesuaikan posisi secara otomatis untuk menghindari terjebak dalam pullback yang signifikan.
Risiko utama adalah SAR dapat bereaksi berlebihan terhadap osilasi harga kecil, menghasilkan sinyal palsu dan menyebabkan perdagangan yang berlebihan, meningkatkan biaya dan tergelincir.
Juga, dalam tren naik atau turun yang kuat, parameter SAR seperti nilai awal dan peningkatan dapat mempengaruhi akurasi dan ketepatan waktu menangkap pembalikan tren.
Ukuran posisi yang tidak tepat, bereaksi berlebihan terhadap sinyal SAR dapat menyebabkan fluktuasi eksposur, meningkatkan kesulitan praktis dalam perdagangan.
Strategi dapat dioptimalkan dalam aspek berikut:
Mengoptimalkan parameter SAR untuk akurasi sinyal yang lebih tinggi
Tambahkan filter untuk menghindari sinyal palsu yang disebabkan oleh SAR
Menggunakan ukuran posisi yang tepat dan stop loss untuk mengendalikan risiko
Masukkan filter tren untuk menghindari whipsaws di pasar yang berbeda
Mengoptimalkan harga masuk dan keluar dengan mempertimbangkan biaya dan slippage untuk meningkatkan efisiensi
Strategi ini terutama mengandalkan SAR untuk menentukan titik pembalikan tren. Ini memiliki kemampuan identifikasi tren yang dapat diandalkan. Ketika dioptimalkan, ini dapat berfungsi sebagai tren yang efektif mengikuti strategi dengan secara otomatis menyesuaikan posisi untuk menangkap pergerakan harga arah. Tetapi posisi berputar harus dikendalikan dan risiko sinyal palsu harus dikurangi.
/*backtest start: 2023-12-17 00:00:00 end: 2024-01-16 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Parabolic SAR Strategy", shorttitle="PSAR", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10) // Parabolic SAR settings start = input(0.02, title="Start") increment = input(0.02, title="Increment") maximum = input(0.2, title="Maximum") // Calculate Parabolic SAR sar = ta.sar(start, increment, maximum) // Plot Parabolic SAR on the chart plot(sar, color=color.red, title="Parabolic SAR") // Strategy logic longCondition = ta.crossover(close, sar) shortCondition = ta.crossunder(close, sar) // Execute strategy orders strategy.entry("Long", strategy.long, when=longCondition) strategy.entry("Short", strategy.short, when=shortCondition) // Plot buy and sell signals on the chart plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar, text="Buy") plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar, text="Sell") // Calculate equity manually equity = strategy.equity equity_str = str.tostring(equity) equity_plot = plot(equity, title="Equity", color=color.blue, linewidth=2) // Update equity plot only on bar close to avoid repainting issues label.new(bar_index, na, text=equity_str, style=label.style_none, color=color.blue, yloc=yloc.abovebar)