Strategi ini mengadopsi pendekatan dual entry. Setelah entri pertama, jika harga tidak mencapai level take profit pertama, maka akan masuk lagi dengan harga yang lebih tinggi untuk mencapai efek penambahan posisi. Pada saat yang sama, strategi mengadopsi metode posisi rata-rata trailing stop loss untuk memperbarui garis stop loss secara real time dan mengaturnya ke persentase tertentu di atas harga masuk rata-rata untuk mengunci keuntungan dan mengendalikan risiko.
Strategi pertama menilai apakah harga berada di bawah rata-rata bergerak sederhana 200 hari. Jika ya, kriteria masuk dipenuhi. Strategi masuk antara pukul 14:29 dan 15:00 setiap hari untuk membentuk entri pertama. Setelah itu, strategi akan memetakan garis take profit dan stop loss pertama.
Jika harga naik tetapi tidak mencapai target take profit pertama, maka akan masuk kembali 5% di atas harga masuk pertama untuk menambah posisi. Pada titik ini, strategi akan memperbarui garis stop loss menjadi 1,15 kali harga holding rata-rata saat ini. Pada saat yang sama, baris take profit kedua akan digariskan.
Strategi ini dapat mengunci keuntungan melalui dua target mengambil keuntungan dan stop loss, sementara mendapatkan lebih banyak keuntungan melalui penambahan posisi.
Strategi ini memiliki keuntungan berikut:
Mengadopsi metode tambahan dua entri dapat memperoleh pengembalian yang lebih tinggi tanpa meningkatkan risiko.
Pembaruan real-time posisi stop loss line. Posisi rata-rata metode stop loss trailing dapat secara efektif mengendalikan risiko dan mengunci keuntungan.
Membuka posisi dalam downtrend, ia memiliki kemampuan perdagangan countertrend tertentu.
Waktu dan harga masuk yang wajar menghindari terperangkap.
Pengaturan parameter yang wajar, mengambil keuntungan yang ketat dan tingkat stop loss berarti rasio risiko-manfaat yang tinggi.
Strategi ini juga memiliki beberapa risiko:
Jika kedua entri akhirnya mencapai stop loss, kerugian akan lebih besar.
Jika tingkat stop loss ditetapkan dengan tidak benar, hal itu mungkin gagal untuk mengontrol risiko secara efektif dan menyebabkan kerugian yang tidak dapat diterima.
Jika waktu masuk dipilih dengan buruk, hal itu dapat mengakibatkan masuk yang merugikan dan kemungkinan terperangkap yang lebih tinggi.
Pengaturan parameter yang tidak masuk akal seperti mengambil keuntungan terlalu jauh atau stop loss terlalu dekat dapat mengurangi keuntungan.
Risiko-risiko ini dapat dikurangi dan dihindari melalui optimasi parameter yang wajar dan pengendalian risiko yang ketat.
Strategi ini juga dapat dioptimalkan dalam aspek berikut:
Uji indikator teknis yang berbeda sebagai sinyal masuk untuk menemukan titik masuk yang lebih baik.
Uji dan optimalkan tingkat keuntungan dan stop loss untuk memaksimalkan rasio risiko-manfaat.
Uji metode tambahan yang berbeda untuk menentukan kelipatan tambahan yang optimal.
Tambahkan aturan penilaian tren untuk menghindari entri kontra-tren.
Mengoptimalkan pemilihan periode waktu masuk untuk memastikan tidak ada entri yang merugikan.
Secara keseluruhan, strategi ini sangat praktis dan memiliki signifikansi praktis yang kuat. Metode tambahan entri ganda dapat memperoleh pengembalian yang lebih tinggi sambil mengendalikan risiko. Posisi rata-rata stop loss dapat mengunci keuntungan dan mengendalikan risiko secara efektif. Dengan optimasi parameter yang wajar dan kontrol risiko yang ketat, strategi ini dapat mencapai Alpha yang stabil dan konsisten.
/*backtest start: 2023-11-23 00:00:00 end: 2023-11-28 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // @version=4 strategy("8 Whittle Down", "8 WD", 1, initial_capital=0) // DUAL ENTRIES // ADDS ON MORE SHARES IF THE PILOT TRADE DOES NOT REACH PROFIT TARGET // RED LINE == STOP LOSS LINE // GREEN LINE == PROFIT TARGET FOR THE 1ST TRADE // YELLOW LINE == ADD ON SHARES TO THE TRADE // WHITE LINE == PROFIT TARGET FOR THE 1ST & SECOND TRADE COMBINED StopLossPerc = input(1.15, "Total Stop Loss", step=0.01) T2EntTrgPerc = input(1.05, "Enter Second trade @ what higher 5%?", step=0.01) // BUY STOP LIMIT ONLY WHEN ONE TRADE IS ALREADY OPEN & AIMS TO BUY DOUBLE THE OWNED SHARES AT A HIGHER ENTRY PRICE // YELLOW LINE T1ProfTrgPerc = input(0.95, "First Trade Profit % Target", step=0.01) T2ProfTrgPerc = input(0.90, "Second Trade Profit % Target", step=0.01) RiskRange = close*(StopLossPerc)-1 Shares = floor(1000*1000/RiskRange) / 3 // SPLITS THE RISK OVER THREE TRADES F1 = close < sma(security(syminfo.tickerid, "D", close[2]), 200) // HIGH OF OLD DATA -- SO NO REPAINTING F2 = strategy.opentrades == 0 buyTime = time(timeframe.period, "1429-1500") // BUY AT THE END OF THE DAY StopLossLine = strategy.position_avg_price * StopLossPerc StopLossCol = strategy.opentrades != 0 ? #FF0000 : na plot(StopLossLine, "StopLossLine", StopLossCol, 2) strategy.cancel_all() // CANCELS ALL ORDERS: BECAUSE THE SYSTEM WILL ADD A BUY STOP LIMIT ORDER FOR ENTRY TWO ///============== ENTRY 1 ============== if F1 and buyTime and strategy.opentrades == 0 strategy.entry("S1", false, qty=Shares) T1Prof = strategy.position_avg_price * T1ProfTrgPerc plot(T1Prof, "1st Profit Target", strategy.opentrades == 1 ? #00FF00 : na, 2) strategy.exit("S1 Ex", "S1", limit=T1Prof, stop=StopLossLine ) ///============== ENTRY 2 ============== T2EntryTrg = strategy.position_avg_price * T2EntTrgPerc // enters on higher target than 1st entry plot(T2EntryTrg, "ent2EntryTrg", strategy.opentrades == 1 ? color.yellow : na, 2) if strategy.opentrades == 1 strategy.order("S2", false, stop=T2EntryTrg, limit= T2EntryTrg, qty=Shares * 2) // BUYS MORE SHARES T2Prof = strategy.position_avg_price * T2ProfTrgPerc T2Col = strategy.opentrades == 2 ? color.white : na plot(T2Prof, "2nd Profit Target", T2Col, 2) strategy.exit("S2 Ex", "S2", limit=T2Prof, stop=StopLossLine )