
Gagasan inti dari strategi ini adalah menemukan tanggal pembelian terbaik setiap bulan, dengan membeli aset digital pada tanggal ini dan menjualnya pada akhir bulan, untuk mencapai pengembalian investasi yang optimal. Strategi ini cocok untuk investor yang ingin mendapatkan keuntungan ekstra dari fluktuasi harga dalam sehari.
Strategi ini berjalan sesuai dengan tanggal pembelian dan tanggal penjualan setiap bulan yang ditetapkan oleh pengguna. Jika Anda melakukan pembelian pada hari pembelian, Anda akan melakukan perdagangan pada hari penjualan. Jika Anda tidak melakukan perdagangan, Anda akan melakukan perdagangan pada hari akhir strategi.
Logika penilaian sinyal beli adalah: Jika tanggal pembelian yang ditetapkan pengguna, dan dalam batas tanggal efektifitas strategi, maka bukalah lebih banyak opsi.
Logika penilaian sinyal posisi kosong adalah: Jika tanggal penjualan ditetapkan dan tanggal penjualan, posisi kosong; Jika tanggal penjualan tidak ditetapkan tetapi melampaui tanggal akhir strategi, posisi kosong juga.
Risiko penurunan harga setelah pembelian
Risiko perubahan tanggal pembelian terbaik
Resiko kerugian akibat kesalahan pengaturan
Menentukan titik pembelian dengan faktor-faktor tambahan
Optimalkan mekanisme manajemen posisi
Berkembang ke Pasar Transaksi Lainnya
Strategi ini dapat memberikan keuntungan ekstra bagi investor yang mencari keuntungan dari perdagangan frekuensi tinggi dalam sehari. Langkah selanjutnya adalah dengan memperkenalkan lebih banyak faktor untuk menentukan waktu pembelian, mengoptimalkan manajemen posisi, dan memperluas pasar aplikasi, strategi ini dapat meningkatkan stabilitas dan tingkat keuntungan.
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © dennis.decoene
//@version=4
strategy(title="Buy and Hold, which day of month is best to buy?", overlay=true)
// Make input options that configure backtest date range
startDate = input(title="Start Date", type=input.integer,
defval=1, minval=1, maxval=31, group="Starting From")
startMonth = input(title="Start Month", type=input.integer,
defval=1, minval=1, maxval=12, group="Starting From")
startYear = input(title="Start Year", type=input.integer,
defval=2021, minval=1800, maxval=2100, group="Starting From")
endDate = input(title="End Date", type=input.integer,
defval=2, minval=1, maxval=31, group="Until")
endMonth = input(title="End Month", type=input.integer,
defval=10, minval=1, maxval=12, group="Until")
endYear = input(title="End Year", type=input.integer,
defval=2021, minval=1800, maxval=2100, group="Until")
entryday = input(title="Entry Day", type=input.integer,
defval=26, minval=1, maxval=31, tooltip="When to enter (buy the asset) each month")
exitday = input(title="Exit Day", type=input.integer,
defval=6, minval=1, maxval=31, tooltip="When to exit (sell the asset) each month")
useExitDay= input(title="Close position on exit day?", type=input.bool, defval=false, tooltip="Use the Exit Day to close each months position it true or close at the end of the period (if false)")
isEntryDay= (dayofmonth(time)==entryday)
isExitDay= (dayofmonth(time)==exitday-1)
inDateRange = true
if (isEntryDay and inDateRange)
strategy.entry(id="Buy", long=true)
if (isExitDay and useExitDay)
strategy.close_all()
// Exit open market position when date range ends
if (not inDateRange and not useExitDay)
strategy.close_all()