Strategi arah garis K yang dinamis


Tanggal Pembuatan: 2023-10-25 16:57:05 Akhirnya memodifikasi: 2023-10-25 16:57:05
menyalin: 0 Jumlah klik: 643
1
fokus pada
1617
Pengikut

Strategi arah garis K yang dinamis

Ringkasan

Strategi ini menggunakan analisa harga penutupan N-root K-line di masa lalu yang lebih tinggi / lebih rendah dari harga bukaan, untuk menentukan arah K-line di masa depan. Bergantung pada banyaknya posisi kosong di arah K-line, lakukan lebih banyak atau melakukan operasi kosong.

Prinsip Strategi

Logika inti dari strategi ini adalah:

  1. Setel parameter NUM_CANDLES untuk menentukan jumlah baris K yang perlu dianalisis.

  2. Tentukan fungsi candle_dir, untuk menentukan arah dari satu garis K. close>open adalah multihead, close

  3. Tentukan fungsi count_candles untuk menghitung jumlah garis K yang berbeda arah pada garis K akar NUM_CANDLES sebelumnya.

  4. Menghitung jumlah multihead, blankhead, dan getaran K yang tersimpan di ups, dns, neu di root K KANDLES yang lalu.

  5. Tentukan indikator indic, yang nilainya sama dengan ups-dns ditambah nilai positif-negatif dari neu。

  6. Menurut indikator indic, ada waktu untuk melakukan lebih banyak dan waktu untuk tidak melakukan lebih banyak.

Strategi ini membuat keputusan perdagangan dengan mempertimbangkan arah sejumlah K-line untuk menentukan kemungkinan arah K-line di masa depan. Dengan parameter NUM_CANDLES, Anda dapat mengontrol jumlah K-line statistik dan menyesuaikan sensitivitas strategi.

Analisis Keunggulan Strategi

  1. Strategi yang jelas dan mudah dipahami, mudah diartikan dan diverifikasi.

  2. Tidak perlu menghitung indikator yang rumit, hanya membutuhkan data K-line, mengurangi biaya perhitungan.

  3. Dengan parameter yang dapat disesuaikan dengan jumlah garis K statistik, Anda dapat mengontrol sensitivitas strategi.

  4. Dapat digunakan dalam semua jenis dan siklus, sangat cocok.

  5. Optimalisasi parameter yang mudah, mencari kombinasi parameter yang optimal.

Analisis risiko

  1. Tidak dapat menangani pasar yang bergejolak, kemungkinan akan terjadi seringnya posisi terbuka dan posisi kosong.

  2. Siklus statistik yang tidak tepat dapat menyebabkan sinyal terlambat, parameter yang perlu diatur dengan wajar.

  3. Tidak dapat menangani perubahan tren, risiko kerugian yang mungkin terjadi akibat resesi.

  4. Perlu dipertimbangkan dampak dari biaya transaksi untuk mencegah terlalu seringnya transaksi.

  5. Perlu diperhatikan bahwa parameter yang dioptimalkan terlalu cocok dengan masalah, dan harus diverifikasi dengan lebih banyak umpan balik pasar.

Arah optimasi

  1. Anda dapat mempertimbangkan untuk menambahkan logika stop loss untuk mengurangi risiko kerugian.

  2. Untuk menghindari operasional berlawanan arah, indikator ini dapat digabungkan dengan indikator tren.

  3. Anda dapat meningkatkan siklus statistik atau menggunakan siklus rendah, mengoptimalkan parameter untuk meningkatkan stabilitas strategi.

  4. Untuk meningkatkan strategi kemenangan, perpaduan varietas dapat dipertimbangkan.

  5. Parameter optimasi otomatis yang dapat dikombinasikan dengan metode pembelajaran mesin.

Meringkaskan

Strategi ini didasarkan pada analisis arah K untuk menentukan arah perdagangan, ide yang jelas dan mudah dimengerti, dengan pengaturan parameter dapat mengontrol sensitivitas strategi. Keuntungan dari strategi ini adalah logika yang sederhana, penggunaan persyaratan yang rendah, luas aplikasi, tetapi juga ada risiko tertentu, perlu lebih lanjut dioptimalkan untuk meningkatkan stabilitas strategi. Secara keseluruhan, strategi ini menyediakan sebuah sederhana praktis trading ide untuk trading kuantitatif.

Kode Sumber Strategi
/*backtest
start: 2023-09-24 00:00:00
end: 2023-10-24 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Refined CandleCounter Strategy by origo", overlay=true)

// how many candles to count
NUM_CANDLES = 7

// determine candle direction
candle_dir = close > open ? 1 : (round(close-open) == 0 ? 0 : -1)

// return # of candles with a given direction
count_candles(dir, max) =>
    count = 0
    for i = 0 to max
        if candle_dir[i] == dir
            count := count + 1
    count

ups = count_candles(1, NUM_CANDLES)
dns = count_candles(-1, NUM_CANDLES)
neu = count_candles(0, NUM_CANDLES)

indic = ups-dns


if indic > 0
    indic := indic+neu
else
    indic := indic-neu

plotarrow(neu, title="UP vs DN")

longCondition = (indic) > 0
shortCondition = (indic) <= 0

strategy.entry("buy", strategy.long, 1, when = longCondition and not shortCondition)
strategy.entry("sell", strategy.short, 1, when = shortCondition and not longCondition)