Supertrend Moving Stop Loss Take Profit adalah strategi perdagangan kuantitatif berdasarkan indikator Supertrend. Strategi ini membangun kondisi masuk dan keluar yang panjang dan pendek untuk menerapkan stop loss dan move take profit. Keuntungan dari strategi ini adalah dapat mencapai keuntungan yang lebih tinggi dalam tren berkelanjutan, sementara mengunci sebagian besar keuntungan melalui move take profit. Namun, strategi ini juga sensitif terhadap kegagalan pecah.
Strategi ini adalah strategi yang mengikuti tren berdasarkan indikator Supertrend. Indikator Supertrend dapat menentukan arah tren harga. Ini menghasilkan sinyal beli dan jual ketika garis Supertrend melintasi garis 0. Secara khusus, sinyal beli dihasilkan ketika garis Supertrend melintasi di atas garis 0; sinyal jual dihasilkan ketika garis melintasi di bawah garis 0. Rasio antara harga penutupan dan harga penutupan hari sebelumnya menentukan titik profit take bergerak. ATR menentukan titik stop loss. Dengan demikian, strategi stop loss profit take bergerak dibangun berdasarkan indikator Supertrend untuk menentukan arah tren.
Keuntungan terbesar dari strategi ini adalah kombinasi dari identifikasi tren dan bergerak mengambil keuntungan. Indikator Supertrend dapat menangkap tren dengan sangat akurat melalui penyeberangan garis 0. Memindahkan mengambil keuntungan memungkinkan mengunci sebagian besar keuntungan sementara tren berlangsung. Pengaturan stop loss juga membantu mengendalikan risiko. Dengan demikian, strategi dapat mencapai keuntungan yang lebih tinggi di pasar tren yang jelas. Selain itu, logika yang sederhana dan jelas juga merupakan keuntungan dari strategi.
Risiko terbesar dari strategi ini adalah sensitivitasnya terhadap kegagalan breakout. Pada periode yang terikat kisaran, indikator Supertrend dapat menghasilkan breakout palsu yang mengakibatkan posisi yang ditetapkan secara salah. Ini dapat dengan mudah menyebabkan terjebak dalam perangkap. Juga, mekanisme mengambil keuntungan bergerak dapat keluar posisi terlalu awal, kehilangan langkah berikutnya. Akhirnya, pengaturan stop loss yang tidak tepat juga bisa terlalu longgar atau terlalu agresif, meningkatkan risiko. Dengan demikian, ini adalah area yang perlu diperhatikan oleh strategi.
Strategi dapat dioptimalkan dari aspek-aspek berikut: 1) Menentukan parameter Supertrend secara wajar untuk menghindari sinyal palsu; 2) Menambahkan mekanisme untuk menilai keandalan breakout, seperti sinyal volume; 3) Mengoptimalkan parameter bergerak mengambil keuntungan untuk mengurangi kemungkinan whipsaw sambil memastikan profitabilitas; 4) Menggunakan stop dinamis berbasis volatilitas alih-alih stop statis; 5) Menambahkan indikator lain untuk strategi ensemble untuk meningkatkan ketahanan.
Secara keseluruhan, strategi Supertrend Moving Stop Loss Take Profit adalah strategi trend berikut yang layak. Ini dapat dengan wajar menentukan arah tren dan memiliki mekanisme profit take move. Tapi juga sensitif terhadap breakout yang tidak valid dan memiliki beberapa risiko. Optimasi lebih lanjut parameter, aturan penilaian, mekanisme stop dll dapat meningkatkan strategi dan menjadikannya strategi perdagangan yang stabil dan efisien.
/*backtest start: 2023-01-01 00:00:00 end: 2024-01-07 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("ST Michael Moving TP", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=15) // Stop loss and profit amount stop_loss = input(1500, title="Stop Loss Amount") profit = input (15000, title="Profit Amount") LongTrailProfit = input (0.91, title = "Long Trailing Profit Taking") ShortTrailProfit = input (1.01, title = "Short Trailing Profit Taking") atrPeriod = input(10, "ATR Length") factor = input.float(3.0, "Factor", step = 0.01) [_, direction] = ta.supertrend(factor, atrPeriod) long_condition = ta.change(direction) <0 short_condition = ta.change(direction) >0 stop_price_long = ta.valuewhen(long_condition, low[0]-stop_loss,0) profit_price_long = ta.valuewhen(long_condition, high[0]+profit,0) stop_price_short = ta.valuewhen(short_condition, high[0]+stop_loss,0) profit_price_short = ta.valuewhen(short_condition, low[0]-profit,0) atr=ta.atr(10) intrade_long = strategy.position_size > 0 intrade_short = strategy.position_size < 0 exitConditionLong = (close < (close[1]*LongTrailProfit)) exitConditionShort = (close > (close[1]*ShortTrailProfit)) if (long_condition) strategy.entry("Long3", strategy.long) if (intrade_long and exitConditionLong) strategy.close("Long3") if (short_condition) strategy.entry("Short3", strategy.short) if (intrade_short and exitConditionShort) strategy.close ("Short3") if (strategy.position_size>0) strategy.exit("exit_long",from_entry="Long3",limit=profit_price_long,stop=stop_price_long) if (strategy.position_size<0) strategy.exit("exit_short",from_entry="Short3",limit=profit_price_short,stop=stop_price_short)