Strategi perdagangan kuantitatif yang mengintegrasikan pembalikan dan garis demarkasi masa depan

Penulis:ChaoZhang, Tanggal: 2023-12-08 12:00:35
Tag:

img

Gambaran umum

Strategi ini mengintegrasikan strategi pembalikan 123 dan strategi garis demarkasi masa depan (FLD) untuk menerapkan strategi perdagangan kuantitatif yang memasuki atau keluar posisi ketika kedua strategi menghasilkan sinyal secara bersamaan.

Prinsip-prinsip

123 Strategi Pembalikan

Strategi reversal 123 berasal dari buku How I Tripped My Money in the Futures Market. Strategi reversal 123 panjang ketika harga penutupan menunjukkan pola reversal selama dua hari berturut-turut dan stokastik lambat 9 hari berada di bawah 50; pendek ketika harga penutupan menunjukkan pola reversal selama dua hari berturut-turut dan stokastik cepat 9 hari berada di atas 50.

Garis-garis Strategi Demarkasi Masa Depan

Strategi garis demarkasi masa depan (FLD) adalah strategi mengikuti tren berdasarkan periodikitas fluktuasi harga. Garis FLD digambarkan dengan memindahkan harga median, tinggi atau rendah sekitar setengah siklus ke masa depan. Sinyal perdagangan dihasilkan ketika harga melintasi garis FLD.

Analisis Keuntungan

Strategi ini menggabungkan strategi pembalikan dan mengikuti tren, menangkap peluang pembalikan jangka pendek dan arah tren jangka menengah dan panjang pada beberapa kerangka waktu untuk perdagangan kuantitatif. Elemen pembalikan memberikan peluang mengambil keuntungan jangka pendek sementara bagian yang mengikuti tren memastikan keseluruhan perdagangan selaras dengan tren, secara efektif mengendalikan risiko perdagangan. Selain itu, sifat adaptif FLD juga meningkatkan stabilitas strategi.

Analisis Risiko

Risiko utama dari strategi ini berasal dari pecah palsu sinyal pembalikan dan kesalahan dalam penilaian garis FLD. Untuk yang pertama, parameter dapat disesuaikan untuk mengkonfirmasi sinyal pembalikan atau menambahkan indikator tambahan lainnya untuk meningkatkan akurasi. Untuk yang terakhir, parameter perlu dioptimalkan untuk memastikan FLD menggambarkan siklus pasar dengan lebih tepat. Selain itu, kesalahan FLD ketika pembalikan tren besar terjadi juga harus diperhatikan.

Arahan Optimasi

  1. Meningkatkan strategi pembalikan dengan menambahkan indikator lain untuk menyaring sinyal dan mengurangi kemungkinan pecah palsu
  2. Bandingkan parameter FLD yang berbeda untuk menggambarkan pola siklus dengan lebih baik
  3. Tambahkan logika stop loss untuk mengendalikan risiko kerugian tunggal
  4. Efektivitas parameter pengujian pada produk yang berbeda

Kesimpulan

Strategi ini menggabungkan konsep pembalikan dan trend-mengikuti untuk keuntungan yang stabil selama jangka menengah-pendek kerangka waktu. Optimasi di masa depan dalam aspek akurasi sinyal, kemampuan deskripsi tren dan kontrol risiko akan memperluas alam semesta parameter dan meningkatkan stabilitas.


/*backtest
start: 2022-12-01 00:00:00
end: 2023-12-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 28/08/2020
// 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
//  An FLD is a line that is plotted on the same scale as the price and is in fact the 
//  price itself displaced to the right (into the future) by (approximately) half the 
//  wavelength of the cycle for which the FLD is plotted. There are three FLD's that can be 
//  plotted for each cycle:
//    An FLD based on the median price.
//    An FLD based on the high price.
//    An FLD based on the low price.
//
// 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


FLD(Period,src) =>
    pos = 0
    pos := iff(src[Period] < close , 1,
             iff(src[Period] > close, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & FLD's - Future Lines of Demarcation", shorttitle="Combo", overlay = true)
Length = input(15, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Period = input(title="Period", defval=40)
src = input(title="Source", type=input.source, defval=close)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posFLD = FLD(Period,src)
pos = iff(posReversal123 == 1 and posFLD == 1 , 1,
	   iff(posReversal123 == -1 and posFLD == -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 )

Lebih banyak