
Strategi double reversal high-low, adalah strategi kuantitatif yang menggabungkan isyarat ganda. Ia menggabungkan strategi intraday berdasarkan reversal dan strategi penilaian trend yang menggunakan perbezaan harga tertinggi semalam dengan nilai purata bergerak. Strategi ini bertujuan untuk mewujudkan isyarat beli dan jual yang lebih stabil dan seterusnya mengelakkan isyarat yang salah.
Pertama, bahagian strategi pembalikan. Strategi ini membentuk isyarat penilaian apabila harga penutupan dua hari berturut-turut berbalik, dan digabungkan dengan penunjuk rawak untuk menilai keadaan overbought dan oversold. Khususnya, apabila harga penutupan dua hari berturut-turut berubah dari kenaikan ke penurunan, dan penunjuk rawak cepat lebih tinggi daripada penunjuk rawak perlahan sebagai isyarat jual; apabila harga penutupan dua hari berturut-turut berubah dari penurunan ke kenaikan, dan penunjuk rawak cepat lebih rendah daripada penunjuk rawak perlahan sebagai isyarat beli.
Kemudian, bahagian strategi tinggi-rendah. Strategi ini menggunakan perbezaan antara harga tertinggi semalam dengan nilai purata bergerak indeks sepanjang 13. Ia menghasilkan isyarat beli apabila harga tertinggi lebih tinggi daripada purata bergerak; ia menghasilkan isyarat jual apabila harga tertinggi lebih rendah daripada purata bergerak.
Akhirnya, strategi ini mengintegrasikan dua isyarat. Operasi beli diambil apabila kedua-dua isyarat muncul bersama-sama dengan isyarat beli. Operasi jual diambil apabila kedua-dua isyarat muncul bersama-sama dengan isyarat jual.
Strategi ini digabungkan dengan indikator isyarat ganda, yang dapat mengurangkan isyarat yang salah dan jumlah perdagangan yang tidak perlu. Bahagian berbalik dapat menentukan fenomena overbought dan oversold, dan mengelakkan mengejar kenaikan harga. Bahagian tinggi-rendah dapat menentukan trend harga dari fenomena, dan mengelakkan pecah palsu.
Di samping itu, bahagian pembalikan dan bahagian tinggi rendah menggunakan pelbagai jenis penunjuk dan kriteria penghakiman, kedua-duanya boleh berfungsi sebagai pengesahan antara satu sama lain, mengurangkan isyarat yang salah. Apabila terdapat keadaan khusus di pasaran, indikator tunggal mudah menghantar isyarat yang salah, dan penghakiman gabungan dapat mengimbangi sebahagian daripada kesalahan.
Risiko terbesar dari strategi ini adalah bahawa di bawah pasaran trend yang kuat, isyarat unilateral yang berterusan dan munasabah mungkin diabaikan. Apabila trend sangat jelas, keputusan isyarat bahagian pembalikan mungkin salah, yang akan menyebabkan isyarat unilateral bahagian tinggi-rendah tidak dapat ditukar menjadi perdagangan.
Di samping itu, parameter yang tidak betul juga boleh memberi kesan kepada strategi. Pengaturan parameter dalam bahagian berbalik memerlukan pertimbangan sistem rata-rata kitaran, dan pengaturannya perlu diselaraskan dengan kitaran purata bergerak di bahagian tinggi dan rendah.
Pertama, ia boleh diuji untuk mengubah parameter panjang rata-rata bergerak bahagian tinggi-rendah, menjadikannya lebih selaras dengan indikator kitaran bahagian berbalik. Penghakiman yang menggunakan indikator 13 kitaran pada bahagian tinggi-rendah mungkin terlalu sensitif, dan ia boleh cuba untuk mendapatkan keputusan yang lebih stabil.
Kedua, bahagian pembalikan juga boleh diuji dengan menggunakan entiti garis K, yang kini mudah dipengaruhi hanya dengan harga penutupan. Pembalikan garis K yang lebih besar dengan entiti mungkin mempunyai kesan isyarat yang lebih kuat.
Akhirnya, anda juga boleh mencuba untuk mempertimbangkan perdagangan hanya apabila terdapat isyarat pembalikan pada cakera, kerana cara memegang kedudukan dalam hari ini lebih berisiko. Sebaliknya mengambil perdagangan pembalikan sementara dapat mengelakkan sebahagian daripada risiko memegang kedudukan.
Strategi Double Reverse High-Low menggabungkan beberapa isyarat indikator, dan double verifikasi sebelum isyarat beli dan jual dikeluarkan. Mekanisme penapisan isyarat yang ketat ini dapat mengurangkan kesan isyarat yang tidak sah dan isyarat yang salah terhadap perdagangan sebenar. Strategi ini berjaya mengawal frekuensi perdagangan yang tidak sah, menjadikan setiap perdagangan lebih dipercayai, dan mengelakkan perdagangan buta yang mengalir dengan gelombang.
/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-02 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 23/11/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
// This indicator plots the difference between the High (of the previous period)
// and an exponential moving average (13 period) of the Close (of the previous period).
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// It buy if indicator above 0 and sell if below.
//
// 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
HEMA(Length) =>
pos = 0.0
xPrice = close // You can use any series
xEMA = ema(xPrice, Length)
nRes = high[1] - nz(xEMA[1])
pos:= iff(nRes > 0, 1,
iff(nRes < 0, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & High - EMA 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)
//-------------------------
Length_HEMA = input(13, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posHEMA = HEMA(Length_HEMA)
pos = iff(posReversal123 == 1 and posHEMA == 1 , 1,
iff(posReversal123 == -1 and posHEMA == -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 )