Strategi Perkiraan Gelombang Gaussian


Tanggal Pembuatan: 2024-01-22 12:37:07 Akhirnya memodifikasi: 2024-01-22 12:37:40
menyalin: 0 Jumlah klik: 655
1
fokus pada
1617
Pengikut

Strategi Perkiraan Gelombang Gaussian

Ringkasan

Strategi prediksi Gaussian Wave adalah strategi perdagangan kuantitatif yang didasarkan pada Gaussian Wave. Strategi ini memanfaatkan sifat halus dari Gaussian Wave untuk melakukan beberapa gelombang pada urutan harga, menghasilkan beberapa urutan harga yang telah diluruskan.

Prinsip Strategi

Inti dari strategi ini adalah algoritma Gaussian filter. Filter Gaussian adalah filter perataan linier yang menggunakan fungsi Gaussian sebagai bobot. Dalam strategi ini, parameter p ditetapkan sebagai ukuran jendela filter. Kemudian, dengan fungsi segitiga, koefisien filter alpha dihitung.[i] adalah hasil dari i kali Gaussian pada urutan harga awal.

Strategi ini menggunakan pemikiran yang berulangkali. Pertama, menggunakan alpha dan harga asli dari price, untuk menghitung first filter wave ret. Kemudian, berdasarkan ret, untuk melakukan second filter wave, untuk mendapatkan ret2 berulang-ulang. Akhirnya, menggabungkan beberapa urutan harga, untuk membuat kurva untuk memprediksi harga masa depan ret4. Jika harga yang diprediksi lebih tinggi dari harga aktual saat ini, maka lakukan lebih banyak; Jika lebih rendah dari harga saat ini, maka lakukan kosong.

Dengan demikian, dengan beberapa gelombang, trend dapat dibuat lebih halus dan terkonsolidasi. Di samping itu, dengan kombinasi dari beberapa model terkonsolidasi, dapat diprediksi pergerakan harga dalam jangka pendek.

Analisis Keunggulan

Strategi ini memiliki keuntungan sebagai berikut:

  1. Menggunakan GOSSIP Wave Smooth Pricing. Dapat secara efektif menyaring kebisingan frekuensi tinggi, membuat strategi lebih stabil.

  2. Recursi filtering dilakukan beberapa kali. Hal ini dapat lebih cocok untuk tren harga dan lebih efektif dalam memprediksi.

  3. Harga berdasarkan prediksi pencocokan multi-modal. Dapat memodelkan pergerakan harga jangka pendek, sehingga menghasilkan sinyal perdagangan.

  4. Pertimbangan yang dilakukan dengan menggabungkan harga saat ini dengan harga yang diprediksi. Sinyal perdagangan digabungkan langsung dengan prediksi tren untuk menghindari kehilangan peluang perdagangan.

  5. Implementasi sederhana, mudah dipahami dan dioptimalkan. Dapat digunakan sebagai modul dasar untuk strategi frekuensi tinggi, memperluas indikator analisis lainnya.

Analisis risiko

Strategi ini juga memiliki risiko sebagai berikut:

  1. Filter Gaussian berfungsi untuk merampingkan perubahan harga yang tiba-tiba, dan mungkin melewatkan peluang perdagangan jangka pendek.

  2. Ada risiko over-fitting pada multifungsi. Jika pola perubahan harga berubah, ini dapat menyebabkan penurunan efektivitas peramalan.

  3. Ukuran jendela filter dan fit polynomial harus disesuaikan dengan baik. Jika tidak, mungkin gagal.

  4. Hanya mengandalkan harga bukaan sebagai sinyal perdagangan. Tidak dapat melakukan operasi perdagangan di dalam disk.

Arah optimasi

Strategi ini dapat dioptimalkan dengan:

  1. Menambahkan pelatihan model dan mekanisme pelatihan ulang jendela geser. Membuat parameter kebijakan disesuaikan secara dinamis, mengurangi risiko overfitting.

  2. Dengan lebih banyak indikator harga dan fitur. Berbagai input strategi, membuat prediksi lebih stabil.

  3. Meningkatkan mekanisme penghentian kerugian. Menetapkan rasio kerugian maksimum untuk menghindari kerugian besar dalam situasi ekstrem.

  4. Mengoptimalkan manajemen posisi. Mengatur posisi secara dinamis berdasarkan akurasi dan volatilitas perkiraan.

  5. Cobalah untuk membuat prediksi berdasarkan model pembelajaran mesin utama. Model pembelajaran mendalam seperti LSTM. Tingkatkan kemampuan prediksi strategi.

Meringkaskan

Secara keseluruhan, strategi ini adalah strategi kuantitatif frekuensi tinggi yang menggunakan Gaussian dan kecocokan multi-modal untuk membuat prediksi harga. Ini memiliki beberapa kelebihan, tetapi ada ruang untuk perbaikan. Dengan menggabungkan lebih banyak fitur, memperkenalkan modul dinamika, parameter, dan mekanisme penghentian kerugian, dapat mengoptimalkan efek strategi yang lebih baik.

Kode Sumber Strategi
/*backtest
start: 2023-01-15 00:00:00
end: 2024-01-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Gaussbot v1.0", overlay=true)

p = input(20, minval=1, title="Length")
price = input(open, title="Source")

pi=3.1415926535


w=2*pi/p
beta = (1 - cos(w))/(pow(1.414,2.0/3) - 1)
alfa = -beta + sqrt(beta*beta + 2*beta)
ret=  pow(alfa,4)*price+4*(1-alfa)*nz(ret[1])-6*pow(1-alfa,2)*nz(ret[2])+4*pow(1-alfa,3)*nz(ret[3])-pow(1-alfa,4)*nz(ret[4])
ret2 = pow(alfa,4)*ret+4*(1-alfa)*nz(ret2[1])-6*pow(1-alfa,2)*nz(ret2[2])+4*pow(1-alfa,3)*nz(ret2[3])-pow(1-alfa,4)*nz(ret2[4])
ret3 = pow(alfa,4)*ret2+4*(1-alfa)*nz(ret3[1])-6*pow(1-alfa,2)*nz(ret3[2])+4*pow(1-alfa,3)*nz(ret3[3])-pow(1-alfa,4)*nz(ret3[4])
ret4 = 3*ret-3*ret2+ret3


diff2 = nz(ret[1]) - nz(ret[2]) - (nz(ret[2]) - nz(ret[3]) )  
diff22 = nz(ret2[1]) - nz(ret2[2]) - (nz(ret2[2]) - nz(ret2[3]) ) 
diff23 = nz(ret3[1]) - nz(ret3[2]) - (nz(ret3[2]) - nz(ret3[3]) )  
diff24 = nz(ret4[1]) - nz(ret4[2]) - (nz(ret4[2]) - nz(ret4[3]) )  


longCondition =    price[0] - ret4[1]  > 0
shortCondition =  price[0] - ret4[1] < 0

if(longCondition and shortCondition)
    longCondition = longCondition[1]
    shortCondition = shortCondition[1]
if(longCondition==false and shortCondition==false)
    longCondition = longCondition[1]
    shortCondition = shortCondition[1]



if (longCondition==true and shortCondition == false) 
    strategy.entry("Gaussbot Long", strategy.long )
if (longCondition==false and shortCondition == true)
    strategy.entry("Gaussbot Short", strategy.short)