Strategi Regresi Linier Terbalik


Tanggal Pembuatan: 2023-12-29 17:15:07 Akhirnya memodifikasi: 2023-12-29 17:15:07
menyalin: 2 Jumlah klik: 722
1
fokus pada
1621
Pengikut

Strategi Regresi Linier Terbalik

Ringkasan

Strategi reversal linear regression adalah strategi trading reversal yang didasarkan pada fluktuasi harga. Strategi ini menggabungkan analisis reversal linear dan indikator AVERAGE TRUE RANGE, yang menetapkan kondisi untuk K-line naik secara berturut-turut atau K-line turun secara berturut-turut, dan melakukan operasi reversal ketika analisis reversal linear menilai harga berbalik.

Prinsip Strategi

Strategi ini pertama-tama menghitung kemiringan kemiringan regresi linier. Jika kemiringan regresi linier lebih besar dari atau sama dengan 0, berarti harga sedang dalam tren naik; Jika kurang dari 0, berarti harga sedang dalam tren turun. Dengan menggabungkan kontras antara harga penutupan dan harga pembukaan dari garis K terakhir, garis K terakhir naik atau turun.

Dengan mengatur jumlah K-line naik dan turun secara berurutan, Anda dapat mengontrol frekuensi transaksi. Jika Anda memutuskan bahwa K-line naik dan turun secara berurutan mencapai jumlah yang ditetapkan, Anda akan mendapatkan sinyal jual dengan kemiringan regresi linier kurang dari 0, dan Anda akan melakukan perdagangan berbalik di dekat titik tinggi. Jika Anda memutuskan bahwa K-line turun secara berurutan mencapai jumlah yang ditetapkan, Anda akan mendapatkan sinyal beli dengan kemiringan regresi linier lebih besar dari dan sama dengan 0, dan Anda akan melakukan perdagangan berbalik di dekat titik rendah.

Analisis Keunggulan

Strategi ini menggabungkan perdagangan tren dan reversal, yang memungkinkan untuk melakukan operasi reversal di dekat titik kunci, sehingga mendapatkan keuntungan setelah harga disesuaikan. Analisis regresi linier memberikan cara untuk menilai tren harga secara keseluruhan, menghindari reversal dengan nol atau lebih ketika harga masih terus naik atau turun.

Strategi ini menggabungkan beberapa indikator teknis untuk mengendalikan waktu perdagangan dengan lebih akurat dibandingkan dengan strategi pembalikan sederhana, yang dapat secara efektif menghindari risiko terobosan palsu dan meningkatkan probabilitas keuntungan.

Analisis risiko

Strategi ini terutama menghadapi risiko kegagalan reversal. Jika harga terus berjalan pada tren asalnya setelah menilai sinyal reversal harga, itu akan menyebabkan kerugian. Selain itu, analisis regresi linier dan pengaturan parameter indikator ATR juga akan berdampak pada keuntungan strategi.

Anda dapat mengontrol kerugian tunggal dengan menghentikan kerugian. Anda dapat menilai frekuensi fluktuasi pasar secara rasional, menyesuaikan jumlah K-line secara tepat, mengurangi frekuensi perdagangan. Anda dapat mengoptimalkan parameter siklus regresi linier dan parameter ATR, sehingga lebih sesuai dengan karakteristik varietas yang berbeda.

Arah optimasi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Menambahkan penilaian indikator teknis lainnya, yang dikombinasikan dengan indikator periode waktu yang berbeda, untuk meningkatkan akurasi penilaian. Misalnya, menambahkan MACD, Bollinger Band, dll.

  2. Menambahkan komponen pembelajaran mesin, mengoptimalkan parameter secara otomatis melalui algoritma, dan menyesuaikan aturan transaksi secara dinamis.

  3. Menerima mekanisme manajemen risiko, seperti manajemen dana, strategi stop loss, dan lain-lain, untuk mengendalikan risiko perdagangan.

  4. Mengoptimalkan portofolio, menggabungkan strategi dengan strategi yang tidak relevan lainnya, mengurangi overall withdrawal dan meningkatkan stabilitas.

  5. Perluasan ke lebih banyak varietas, evaluasi pengaturan parameter untuk varietas yang berbeda, membuat strategi lebih universal.

Meringkaskan

Strategi Reverse Linear Regression yang mengintegrasikan berbagai indikator teknis, melakukan operasi mundur ketika menentukan kapan harga berbalik, adalah strategi perdagangan mundur yang efektif. Strategi ini dapat memperluas ruang keuntungan lebih lanjut melalui pengoptimalan parameter dan penguatan manajemen risiko, dengan potensi perbaikan yang besar.

Kode Sumber Strategi
/*backtest
start: 2023-12-21 00:00:00
end: 2023-12-28 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Reverse Up/Down Strategy", currency=currency.USD, initial_capital=1000, pyramiding=2, default_qty_type=strategy.percent_of_equity, default_qty_value=100,overlay=true)

//User Options
consecutiveBarsUp   = input(title="Sell after how many bars up?",   type=input.integer, minval=1, defval=1)
consecutiveBarsDown = input(title="Buy after how many bars down?",  type=input.integer, minval=1, defval=1)
atrLength           = input(title="ATR Length",                     type=input.integer, minval=1, defval=14)
atrMult             = input(title="ATR Multiplier",                 type=input.float,   minval=0.1, defval=2.33)

//ATR Channel
adjustedATR     = sma(atr(atrLength),atrLength) * atrMult
longATR         = low - adjustedATR
shortATR        = high + adjustedATR
plot(shortATR,  title="Short ATR",  color=color.red)
plot(longATR,   title="Long ATR",   color=color.lime)


// This is the true linear regression slope rather than an approximation given by numerical differentiation
src = hlc3
len = input(defval=14, minval=1, title="Slope Length")
lrc = linreg(src, len, 0)
lrc1 = linreg(src, len,1)
lrs = (lrc-lrc1)

//Check if last candle was up or down
priceOpen = open
priceClose = close
longCondition = priceOpen > priceClose
shortCondition = priceOpen < priceClose
ups = 0.0
dns = 0.0

ups := shortCondition ? nz(ups[1]) + 1 : 0
dns := longCondition ? nz(dns[1]) + 1 : 0

if (shortCondition)
    strategy.close("buy", qty_percent=100, comment="Close")
    if (ups >= consecutiveBarsUp and lrs <= 0)
    	strategy.entry("sell", strategy.short, comment="Sell")
    	

if (longCondition)
    strategy.close("sell", qty_percent=100, comment="Close")
    if (dns >= consecutiveBarsDown and lrs >= 0)
	    strategy.entry("buy", strategy.long, comment = "Buy")