Strategi pelaburan kuantitatif berdasarkan tarikh pembelian bulanan


Tarikh penciptaan: 2023-11-24 14:10:23 Akhirnya diubah suai: 2023-11-24 14:10:23
Salin: 0 Bilangan klik: 593
1
fokus pada
1617
Pengikut

Strategi pelaburan kuantitatif berdasarkan tarikh pembelian bulanan

Gambaran keseluruhan

Idea teras strategi ini adalah untuk mencari tarikh pembelian terbaik setiap bulan, dengan membeli aset digital pada tarikh ini dan menjualnya pada akhir bulan, untuk mencapai pulangan pelaburan yang optimum. Strategi ini sesuai untuk pelabur yang ingin memanfaatkan turun naik harga dalam sehari untuk mendapatkan keuntungan tambahan.

Prinsip Strategi

Strategi ini berjalan mengikut tarikh beli dan jual setiap bulan yang ditetapkan oleh pengguna. Jika anda membeli pada hari pembelian, anda akan membeli pada hari penjualan. Jika anda tidak menetapkan tarikh penjualan, anda akan menetap pada hari akhir strategi.

Logik penilaian untuk isyarat beli adalah: jika ia adalah tarikh pembelian yang ditetapkan oleh pengguna, dan dalam tempoh tarikh berkuatkuasa strategi, maka lebih banyak pesanan dibuka.

Logik penghakiman isyarat kedudukan kosong adalah: jika anda menetapkan tarikh jual dan ia adalah tarikh jual, kedudukan kosong; jika anda tidak menetapkan tarikh jual tetapi melebihi tarikh akhir strategi, juga kedudukan kosong.

Kelebihan Strategik

  1. Mencari titik pembelian yang paling besar dalam turun naik harga bulanan untuk mendapatkan keuntungan tambahan dengan menggunakan dagangan harian yang kerap berlaku
  2. Anda boleh mencari titik pembelian terbaik dengan membandingkan tarikh pembelian yang berbeza
  3. Untuk menentukan tarikh terbaik untuk membeli, anda boleh menggabungkannya dengan peristiwa berita yang berlaku pada bulan tersebut.
  4. Anda boleh menetapkan tarikh jual yang berbeza untuk keseimbangan perdagangan garis pendek dan garis panjang

Risiko Strategik dan Penyelesaian

  1. Risiko kejatuhan harga selepas pembelian

    • Tetapkan titik henti untuk mengurangkan kerugian maksimum
    • Pilih pasangan yang mempunyai kecairan yang mencukupi untuk mengelakkan turun naik harga yang melampau
  2. Risiko perubahan tarikh pembelian terbaik

    • Memantau perubahan data sejarah dan menyesuaikan titik pembelian terbaik
    • Mengurangkan saiz kedudukan semasa tempoh risiko tinggi
  3. Risiko kerugian akibat kesilapan penyetempatan

    • Peringkat ujian parameter yang berbeza untuk membandingkan perbezaan pendapatan
    • Memilih jangka masa yang mewakili untuk ujian

Arah pengoptimuman strategi

  1. Menentukan titik pembelian dengan faktor-faktor tambahan

    • Berfikir tentang kesan berita utama pada harga
    • Analisis harga aset digital yang berkaitan
    • Menambah model pembelajaran mesin untuk menentukan masa terbaik untuk membeli
  2. Pengoptimuman mekanisme pengurusan kedudukan

    • Tetapkan titik tolak dinamika imbang
    • Mengubah saiz kedudukan mengikut kadar turun naik
    • Pertimbangkan untuk memegang kedudukan jangka panjang
  3. Meluas ke pasaran dagangan lain

    • Pasangan pertukaran mata wang digital yang lebih banyak digunakan
    • digunakan dalam pasaran saham, forex dan lain-lain
    • Menetapkan strategi perdagangan pasaran rantaian

ringkaskan

Strategi ini menguji perbezaan pendapatan yang dihasilkan oleh tarikh pembelian yang berbeza untuk mencari titik pembelian yang paling banyak turun naik harga setiap bulan. Ini boleh membawa keuntungan tambahan kepada pelabur yang mencari keuntungan dari perdagangan frekuensi tinggi dalam sehari. Langkah seterusnya dapat meningkatkan lagi kestabilan dan tahap keuntungan strategi dengan memperkenalkan lebih banyak faktor untuk menentukan masa pembelian, mengoptimumkan pengurusan kedudukan dan memperluaskan pasaran aplikasi.

Kod sumber strategi
/*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()