Strategi perdagangan siklus dua faktor


Tanggal Pembuatan: 2023-12-05 17:56:27 Akhirnya memodifikasi: 2023-12-05 17:56:27
menyalin: 2 Jumlah klik: 614
1
fokus pada
1619
Pengikut

Strategi perdagangan siklus dua faktor

Ringkasan

Strategi perdagangan loop dua faktor adalah strategi perdagangan kuantitatif. Ini menggabungkan dua jenis indikator teknis yang berbeda untuk menghasilkan sinyal perdagangan untuk melacak tren pasar dan mendapatkan keuntungan tambahan.

Keuntungan dari strategi ini adalah dapat mencari peluang perdagangan dengan menggabungkan berbagai faktor, double confirmation dapat meningkatkan keandalan sinyal, mengurangi probabilitas perdagangan yang salah. Pada saat yang sama, strategi ini memanfaatkan sepenuhnya keuntungan dari perdagangan berputar, yaitu stop loss dan reverse positioning, yang dapat mengontrol risiko secara efektif.

Prinsip Strategi

Strategi ini terdiri dari dua bagian:

  1. 123 Strategi Pembalasan Strategi ini berasal dari Ulf Jensen dalam bukunya How I Flipped My Money in the Futures Market. Logika tradingnya adalah: Jika harga close out dua hari berturut-turut lebih tinggi dari harga close out hari sebelumnya, dan K-line lambat di bawah 50 pada hari ke-9, maka lakukan over; Jika harga close out dua hari berturut-turut lebih rendah dari harga close out hari sebelumnya, dan K-line cepat di atas 50 pada hari ke-9, maka lakukan over.

  2. Strategi Resistensi Dukungan Peningkatan / Penurunan Strategi ini menghasilkan sinyal dengan menilai apakah harga akan menembus support atau resistance yang penting. Jika harga menembus harga tertinggi pada hari perdagangan sebelumnya, maka harga akan bullish. Jika harga menembus harga terendah pada hari perdagangan sebelumnya, maka harga akan bearish.

Sinyal dari dua strategi di atas, masuk posisi ketika sinyal kedua belah pihak sesuai, atau kosong. Pada saat yang sama, pengaturan reverse open mode untuk menghentikan kerugian tepat waktu dan membalikkan perdagangan saat perubahan pasar, untuk mencapai operasi siklus dana.

Analisis Keunggulan

Strategi perdagangan berputar dua faktor ini memiliki keuntungan sebagai berikut:

  1. Desain multi-faktor memastikan keandalan sinyal yang tinggi. Strategi pembalikan 123 dan strategi dukungan resistensi saling diverifikasi, yang dapat mengurangi sinyal yang salah.

  2. Mekanisme perdagangan bergulir memungkinkan strategi untuk menyesuaikan dengan perubahan pasar dan secara efektif mengendalikan kerugian unilateral.

  3. Indikator stochastics 9 hari dapat memfilter kebisingan pasar, membuat sinyal lebih jelas.

  4. Risiko lebih rendah dan penarikan lebih kecil daripada strategi faktor tunggal. Faktor ganda dapat membentuk koefisien dan menekan dampak fluktuasi tidak rasional pada strategi.

Analisis risiko

Strategi ini juga memiliki beberapa risiko:

  1. Dalam situasi yang bergejolak tidak dapat menangkap tren dengan baik, akan sering menghentikan kerugian untuk membuka kembali posisi sehingga meningkatkan biaya perdagangan.

  2. Pengaturan parameter Stochastics dapat mempengaruhi kualitas sinyal. Parameter yang tidak tepat dapat menyebabkan sinyal salah posisi, kualitas menurun. Parameter perlu diuji ulang untuk dioptimalkan.

  3. Desain dua faktor, meskipun meningkatkan kualitas sinyal, juga meningkatkan dampak dari kebisingan pasar pada strategi. Hal ini mengharuskan kita untuk lebih berhati-hati dalam membangun dan memvalidasi strategi.

Arah optimasi

Kita dapat mengoptimalkan strategi ini lebih lanjut dengan cara berikut:

  1. Uji Stochastics dengan periode panjang yang berbeda untuk menemukan kombinasi parameter terbaik untuk menghapus kebisingan pasar

  2. Tambahkan filter tren untuk menyaring tren yang bergejolak dan hanya buka posisi dengan tren yang jelas

  3. Mengoptimalkan algoritma penyetelan stop loss untuk mengurangi biaya transaksi sekaligus memastikan stop loss efektif

  4. Uji kombinasi faktor yang berbeda untuk menemukan sinyal perdagangan yang lebih jelas dan strategi yang lebih stabil

Meringkaskan

Strategi ini memperoleh kualitas sinyal yang lebih tinggi dan keuntungan penyesuaian risiko melalui desain dua faktor. Pada saat yang sama, menggunakan mekanisme perdagangan lingkaran untuk secara efektif mengendalikan kerugian dari perdagangan sepihak. Strategi ini mencapai keseimbangan yang baik antara risiko dan keuntungan.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 13/11/2019
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// Cueing Off Support And Resistance Levels, by Thom Hartle 
// modified by HPotter for trade signals.
// The related article is copyrighted material from Stocks & Commodities.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

COSRL(SigVal) =>
    pos = 0.0
    xLow = low
    xHigh = high
    xHighD = security(syminfo.tickerid,"W", high[1])
    xLowD  = security(syminfo.tickerid,"W", low[1])
    sigpre1 = iff(xHigh <= xLowD, -1,
                 iff(xLow >= xHighD, 1, nz(pos[1], 0))) 
    sigpre2 = iff( xHigh <= xHighD, -1,
                 iff(xLow >= xLowD, 1, nz(pos[1], 0))) 
    pos := SigVal ? sigpre1 : sigpre2
    pos

strategy(title="Combo Backtest 123 Reversal & Cueing Off Support And Resistance Levels", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SigVal = input(true, title="To Line \ From Line")
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCOSRL = COSRL(SigVal)
pos = iff(posReversal123 == 1 and posCOSRL == 1 , 1,
	   iff(posReversal123 == -1 and posCOSRL == -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 )