Strategi pergerakan stop loss secara beransur-ansur adalah strategi yang mudah tetapi sangat berguna yang mengingatkan anda untuk secara beransur-ansur memindahkan stop loss apabila harga meningkat.
Strategi ini mula-mula menetapkan stop loss awal pada 95% daripada harga kemasukan apabila mengambil kedudukan panjang. Ia kemudian menentukan beberapa tahap stop loss yang lebih tinggi pada 100%, 105%, 110% dan sebagainya dari harga kemasukan. Strategi ini memeriksa sama ada paras terendah 7 hari yang lalu telah memecahkan tahap stop loss sebelumnya. Jika ya, stop loss ditetapkan pada tahap yang lebih tinggi. Oleh itu apabila harga meningkat, stop loss juga secara beransur-ansur bergerak ke atas.
Secara khusus, strategi menentukan 8 tahap stop loss pada 95%, 100%, 105%, 110%, 115%, 120%, 125%, 130% daripada harga masuk. Ia memeriksa sama ada paras terendah dalam 7 hari terakhir berada di atas paras stop loss seterusnya. Jika ya, stop loss ditetapkan pada tahap yang lebih tinggi.
Sebagai contoh, jika harga kemasukan adalah $ 100, stop loss awal adalah $ 95. Jika paras terendah dalam 7 hari yang lalu meningkat kepada $ 105, di atas stop loss seterusnya $ 100, stop loss ditetapkan kepada $ 100. Jika terus meningkat kepada $ 115, stop loss ditetapkan kepada $ 105, dan sebagainya.
Apabila harga meningkat, stop loss bergerak ke atas secara beransur-ansur juga, merealisasikan stop loss secara beransur-ansur untuk melindungi beberapa keuntungan.
Kelebihan terbesar strategi stop loss beransur-ansur ini adalah bahawa ia boleh menaikkan stop loss secara beransur-ansur apabila harga meningkat, untuk melindungi beberapa keuntungan dan mengelakkan stop loss dipukul dan kehilangan semua keuntungan dengan segera.
Berbanding dengan hentian penarikan biasa, hentian kehilangan secara beransur-ansur tidak menghasilkan hasil yang terlalu optimis dalam backtests. Kerana hentian penarikan biasa akan bergerak ke bawah hentian kehilangan dengan serta-merta apabila harga menarik balik, melangkau proses penarikan dan terus ke kenaikan seterusnya. Tetapi penarikan tidak boleh dilewatkan dalam perdagangan sebenar. Ini menjadikan hentian penarikan biasa tidak dapat mencapai hasil yang sama dalam perdagangan langsung seperti dalam backtests.
Strategi stop loss secara beransur-ansur bergerak ke atas stop loss langkah demi langkah. jadi ia boleh mencerminkan proses sebenar pergerakan stop loss dalam perdagangan langsung dengan lebih realistik dalam backtest, mengelakkan hasil yang terlalu optimis.
Juga, strategi ini menyediakan arahan untuk memodifikasi stop loss, membolehkan peniaga memodifikasinya secara manual.
Risiko terbesar strategi ini adalah bahawa pergerakan stop loss mungkin tidak dapat mengikuti kenaikan harga yang sangat cepat. Jika harga meningkat dengan mendadak dalam tempoh yang sangat singkat, melebihi beberapa tahap stop loss, stop loss hanya dapat bergerak perlahan, tidak dapat melindungi keuntungan dengan tepat pada masanya.
Risiko lain ialah peniaga mungkin terlepas atau menunda masa pengubahsuaian stop loss. Strategi hanya memberikan arahan untuk memodifikasi stop loss. Penyesuaian sebenar masih bergantung pada operasi manual peniaga. Mengabaikan atau menunda pengubahsuaian boleh menyebabkan stop loss dipukul.
Strategi ini boleh ditingkatkan dengan cara berikut:
Mengoptimumkan tetapan peratusan stop loss untuk lebih sesuai dengan turun naik instrumen dagangan tertentu.
Mengoptimumkan parameter tempoh melihat kembali untuk terendah terendah, seperti 5 atau 10 hari, untuk menyesuaikan diri dengan turun naik yang berbeza.
Meningkatkan bilangan tahap stop loss untuk pergerakan yang lebih beransur-ansur.
Tambah logik untuk juga bergerak ke atas tahap mengambil keuntungan.
Mengotomatiskan operasi pengubahsuaian stop loss untuk mengurangkan kesukaran dan risiko kelewatan.
Tambah amaran untuk pelanggaran stop loss untuk mengelakkan peniaga terlepas peristiwa tersebut.
Strategi pergerakan stop loss secara beransur-ansur adalah idea strategi yang mudah tetapi berguna. Ia boleh menaikkan stop loss secara beransur-ansur apabila harga meningkat untuk melindungi keuntungan sambil mengelakkan hasil backtest yang terlalu optimis. Berbanding dengan berhenti trailing biasa, ia lebih sesuai untuk perdagangan sebenar dan lebih mudah dilaksanakan merentasi platform. Dengan mengoptimumkan parameter seperti peratusan stop loss, tempoh low lookback terendah, bilangan tahap berhenti dan lain-lain, ia boleh disesuaikan dengan instrumen perdagangan yang berbeza. Digabungkan dengan pelaksanaan stop loss automatik dan mengambil keuntungan trailing, ia dapat mengurangkan kesukaran operasi dan risiko.
/*backtest start: 2023-10-13 00:00:00 end: 2023-11-12 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 ///Moving Stops Script/// ///by ShanghaiCryto/// ///A simple, but very useful, script that reminds you to move up your stop losses as price trends upwards. /// ///The sma entry is just stock code to demonstrate how the stop works./// ///Doesn't throw off your backtesting the way a trailing stop does./// strategy("Move Up Stops", overlay=true) longCondition = crossover(sma(close, 14), sma(close, 28)) if (longCondition) strategy.entry("My Long Entry Id", strategy.long) first_stop = strategy.position_avg_price * .95 second_stop = strategy.position_avg_price third_stop = strategy.position_avg_price * 1.05 fourth_stop = strategy.position_avg_price * 1.1 fifth_stop = strategy.position_avg_price * 1.15 sixth_stop = strategy.position_avg_price * 1.2 seventh_stop = strategy.position_avg_price * 1.25 eighth_stop = strategy.position_avg_price * 1.3 move_trigger = lowest(low,7) first_check = na first_check := move_trigger > second_stop ? second_stop : first_stop second_check = na second_check := move_trigger > third_stop ? third_stop : first_check third_check = na third_check := move_trigger > fourth_stop ? fourth_stop : second_check fourth_check = na fourth_check := move_trigger > fifth_stop ? fifth_stop : third_check fifth_check = na fifth_check := move_trigger > sixth_stop ? sixth_stop : fourth_check sixth_check = na sixth_check := move_trigger > seventh_stop ? seventh_stop : fifth_check stop_level = na stop_level := move_trigger > eighth_stop ? eighth_stop : sixth_check strategy.exit("Stop Loss","My Long Entry Id", stop=stop_level) plot(stop_level, color=red)