
Strategi penarikan balik ganda adalah algoritma penarikan yang menggabungkan kedua-dua indikator penarikan balik. Ia mengintegrasikan sistem penarikan balik 123 dan dua substrategi penarikan Gann, menghasilkan isyarat perdagangan apabila kedua-dua substrategi menghantar isyarat pada masa yang sama, untuk melaksanakan operasi penarikan balik.
Strategi ini terdiri daripada dua sub-strategi:
Sistem 123 berbalik: ia berasal dari Ulf Jensen’s How to Make Three-Fold Profits in the Futures Market, halaman 183. Peraturan dagangannya adalah: apabila harga penutupan lebih tinggi daripada harga penutupan hari sebelumnya dan lebih rendah daripada harga penutupan dua hari sebelumnya, buat lebih banyak di bawah garis K perlahan 50; apabila harga penutupan lebih rendah daripada harga penutupan hari sebelumnya dan lebih tinggi daripada harga penutupan dua hari sebelumnya, buat kosong di atas garis K cepat 50.
Gann Swing Line Oscillation Indicator: Ia berasal dari penemuan Robert Krausz dalam W.D. Gann’s Treasure Chest. Ia menilai arah pergerakan pasaran dengan mengira kenaikan dan penurunan harga tertinggi dan terendah dalam tempoh tertentu.
Logik perdagangan strategi seting ini adalah: apabila arah isyarat kedua-dua substrategi adalah sama, menghasilkan isyarat perdagangan sebenar. Melakukan banyak isyarat adalah apabila kedua-dua substrategi menghantar isyarat banyak isyarat pada masa yang sama; isyarat kosong adalah apabila kedua-dua substrategi menghantar isyarat kosong pada masa yang sama.
Kelebihan terbesar strategi ini adalah bahawa ia menggabungkan isyarat dari dua sub-strategi, yang dapat menyaring isyarat palsu dengan berkesan dan meningkatkan ketepatan isyarat perdagangan. Kedua-dua sub-strategi masing-masing mempunyai kelebihan masing-masing. Sistem pembalikan 123 dapat menangkap pergerakan berbalik secara tiba-tiba, dan Gann Swing Oscillation Indicator dapat menentukan kematangan perubahan trend.
Risiko utama strategi ini adalah bahawa terdapat kemungkinan besar bahawa arah isyarat perdagangan yang dikeluarkan oleh kedua-dua substrategi tidak selaras, yang menyebabkan masalah kurangnya isyarat perdagangan. Selain itu, substrategi itu sendiri akan mempunyai risiko isyarat palsu. Kedua-dua faktor ini dapat menyebabkan kurangnya perdagangan strategi dan tidak dapat memanfaatkan peluang pasaran sepenuhnya.
Untuk mengurangkan risiko, parameter substrategi boleh disesuaikan untuk meningkatkan frekuensi dagangan dengan sewajarnya, atau digabungkan dengan petunjuk lain untuk membantu penilaian, menapis isyarat palsu. Apabila terdapat penyimpangan isyarat yang besar antara dua substrategi, anda juga boleh mempertimbangkan untuk mengikuti hanya pihak yang lebih dipercayai.
Strategi ini boleh dioptimumkan dalam beberapa aspek:
Strategi penarikan balik ganda membentuk isyarat dagangan yang lebih kuat dengan mengintegrasikan dua jenis strategi penarikan balik yang berbeza. Ia dapat memadamkan kebisingan dengan berkesan, meningkatkan kualiti isyarat, dan sesuai untuk menangkap peluang penarikan balik di pasaran. Tetapi substrategi mengeluarkan isyarat yang tidak konsisten dengan kebarangkalian yang lebih tinggi, yang boleh menyebabkan masalah kurangnya frekuensi perdagangan.
/*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 04/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
// The Gann Swing Oscillator has been adapted from Robert Krausz's book,
// "A W.D. Gann Treasure Discovered". The Gann Swing Oscillator helps
// define market swings.
//
// 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
GannSO(Length) =>
pos = 0.0
xGSO = 0.0
xHH = highest(Length)
xLL = lowest(Length)
xGSO:= iff(xHH[2] > xHH[1] and xHH[0] > xHH[1], 1,
iff(xLL[2] < xLL[1] and xLL[0] < xLL[1], -1, nz(xGSO[1],0)))
pos := iff(xGSO > 0, 1,
iff(xGSO < 0, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Gann Swing Oscillator", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthGSO = input(5, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posGannSO = GannSO(LengthGSO)
pos = iff(posReversal123 == 1 and posGannSO == 1 , 1,
iff(posReversal123 == -1 and posGannSO == -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 )