Ide inti dari strategi ini adalah untuk menjaga persentase investasi dari aset dalam portofolio tetap. Ketika nilai aset meningkat, investor menjual beberapa untuk mempertahankan persentase. Ketika turun, investor membeli lebih banyak untuk mengisi persentase. Strategi ini cocok untuk aset yang relatif stabil.
Strategi pertama menetapkan parameter persentase investasi persen_invested, yaitu persentase aset dalam portofolio.
Ketika posisi adalah 0, hitung kontrak untuk membeli berdasarkan persentase_diinvestasikan dan modal awal.
Saat memegang, bandingkan persentase jumlah yang diinvestasikan dengan persentase ekuitas yang diinvestasikan. Jika terlalu rendah, beli lebih banyak kontrak. Jika terlalu tinggi, jual kontrak.
Ulangi langkah 2 untuk menjaga persentase investasi tetap.
Memungkinkan kepemilikan jangka panjang aset stabil tanpa perdagangan yang sering.
Keuntungan dari fluktuasi aset.
Diversifikasi investasi di seluruh aset yang tidak berkorelasi mengurangi risiko portofolio.
Mencegah kerugian penuh dengan menghindari investasi penuh sebelum gelembung meledak.
Risiko kerugian yang lebih tinggi untuk aset volatile.
Perdagangan yang sering berarti biaya yang lebih.
Re-balancing mungkin terlambat, kehilangan titik masuk/keluar terbaik.
Pengaturan persentase yang salah dapat menyebabkan overtrading.
Risiko dapat dikurangi dengan:
Memilih aset dengan hati-hati untuk menghindari volatilitas tinggi.
Mengoptimalkan logika rebalancing untuk mengurangi frekuensi perdagangan.
Menetapkan unit perubahan posisi minimum untuk mencegah overtrading.
Mengoptimalkan pengaturan persentase untuk mencegah konsentrasi yang berlebihan.
Strategi dapat ditingkatkan dengan:
Menambahkan logika stop loss untuk memotong kerugian di ambang batas tertentu.
Menambahkan validasi sinyal sebelum rebalancing untuk menghindari titik non-trend.
Persentase kustomisasi, stop loss rasio per aset.
Menambahkan modul optimasi parameter untuk menemukan parameter optimal.
Mendukung penutupan posisi untuk berinvestasi kembali ke aset lain untuk alokasi dinamis.
Strategi persentase tetap menyediakan diversifikasi dan pengendalian risiko. tetapi memiliki risiko seperti re-balancing yang tertinggal dan kerugian aset yang tidak stabil. perbaikan lebih lanjut untuk logika stop loss dan validasi sinyal dapat meningkatkan stabilitas.
/*backtest start: 2022-09-21 00:00:00 end: 2022-11-22 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 // strategy("Fixed Fractioning", overlay=true, initial_capital=100000.0) percent_invested=input(50.0,title="Percent Invested",maxval=100.0,minval=0.0) fraction_invested=percent_invested/100 from_day=input(1,title="From Day",maxval=31,minval=1) from_month=input(1,title="From Month",maxval=12,minval=1) from_year=input(2017,title="From Year",maxval=2018,minval=1900) to_day=input(1,title="To Day",maxval=31,minval=1) to_month=input(1,title="To Month",maxval=12,minval=1) to_year=input(2018,title="To Year",maxval=2018,minval=1900) // === FUNCTION EXAMPLE === from: https://www.tradingview.com/script/62hUcP6O-How-To-Set-Backtest-Date-Range/ start = timestamp(from_year, from_month, from_day, 00, 00) // backtest start window finish = timestamp(to_year, to_month, to_day, 23, 59) // backtest finish window window() => true // create function "within window of time" strategy.initial_capital = 50000 if strategy.position_size==0 and window() contracts_to_buy=(fraction_invested*strategy.initial_capital)/close strategy.entry("long",long=true,qty=contracts_to_buy,limit=close,when=contracts_to_buy>1) invested=(strategy.position_size*close)/strategy.equity if invested<fraction_invested and window() contracts_to_buy=((fraction_invested-invested)*strategy.equity)/close strategy.order("long",long=true,qty=contracts_to_buy,limit=close,when=contracts_to_buy>1) else if invested>fraction_invested and window() contracts_to_sell=((invested-fraction_invested)*strategy.equity)/close strategy.order("sell",long=false,qty=contracts_to_sell,limit=close,when=contracts_to_sell>1)