Regresi linier dan strategi jangka pendek rata-rata pergerakan ganda


Tanggal Pembuatan: 2024-01-26 12:33:14 Akhirnya memodifikasi: 2024-01-26 12:33:14
menyalin: 0 Jumlah klik: 689
1
fokus pada
1617
Pengikut

Regresi linier dan strategi jangka pendek rata-rata pergerakan ganda

Ringkasan

Strategi ini memungkinkan operasi pelacakan garis pendek dengan menggabungkan indikator regresi linier dengan rata-rata bergerak indeks ganda. Strategi ini didasarkan pada posisi kosong saat harga menerobos ke bawah, posisi kosong saat harga menerobos kembali. Strategi ini juga menggunakan rata-rata bergerak indeks ganda untuk menilai tren harga sebagai kondisi tambahan untuk membangun posisi.

Prinsip Strategi

Strategi ini menilai terobosan harga terutama melalui indikator regresi linier. Indikator regresi linier adalah naik turunnya harga berdasarkan harga tertinggi dan terendah dalam periode tertentu, yang dihitung dengan menggunakan metode regresi linier. Ketika harga melintasi dari atas ke bawah atau dari bawah ke bawah, kami menganggapnya sebagai sinyal perdagangan.

Selain itu, strategi ini juga diperkenalkan untuk menentukan pergerakan rata-rata indeks biner untuk menentukan tren tengah. Rata-rata bergerak indeks biner dapat lebih cepat menanggapi perubahan harga. Ketika harga bergerak dari atas ke bawah, jika saat ini rata-rata bergerak indeks biner sudah berada di atas harga, yang menunjukkan bahwa saat ini sedang dalam tren menurun, maka kita membangun posisi kosong.

Secara khusus, strategi ini mencakup beberapa poin utama:

  1. Perhitungan regresi linier atas dan bawah rel
  2. Perhitungan rata-rata bergerak dua indeks
  3. Posisi short position dibuat ketika harga bergerak di bawah rel dari atas dan bila moving average dua digit lebih tinggi dari harga
  4. Bila harga kembali menembus jalur atas atau di atas rata-rata bergerak dua digit, maka posisi shorting dihapus.

Analisis Keunggulan

Strategi ini memiliki beberapa keunggulan dibandingkan dengan indikator tradisional seperti moving average:

  1. Indikator Regresi Linear dapat menangkap perubahan harga lebih cepat dan lebih efektif sebagai sinyal untuk membangun saham
  2. Rata-rata bergerak indeks ganda lebih sensitif terhadap tren dan menghindari terobosan palsu
  3. Kombinasi indikator dan kondisi ganda dapat menyaring beberapa kebisingan dan membuat perdagangan lebih stabil

Analisis risiko

Strategi ini juga memiliki beberapa risiko yang perlu diperhatikan:

  1. Indikator Regresi Linear sensitif terhadap parameter, dan siklus yang berbeda dapat menghasilkan hasil yang berbeda
  2. Rata-rata bergerak dua digit dapat menyimpang dan membuat kesalahan penilaian
  3. Strategi terobosan dapat meningkatkan risiko slippage
  4. Posisi terbuka sering terjadi dalam situasi yang bergejolak

Untuk risiko di atas, kita dapat mengatasi dengan metode seperti pengoptimalan parameter, penutupan ketat, dan pelepasan yang tepat dari amplitudo penembusan.

Arah optimasi

Strategi ini juga dapat dioptimalkan dalam beberapa hal:

  1. Mengoptimalkan siklus regresi linier dan siklus rata-rata bergerak dua indeks untuk menemukan kombinasi parameter yang optimal
  2. Menambahkan penilaian skala harga untuk menghindari sinyal yang salah dari terobosan kecil
  3. Kondisi tambahan seperti peningkatan volume transaksi untuk memastikan terobosan efektif
  4. Setting Stop Loss Levels untuk Mengurangi Kerugian Tunggal
  5. Parameter penyesuaian untuk varietas tertentu

Meringkaskan

Strategi ini menggunakan indikator regresi linier dan rata-rata bergerak indeks ganda secara komprehensif, yang memiliki beberapa keunggulan dalam teori dan praktik. Dengan terus-menerus mengoptimalkan penyesuaian, stabilitas dan efektivitas strategi dapat ditingkatkan lebih lanjut. Strategi ini cocok untuk operasi garis pendek dan dapat menghasilkan alpha yang lebih baik untuk pedagang kuantitatif.

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

//@version=4
strategy('LR&SSL_Short', overlay=true)
startP = timestamp(input(2017, "Start Year"), input(12, "Month"), input(17, "Day"), 0, 0)
end   = timestamp(9999,1,1,0,0)
_testPeriod() => true

len = input(title="Period", defval=89)
smaHigh = linreg(high, len, 0)
smaLow = linreg(low, len, -1)
Hlv = 0.0
Hlv := close > smaHigh ? 1 : close < smaLow ? -1 : Hlv[1]
sslDown = Hlv < 0 ? smaHigh : smaLow
sslUp = Hlv < 0 ? smaLow : smaHigh

plot(sslDown, linewidth=2, color=color.red)
plot(sslUp, linewidth=2, color=color.lime)



length = input(200, title="DEMA") 
d1 = ema(close, length)                                               
d2 = 2 * d1 - ema(d1, length)                                         
trendColour = d2 > d1 ? #AAFFAA : #FFAAAA 
dema=sma(d2,length) 

turnGreen = d2 > d1 and d2[1] <= d1[1]  
turnRed   = d2 <= d1 and d2[1] > d1[1]  

up =turnGreen 
down=turnRed 
  
plotshape(down, title="down", style=shape.triangledown,location=location.abovebar, color=color.red, transp=0, size=size.small) 
plotshape(up,  title="up", style=shape.triangleup,location=location.belowbar, color=color.green, transp=0, size=size.small) 
plot(dema, color = trendColour,linewidth=3 ,transp = 0)
bgcolor(close > dema ? color.green : color.red)

strategy.entry("short", strategy.short, when= crossunder(sslUp, sslDown) and dema > close and _testPeriod())
strategy.close("short", when = crossover(sslUp, sslDown) or crossover(close, dema))