Strategi perdagangan kuantitatif berdasarkan purata pergerakan tinggi dan rendah


Tarikh penciptaan: 2023-09-19 15:53:55 Akhirnya diubah suai: 2023-09-19 15:53:55
Salin: 0 Bilangan klik: 626
1
fokus pada
1617
Pengikut

Gambaran keseluruhan

Strategi ini menentukan masa untuk membeli dan menjual dengan mengira purata bergerak sederhana dari titik tinggi dan rendah dan membandingkannya dengan harga penutupan semasa. Matlamatnya adalah untuk menangkap isyarat harga yang menembusi garis rata-rata untuk mendapatkan peluang awal untuk trend.

Prinsip Strategi

  1. Hitung purata bergerak sederhana dengan ketinggian 4

  2. Pengiraan purata bergerak sederhana dengan panjang 4

  3. Apabila harga penutupan menembusi garis purata tertinggi, masukkan lebih banyak

  4. Apabila harga penutupan menembusi garis purata titik rendah, masuklah ke dalam kedudukan kosong

  5. Menguruskan risiko menggunakan strategi berhenti dan berhenti tetap

Analisis kelebihan

  1. Menggunakan Indikator Sederhana dan Mudah Difahami

  2. Menerima isyarat harga yang melampaui garis purata

  3. Anda boleh menyaring kebisingan dengan cepat dan mengenal pasti trend.

  4. Perhitungan kecil dapat mengurangkan penggunaan strategi

  5. Strategi berasaskan keserasian untuk diperluaskan

Analisis risiko

  1. Tetapan parameter yang munasabah diperlukan untuk mengelakkan sensitiviti yang berlebihan

  2. Tidak dapat menangani risiko yang dihadapkan oleh kejayaan besar

  3. Terdapat beberapa risiko risiko lebihan tergempar.

  4. Tidak dapat menyesuaikan kedudukan stop loss secara automatik

  5. Sukar untuk menilai jangka masa trend

Arah pengoptimuman

  1. Uji kesan parameter yang berbeza terhadap kualiti isyarat

  2. Menambah syarat penapisan untuk memastikan kejayaan

  3. Analisis Trend untuk Mengelakkan Kecurangan

  4. Membangunkan strategi hentian kerugian dinamik

  5. Mengoptimumkan mekanisme penangguhan kerugian dan meningkatkan peluang strategi

  6. Strategi pengujian kekuatan pada kitaran yang berbeza

ringkaskan

Strategi ini memberikan idea perdagangan trend asas melalui dinamik harga penunjuk yang mudah. Logik perdagangan yang dapat diperluaskan, dapat berkembang menjadi sistem kuantitatif yang lebih mantap. Secara keseluruhan, strategi ini mudah dipraktikkan dan sesuai sebagai strategi permulaan perdagangan kuantitatif.

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

//@version=3
strategy("HiLo", overlay=true)

// Testing a specific period
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(4, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)

testStopYear = input(2017, "Backtest Stop Year")
testStopMonth = input(5, "Backtest Stop Month")
testStopDay = input(1, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)

// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false


//HiLo Strategy
length = input(4, minval=0)
displace = input(0, minval=0)
highsma = sma(high, length)
lowsma = sma(low, length)

longCondition = close > highsma[displace]
if (longCondition)
    strategy.entry("long", true)

shortCondition = close < lowsma[displace]
if (shortCondition)
    strategy.entry("short", false)

// Exit seems with a problem. it keeps saying the order's limit (2000) was reached even if I back test it just for a day. 
// If the two lines bellow are commented, then it it works. Anyone? Any idea what's wrong?

// strategy.exit("exit", "long", profit=10, loss=5)
// strategy.exit("exit", "short", profit=10, loss=5)