Strategi perdagangan kuantitatif berdasarkan nisbah isyarat kepada hingar dan purata bergerak


Tarikh penciptaan: 2024-01-02 12:24:35 Akhirnya diubah suai: 2024-01-02 12:24:35
Salin: 1 Bilangan klik: 868
1
fokus pada
1621
Pengikut

Strategi perdagangan kuantitatif berdasarkan nisbah isyarat kepada hingar dan purata bergerak

1. Nama strategi

Strategi perdagangan purata bergerak isyarat-ke-bunyi

Kedua, gambaran strategi

Strategi ini mengimplementasikan perdagangan kuantitatif dengan mengira nisbah bising dalam jangka masa tertentu, dan kemudian menggabungkan isyarat perdagangan linear.

  1. Mengira nisbah bising pada kitaran tertentu (boleh set)
  2. Rasio bising komunikasi menggunakan rata-rata kelancaran
  3. Bandingkan nisbah bising mesej semasa dengan nilai garis purata, menghasilkan isyarat dagangan
  4. Melakukan banyak atau kosong mengikut isyarat perdagangan

Ketiga, asas strategi

  1. Rasio isyarat-kebisingan (Signal to Noise Ratio) adalah StN = -10*log(Σ(1/close)/n) n ialah panjang kitaran
  2. Rasio bising surat menggunakan purata bergerak sederhana (SMA) untuk mendapatkan nisbah bising surat yang licin
  3. Bandingkan nisbah bising StN semasa dengan nisbah bising SMStN: (1) Jika SMAStN > StN, kosongkan (2) Jika SMAStN < StN, buat lebih (3) Jika tidak, bersihkan.

Keempat, Analisis Keunggulan Strategi

Strategi ini mempunyai kelebihan utama:

  1. Rasio bising boleh menilai turun naik dan risiko pasaran, dan SMA mempunyai fungsi penghapusan bising
  2. Menggabungkan nisbah bising surat untuk menilai risiko pasaran dan SMA untuk menghasilkan isyarat perdagangan, menggunakan kelebihan indikator yang berbeza
  3. Anda boleh menetapkan strategi penyesuaian parameter untuk menyesuaikan keadaan pasaran yang berbeza
  4. Stdout signal boleh mengarahkan lebih banyak shorting, intuitif menilai ciri-ciri pasaran

Analisis Risiko Strategik

Strategi ini mempunyai beberapa risiko:

  1. Risiko kesalahan kedudukan dalam penilaian rasio bising dan rentas purata
  2. Pengaturan kitaran yang tidak betul boleh menyebabkan isyarat palsu
  3. Peluang kosong yang agak sedikit, boleh disesuaikan dengan parameter untuk pengoptimuman
  4. Kejadian mendadak menyebabkan turun naik yang kuat yang boleh mencetuskan kemusnahan.

Penyelesaian risiko:

  1. Sesuaikan parameter garis purata untuk mengelakkan terlalu halus
  2. Optimumkan parameter kitaran untuk menguji kesesuaian pasaran yang berbeza
  3. Menyesuaikan syarat-syarat kerja sambilan untuk menyediakan lebih banyak peluang kerja sambilan
  4. Tetapkan stop loss untuk mengawal kerugian maksimum

Keenam, Strategi Optimasi

Strategi ini boleh dioptimumkan dengan:

  1. Uji lebih banyak jenis garis rata
  2. Peningkatan risiko kawalan dalam mekanisme penangguhan
  3. Menambah pengurusan kedudukan, menyesuaikan kedudukan mengikut turun naik
  4. Menambah kestabilan strategi dengan lebih banyak faktor penilaian
  5. Mengoptimumkan parameter secara automatik menggunakan kaedah pembelajaran mesin

VII

Strategi ini menilai risiko turun naik pasaran melalui nisbah haba dan bising, dan menggunakan garis rata untuk menghasilkan isyarat perdagangan, untuk mencapai perdagangan kuantitatif. Strategi ini mengintegrasikan kelebihan nisbah haba dan bising dan SMA masing-masing berbanding dengan satu petunjuk teknikal, meningkatkan kestabilan sambil mengawal risiko. Dengan cara pengoptimuman parameter dan pembelajaran mesin, strategi ini mempunyai banyak ruang untuk penambahbaikan, merupakan strategi perdagangan kuantitatif yang dipercayai dan berkesan.

Kod sumber strategi
/*backtest
start: 2023-12-25 00:00:00
end: 2023-12-29 10:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © HPotter 05/01/2021
// The signal-to-noise (S/N) ratio. 
// And Simple Moving Average.
// Thank you for idea BlockchainYahoo
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors. 
////////////////////////////////////////////////////////////
SignalToNoise(length) =>
    StN = 0.0
    for i = 1 to length-1
        StN := StN + (1/close[i])/length
    StN := -10*log(StN)

strategy(title="Backtest Signal To Noise ", shorttitle="StoN", overlay=false)
length = input(title="Days", type=input.integer, defval=21, minval=2)
Smooth =  input(title="Smooth", type=input.integer, defval=7, minval=2)
reverse = input(false, title="Trade reverse")
StN = SignalToNoise(length)
SMAStN = sma(StN, Smooth)
pos = iff(SMAStN[1] > StN[1] , -1,
	   iff(SMAStN[1] < StN[1], 1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1 , 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )
plot(StN, title='StN' )
plot(SMAStN, title='Smooth', color=#00ff00)