Strategi Surf Rider

Penulis:ChaoZhang, Tarikh: 2023-10-17 15:30:18
Tag:

img

Ringkasan

Strategi Surf Rider adalah strategi gabungan yang mengintegrasikan strategi trend berikut yang berbeza untuk menjana isyarat perdagangan yang lebih boleh dipercayai. Ia menggabungkan strategi 123 Reversal dan strategi ECO dan bertujuan untuk menghasilkan isyarat perdagangan yang lebih tepat selepas pengesahan trend.

Logika Strategi

Strategi Surf Rider mengintegrasikan dua jenis strategi yang berbeza: strategi pembalikan dan strategi trend berikut.

Pertama, strategi 123 Reversal adalah strategi pembalikan. Ia menggunakan maklumat candlestick untuk mengenal pasti isyarat pembalikan harga. Ia menghasilkan isyarat beli apabila penutupan semalam lebih tinggi daripada penutupan hari sebelumnya, dan penutupan hari ini lebih rendah daripada penutupan semalam, sementara K perlahan 9 hari lebih rendah daripada 50. Ia menghasilkan isyarat jual apabila penutupan semalam lebih rendah daripada penutupan hari sebelumnya, dan penutupan hari ini lebih tinggi daripada penutupan semalam, sementara K pantas 9 hari lebih tinggi daripada 50.

Kedua, strategi ECO adalah strategi trend berikut. Ia menggunakan saiz dan arah lilin harga untuk mengira momentum dan menentukan arah trend. Indikator ECO di atas 0 menunjukkan trend menaik, manakala di bawah 0 menunjukkan trend menurun.

Strategi Surf Rider menggabungkan isyarat dari kedua-dua strategi. Ia hanya akan memasuki kedudukan apabila kedua-dua strategi menghasilkan isyarat ke arah yang sama, contohnya apabila ECO menunjukkan trend menaik dan strategi 123 Reversal juga memberikan isyarat beli. Ini mengelakkan kehilangan dagangan disebabkan oleh pertimbangan yang salah dari satu strategi.

Analisis Kelebihan

Berbanding dengan satu strategi tunggal, strategi Surf Rider mempunyai kelebihan berikut:

  1. Menggabungkan strategi pembalikan dan trend melengkapkan kekuatan mereka dan mengelakkan kelemahan, menjadikan isyarat perdagangan lebih boleh dipercayai. ECO memastikan pembalikan hanya berlaku sebelum perubahan trend, mengelakkan pembalikan tendensi pertengahan.

  2. Strategi 123 Reversal menggunakan penunjuk stokastik untuk mengenal pasti kawasan overbought dan oversold, sementara strategi ECO menilai arah momentum harga. Kedua-dua strategi saling melengkapi dan mengurangkan kebarangkalian penilaian yang salah.

  3. Penapis strategi ganda memastikan kedudukan dibuka hanya apabila kedua-dua strategi bersetuju dengan arah yang sama, yang sangat mengurangkan risiko perdagangan.

  4. Ruang penyesuaian parameter yang fleksibel membolehkan mengoptimumkan parameter untuk pasaran yang berbeza, menjadikan strategi dapat disesuaikan dengan lebih banyak persekitaran pasaran.

  5. Pendekatan pelbagai jangka masa yang menggabungkan pembalikan intraday dan trend jangka sederhana membolehkan menangkap lebih banyak peluang perdagangan.

Analisis Risiko

Walaupun menggunakan pelbagai strategi untuk mengurangkan risiko strategi individu, strategi Surf Rider masih mengandungi risiko berikut dalam perdagangan:

  1. Strategi 123 Reversal lebih lemah di pasaran terhad julat, berpotensi menghasilkan isyarat pembalikan kerugian berturut-turut.

  2. Strategi ECO kurang berprestasi dalam persekitaran kecairan yang rendah jadi harus dielakkan di sana.

  3. Penapis strategi berganda mungkin terlepas beberapa isyarat keuntungan yang akan ditangkap oleh strategi tunggal secara berasingan.

  4. Tetapan parameter yang salah boleh menyebabkan strategi menghasilkan isyarat palsu. Parameter harus disesuaikan untuk sesuai dengan pasaran yang berbeza.

  5. Strategi mungkin gagal menyesuaikan diri dengan beberapa keadaan pasaran luar biasa seperti peristiwa black swan.

Arahan pengoptimuman

Terdapat ruang tambahan untuk mengoptimumkan strategi Surf Rider:

  1. Pertimbangkan untuk menambah strategi stop loss ke kedudukan keluar secara automatik apabila kerugian mencapai tahap stop loss.

  2. Uji parameter purata bergerak yang berbeza untuk mencari kombinasi parameter yang lebih stabil.

  3. Cuba optimum parameter adaptif berasaskan pembelajaran mesin untuk penyesuaian parameter dinamik.

  4. Tambah lebih banyak strategi tambahan untuk meningkatkan ketepatan isyarat.

  5. Uji kestabilan di persekitaran pasaran yang berbeza dan sesuaikan parameter dengan sewajarnya.

  6. Membangunkan sistem pengujian semula dan pelaksanaan automatik untuk pengoptimuman strategi yang lebih ketat.

Kesimpulan

Kesimpulannya, dengan menggabungkan strategi pembalikan dan trend berikut untuk pengesahan berganda, strategi Surf Rider meningkatkan ketepatan isyarat sambil menangkap perubahan trend, yang membolehkan pulangan yang berlebihan di pasaran yang lebih luas.


/*backtest
start: 2023-09-16 00:00:00
end: 2023-10-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 16/04/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
// We call this one the ECO for short, but it will be listed on the indicator list 
// at W. Blau’s Ergodic Candlestick Oscillator. The ECO is a momentum indicator. 
// It is based on candlestick bars, and takes into account the size and direction 
// of the candlestick "body". We have found it to be a very good momentum indicator, 
// and especially smooth, because it is unaffected by gaps in price, unlike many other 
// momentum indicators.
// We like to use this indicator as an additional trend confirmation tool, or as an 
// alternate trend definition tool, in place of a weekly indicator. The simplest way 
// of using the indicator is simply to define the trend based on which side of the "0" 
// line the indicator is located on. If the indicator is above "0", then the trend is up. 
// If the indicator is below "0" then the trend is down. You can add an additional 
// qualifier by noting the "slope" of the indicator, and the crossing points of the slow 
// and fast lines. Some like to use the slope alone to define trend direction. If the 
// lines are sloping upward, the trend is up. Alternately, if the lines are sloping 
// downward, the trend is down. In this view, the point where the lines "cross" is the 
// point where the trend changes.
// When the ECO is below the "0" line, the trend is down, and we are qualified only to 
// sell on new short signals from the Hi-Lo Activator. In other words, when the ECO is 
// above 0, we are not allowed to take short signals, and when the ECO is below 0, we 
// are not allowed to take long signals. 
//
// 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

ECO(r,s) =>
    pos = 0
    xCO = close - open
    xHL = high - low
    xEMA = ema(ema(xCO, r), s)
    xvEMA = ema(ema(xHL, r), s)
    nRes = 100 * (xEMA / xvEMA)
    pos := iff(nRes > 0, 1,
	         iff(nRes <= 0, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & ECO Strategy", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
r = input(32, minval=1)
s = input(12, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posECO = ECO(r,s)
pos = iff(posReversal123 == 1 and posECO == 1 , 1,
	   iff(posReversal123 == -1 and posECO == -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 lanjut