Indeks Momentum Ganda dan Strategi Hibrid Pembalikan

Penulis:ChaoZhang, Tarikh: 2024-02-06 12:22:32
Tag:

img

Ringkasan

Indeks Momentum Ganda dan Strategi Hibrid Pembalikan adalah strategi komposit yang menggabungkan strategi pembalikan dan momentum. Ia mengintegrasikan Strategi Pembalikan 123 dan Indeks Pilihan Komoditi (CSI) sebagai sub-strategi untuk menentukan isyarat masuk berdasarkan pengesahan berganda. Strategi ini bertujuan untuk meningkatkan ketepatan isyarat perdagangan.

Logika Strategi

Strategi ini terdiri daripada dua sub-strategi:

  1. 123 Strategi Pembalikan. Ia pergi panjang apabila harga penutupan meningkat selama dua hari berturut-turut dan Stoch adalah di bawah 50; ia pergi pendek apabila harga penutupan jatuh selama dua hari berturut-turut dan Stoch adalah di atas 50.

  2. Strategi Indeks Pilihan Komoditi (CSI). Ia menggabungkan Julat Benar Purata (ATR) dan Indeks Pergerakan Arah Purata (ADX). ATR mencerminkan turun naik pasaran dan ADX mencerminkan kekuatan trend.

Strategi ini mengambil strategi 123 Reversal sebagai badan utama dan CSI sebagai pengesahan pembantu. Isyarat perdagangan dihasilkan hanya apabila isyarat kedua-dua strategi konsisten. Ia pergi lama apabila harga penutupan meningkat selama dua hari berturut-turut dan Stoch di bawah 50, dan pada masa yang sama apabila CSI melintasi di atas purata bergerak; ia pergi pendek apabila harga penutupan jatuh selama dua hari berturut-turut dan Stoch di atas 50, dan pada masa yang sama apabila CSI melintasi di bawah purata bergerak.

Ini memastikan sifat pembalikan isyarat perdagangan, sementara menambah CSI ke penapis dapat mengurangkan isyarat palsu.

Kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Menggabungkan pembalikan dan momentum meningkatkan ketepatan isyarat. 123 Pembalikan sebagai isyarat utama boleh menangkap pembalikan tiba-tiba dan ganas. CSI sebagai pengesahan boleh menapis beberapa bunyi bising.

  2. Menggunakan penapisan komposit dapat mengurangkan kedudukan bersih dengan ketara. Walaupun sub-strategi itu sendiri mempunyai beberapa isyarat palsu, isyarat akhir mesti disahkan dua kali, yang dapat menapis kebanyakan isyarat palsu dan meminimumkan pembukaan dan penutupan kedudukan yang tidak perlu.

  3. Parameter sub-strategi boleh dioptimumkan secara berasingan tanpa mengganggu satu sama lain. Ini memudahkan mencari kombinasi parameter yang optimum.

  4. Sub-strategi boleh diaktifkan secara berasingan. Strategi ini menyokong hanya menggunakan 123 Reversal atau CSI untuk perdagangan sahaja. Ini memberikan fleksibiliti.

Analisis Risiko

Walaupun strategi ini mengurangkan isyarat palsu dengan ketara melalui penapisan komposit, masih terdapat risiko utama berikut:

  1. Frekuensi penjanaan isyarat strategi agak rendah. Dengan mengamalkan pengesahan berganda, sebahagian peluang perdagangan pasti akan disaring. Ini adalah kos yang tidak dapat dielakkan untuk mencapai kadar kemenangan yang tinggi.

  2. Jika parameter kedua-dua sub-strategi tidak betul, ia boleh mengakibatkan isyarat yang jarang atau bahkan tidak ada.

  3. 123 Peralihan adalah sebahagian daripada operasi yang bertentangan dengan trend. Dalam kes terobosan harga satu hala berturut-turut dan ganas, strategi akan menghadapi risiko yang lebih besar. Adalah disarankan untuk menambah stop loss untuk mengawal risiko.

Arah pengoptimuman

Kemungkinan pengoptimuman utama strategi ini adalah dalam bidang berikut:

  1. Mengoptimumkan parameter intrinsik setiap sub-strategi untuk mencari kombinasi parameter yang optimum, termasuk parameter Stoch, CSI, dll.

  2. Uji tambah dalam penapis keadaan pasaran yang berbeza, seperti menggunakan CSI hanya apabila trend berlaku, menggunakan 123 Pembalikan hanya dalam pasaran yang terikat julat, dll. Ini dapat mengatasi kelemahan sub-strategi hingga tahap tertentu.

  3. Membangunkan modul penyesuaian parameter sendiri dan pengoptimuman dinamik, yang membolehkan strategi menyesuaikan parameter secara automatik dan mengesan kombinasi parameter optimum mengikut keadaan pasaran dan statistik dalam masa nyata.

  4. Uji mekanisme stop loss yang berbeza. Stop loss yang betul boleh mengawal risiko dengan berkesan dan mengurangkan pembukaan dan penutupan kedudukan yang tidak perlu.

Ringkasan

Indeks Momentum Ganda dan Strategi Hibrid Pembalikan menggunakan idea pengesahan dan kombinasi pelbagai isyarat, dengan memanfaatkan kekuatan masing-masing strategi pembalikan dan momentum, sambil mengatasi kekurangan mereka dengan penapisan bersama, untuk mencapai kecekapan dan kestabilan yang tinggi.


/*backtest
start: 2024-01-06 00:00:00
end: 2024-02-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/10/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
// The Commodity Selection Index ("CSI") is a momentum indicator. It was 
// developed by Welles Wilder and is presented in his book New Concepts in 
// Technical Trading Systems. The name of the index reflects its primary purpose. 
// That is, to help select commodities suitable for short-term trading.
// A high CSI rating indicates that the commodity has strong trending and volatility 
// characteristics. The trending characteristics are brought out by the Directional 
// Movement factor in the calculation--the volatility characteristic by the Average 
// True Range factor.
// Wilder's approach is to trade commodities with high CSI values (relative to other 
// commodities). Because these commodities are highly volatile, they have the potential 
// to make the "most money in the shortest period of time." High CSI values imply 
// trending characteristics which make it easier to trade the security.
// The Commodity Selection Index is designed for short-term traders who can handle 
// the risks associated with highly volatile markets.
//
// 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

fADX(Len) =>
    up = change(high)
    down = -change(low)
    trur = rma(tr, Len)
    plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, Len) / trur)
    minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, Len) / trur)
    sum = plus + minus 
    100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), Len)

CSI(Length, Commission, Margin, PointValue) =>
    pos = 0.0
    K = 100 * ((PointValue / sqrt(Margin) / (150 + Commission)))
    xATR = atr(Length)
    xADX = fADX(Length)
    nADXR = (xADX + xADX[Length]) * 0.5
    xCSI = K * xATR * nADXR
    xMACSI = sma(xCSI, Length)
    pos := iff(xCSI < xMACSI, 1,
    	     iff(xCSI > xMACSI, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Strategy 123 Reversal & Commodity Selection Index", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
PointValue = input(50)
Margin = input(3000)
Commission = input(10)
LengthCSI = input(14)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posCSI = CSI(LengthCSI, Commission, Margin, PointValue)
pos = iff(posReversal123 == 1 and posCSI == 1 , 1,
	   iff(posReversal123 == -1 and posCSI == -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