
Die Fusion-Strategie ist eine quantitative Handelsstrategie, die die 123-Form-Umkehrstrategie mit der Hoch-Low-Breakout-Strategie kombiniert. Die Strategie verfolgt das Ziel, über mehrere Zeiträume hinweg überdurchschnittliche Gewinne zu erzielen, indem sie die Indikatorsignale in verschiedenen Zeiträumen zusammensetzt.
Die Fusion-Strategie besteht aus zwei Teilen:
123 Umkehrung
Die Strategie stammt aus der Idee von Ulf Jensen in seinem Buch P183 “Wie kann ich dreifache Gewinne am Futures-Markt erzielen?”. Sie erzeugt Kauf- und Verkaufssignale, indem sie die Beziehung zwischen dem Verkaufspreis am 2. Tag nach dem Verkaufspreis und dem Verkaufspreis am Vortag in Verbindung mit dem Stochastic-Indikator beurteilt. Insbesondere erzeugt sie ein Kaufsignal, wenn der Verkaufspreis am 2. Tag nach dem Verkaufspreis höher ist als der Verkaufspreis am Vortag, und der Stochastic-Slow-Indikator unter 50 liegt; und ein Verkaufsignal, wenn der Verkaufspreis am 2. Tag nach dem Verkaufspreis niedriger ist als der Verkaufspreis am Vortag und der Stochastic-Fast-Indikator über 50 liegt.
Breakout-Strategien für hohe und niedrige Ebenen
Die Strategie bestimmt die Handelssignale, indem sie beurteilt, ob die Preise die Höhen und Tiefen der verschiedenen Zyklen durchbrechen. Sie berechnet die Höchst- und Tiefstpreise der aktuellen und der vergangenen Periode und erzeugt ein Kaufsignal, wenn die Preise die Höchstpreise durchbrechen, und ein Verkaufsignal, wenn sie die Tiefstpreise durchbrechen. Der Vorteil der Strategie liegt in der Fähigkeit, verschiedene Zeitspuren zu erkennen und früher in den Markt einzutreten, wenn sich ein Trend entwickelt.
Die Fusion-Strategie kombiniert die beiden oben genannten Strategien, um ein tatsächliches Handelssignal zu erzeugen, wenn die Signalrichtung der beiden Strategien übereinstimmt. Auf diese Weise können einige unwirksame Signale, die durch Fehleinschätzungen einer einzigen Strategie erzeugt werden, gefiltert und die Reliabilität des Signals erhöht werden.
Mehrzeit-Komplex-Beschlüsse, um die Signalgenauigkeit zu verbessern
Die Strategie kombiniert die morphologischen Merkmale der Sonnenlinie mit höheren Zeitzyklen, um die Genauigkeit der Handelssignalbeurteilung zu verbessern und zu verhindern, dass sie von kurzfristigen Marktschwankungen getäuscht wird.
Der Stochastic-Indikator nutzt seine Überkauf-Überverkauf-Urteile
Die Anwendung des StochasticSlow-Indikators verhindert, dass in den Überkaufszonen eilig gekauft wird, und die Anwendung des StochasticFast-Indikators verhindert, dass in den Überverkaufszonen eilig verkauft wird, um unnötige Verluste zu verringern.
Das ist eine gute Idee, um Trends zeitnah zu erfassen und die Wahrscheinlichkeit verpasster Chancen zu verringern.
Eine Breakout-Strategie mit hohen und niedrigen Ebenen ermöglicht die Identifizierung von Schlüsselbereichen, in denen der Preis in einem längeren Zeitrahmen brechen kann, um früher in den Trend einzutreten und die Wahrscheinlichkeit einer verpassten Chance zu verringern.
Eine Kombination aus mehreren Strategien, die flexibel optimiert werden können
Eine Strategie besteht aus mehreren Unterstrategien, die durch die Anpassung der Parameter der Unterstrategie oder die Einführung neuer Unterstrategien optimiert werden können, um die Strategie stabiler zu machen.
Strategie ist klar und verständlich
Die Strategie ist einfach, klar, leicht zu verstehen, zu ändern und zu pflegen.
Mehrzeit-Perioden-Synthese erhöht die Signallagerung
Obwohl die Mehrzeit-Zyklus-Kombination die Signalgenauigkeit verbessert, kann sie auch die Signalverzögerung erhöhen, wodurch möglicherweise kurzfristige Handelsmöglichkeiten verpasst werden.
123 Formen können keine längeren Trendwechsel erkennen
123 Umkehrstrategien können keine wichtigen Trendwendepunkte für einen längeren Zeitraum erkennen, wenn man nur die Entwicklung der letzten Tage beurteilt.
Falsche Signale können durch falsche Einstellungen der Periodiparameter verursacht werden
Die falsche Einstellung der Stochastic-Indikatoren und der High-Low-Breakout-Zyklusparameter kann zu einer Überproduktion von falschen Handelssignalen führen.
Schlechte Anpassungsfähigkeit an spezifische Situationen, basierend nur auf technischen Indikatoren
Die Strategie basiert auf technischen Kennzahlen ohne Berücksichtigung von grundlegenden Informationen und ist bei einem schweren Schwarzen Schwan-Ereignis weniger anpassungsfähig.
Die Risiken können mit folgenden Lösungen begegnet werden:
Verkürzung der Rechenzyklen und Signalverzögerung.
Versuchen Sie, längerfristige Indikatoren oder Formen als Filter einzuführen.
Optimierung der Parameter-Einstellungen, um die Stabilität der Parameter bei der Rückmessung zu testen.
Erwägen Sie die Kombination von grundlegenden Faktoren, um die Filtersignale zu filtern.
Die Parameter der einzelnen Strategien werden getestet und optimiert, um sie robuster zu machen.
Zusätzliche Hilfsentscheidungslogiken, wie Fundamentals, Kapitalfluss und andere Indikatoren für die Kombination.
Einführung von Stop-Loss-Strategien, um den maximalen Verlust eines einzelnen Handels zu kontrollieren.
Die Parameter für bestimmte Sorten werden verfeinert, um die Eignung der Strategie für diese Sorte zu verbessern.
Das Ziel ist es, die Entscheidungsfindung mit Hilfe von Machine Learning-Modellen zu erleichtern.
Zusammenfassend kann man sagen, dass die Fusion-Strategie die Vorzüge der technischen Indikatoren in mehreren Zeitskalen integriert, um die Genauigkeit und Zeitlichkeit der Signalbeurteilung zu verbessern. Im Vergleich zu der Strategie mit einem einzigen technischen Indikator hat sie eine schärfere Trendbeurteilung und eine stabilere Signalerzeugung.
/*backtest
start: 2023-10-10 00:00:00
end: 2023-11-09 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 25/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 script shows a high and low period value.
// Width - width of lines
// SelectPeriod - Day or Week or Month and etc.
// LookBack - Shift levels 0 - current period, 1 - previous and etc.
//
// 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
HLL(LookBack, SelectPeriod) =>
pos = 0.0
xHigh = security(syminfo.tickerid, SelectPeriod, high[LookBack])
xLow = security(syminfo.tickerid, SelectPeriod, low[LookBack])
vS1 = xHigh
vR1 = xLow
pos := iff(close > vR1, 1,
iff(close < vS1, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & High and Low Levels", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SelectPeriod = input(title="Resolution", type=input.resolution, defval="D")
LookBack = input(1, minval=0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posHLL = HLL(LookBack, SelectPeriod)
pos = iff(posReversal123 == 1 and posHLL == 1 , 1,
iff(posReversal123 == -1 and posHLL == -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 )