Strategi Perdagangan Kuantitatif Sederhana Berdasarkan Arah Lilin

Penulis:ChaoZhang, Tanggal: 2023-09-15 11:45:01
Tag:

Artikel ini menjelaskan secara rinci strategi perdagangan kuantitatif sederhana yang hanya didasarkan pada arah lilin.

I. Logika Strategi

Strategi murni menilai arah berdasarkan tutup lilin, dengan logika adalah:

  1. Pergi panjang ketika dekat lebih besar dari terbuka.

  2. Pindah pendek ketika dekat kurang dari terbuka.

  3. Ukuran posisi dapat dikonfigurasi.

  4. Rentang tanggal backtest dapat diatur.

Dengan hanya menentukan candles menutup ke atas atau ke bawah, tren paling dasar mengikuti sinyal terbentuk.

II. Keuntungan dari Strategi

Keuntungan terbesarnya adalah kesederhanaan dan intuisi yang ekstrim, hanya menilai berdasarkan arah lilin tanpa indikator.

Keuntungan lain adalah kemampuan untuk mengendalikan risiko melalui ukuran posisi.

Akhirnya, rentang waktu backtest dapat diatur untuk menguji periode yang berbeda.

III. Potensi Risiko

Namun, ada beberapa masalah:

Pertama, hanya arah lilin tidak cukup untuk penilaian pasar yang akurat, sehingga kualitas sinyal yang buruk.

Kedua, kurangnya stop loss dan take profit gagal mengendalikan risiko perdagangan.

Akhirnya, tidak adanya pengaturan parameter menyebabkan ketidakstabilan.

IV. Ringkasan

Secara singkat, artikel ini telah menjelaskan strategi perdagangan kuantitatif sederhana yang didasarkan murni pada arah lilin. Ini membentuk sistem lengkap melalui analisis hubungan harga yang paling dasar. Tetapi perlu perbaikan seperti optimasi parameter dan penambahan stop. Secara keseluruhan, ini memberikan konsep strategi yang sangat sederhana dan primitif.


/*backtest
start: 2023-08-15 00:00:00
end: 2023-09-02 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("BarUpDn time limited", overlay=true, pyramiding=1, default_qty_type = strategy.fixed, default_qty_value = 1 )

//input boxes for the limit date
yearLimit = input(2016,title="year") 
monthLimit = input(9, title="month")
dayLimit = input(1, title="day")

//function that checks if the current date is more recent than the limit
dateOk(yl,ml,dl) =>
    ok = timestamp(yl,ml,dl,0,1) < time
    
checkDate = dateOk(yearLimit,monthLimit,dayLimit)
conditionUp = close > open ? true : false
conditionDown = close < open ? true : false
if ( checkDate  )
    strategy.entry("BarUp", strategy.long, when = conditionUp)
    strategy.entry("BarDn", strategy.short, when = conditionDown)





Lebih banyak