
Die Doppelreverse-Strategie ist eine quantitative Strategie, die die 123-Reverse- und dreitägige Reverse-Form kombiniert, um die Qualität des Handelssignals zu verbessern und das Risiko zu reduzieren. Die Strategie verwendet eine Handelsmethode, bei der die Differenz- und die K-Linien-Form kombiniert werden, um die Signalgenauigkeit zu erhöhen, wenn beide Indikatoren gleichzeitig signalisiert werden.
Die Doppel-Umkehr-Strategie kombiniert zwei verschiedene Arten von Handelsstrategien, die 123 Umkehr-Strategie, die die Differenz-Indikator verwendet, um zwei Tage in Folge die Schlusskurs umzukehren, und die Signal auslöst, wenn der Zufalls-Indikator einen Wertverlust auslöst. Die andere ist die Drei-Tage-Umkehr-Form-Strategie, die die drei-Tage-K-Linie beobachtet und Signal auslöst, wenn der Schlusskurs am mittleren Tag am niedrigsten ist und am letzten Tag über dem Höchstwert des vorherigen Tages liegt.
Die 123-Tage-Umkehr-Strategie nutzt die 9-Tage-Zufalls-Indikatoren, um überkaufende und überverkaufte Preise zu bestimmen. Wenn der Preis zwei Tage in Folge sinkt und der Zufalls-Indikator unter 50 liegt, ist dies ein Kaufsignal. Wenn der Zufalls-Indikator zwei Tage in Folge steigt und der Zufalls-Indikator über 50 liegt, ist dies ein Verkaufsignal.
Die doppelte Umkehrstrategie erfordert, dass beide Strategien gleichzeitig signalisiert werden, um eine Position zu eröffnen. Dies reduziert die False-Signal-Rate erheblich, so dass das System nur bei hoher Wahrscheinlichkeit handelt.
Im Vergleich zu einer einzigen Strategie bietet die Doppel-Umkehr-Strategie folgende Vorteile:
Das Hauptrisiko der Doppelrevers-Strategie besteht darin, dass einige Gelegenheiten verpasst werden. Aufgrund der strengen Signalanforderungen werden einige Handelsmöglichkeiten für einzelne Indikatoren verpasst. Dies kann durch Anpassung der Parameter, Lockerung der Bedingungen für einen der Indikatoren und teilweise erhöhte Handelsfrequenz behoben werden.
Ein weiteres Risiko besteht darin, dass in einigen Extremsituationen die Wahrscheinlichkeit einer gleichzeitigen Ausfallwirkung von Doppelindikatoren höher ist. In diesem Fall kann ein Stop-Loss-Mechanismus erweitert werden, um die Haltestelle schnell zu entschädigen und die Verluste zu verringern. Oder die Handelssignale abbrechen, um die Eröffnung von Positionen zu vermeiden, da die Extremsituationen aufgrund der historischen Erfahrung als ausfallend bezeichnet werden.
Die Strategie der Doppelreaktion kann in folgenden Bereichen weiter optimiert werden:
Die Doppel-Umkehr-Strategie kombiniert erfolgreich die Idee des Umkehrhandels mit der Analyse der K-Linien-Form. Sie erschließt die natürlichen Regeln der kurz- und mittelfristigen Rückkehr der Preise und nutzt die Chancen, die die Umkehr bietet, effektiv. Im Gegensatz zu der einfachen Methode, Trends zu folgen, findet diese Strategie eine Balance zwischen Risiken und Erträgen. Durch kontinuierliche Optimierung und Innovation ist die Überzeugung, dass der Wert ihrer Investition nachhaltig verifiziert wird.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 17/04/2019
// This is combo strategies for get
// a cumulative signal. Result signal will return 1 if two strategies
// is long, -1 if all strategies is short and 0 if signals of strategies is not equal.
//
// 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.
//
// Secon strategy
// This startegy based on 3-day pattern reversal described in "Are Three-Bar
// Patterns Reliable For Stocks" article by Thomas Bulkowski, presented in
// January,2000 issue of Stocks&Commodities magazine.
// That pattern conforms to the following rules:
// - It uses daily prices, not intraday or weekly prices;
// - The middle day of the three-day pattern has the lowest low of the three days, with no ties allowed;
// - The last day must have a close above the prior day's high, with no ties allowed;
// - Each day must have a nonzero trading range.
//
// 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
BarReversalPattern() =>
pos = 0.0
pos := iff(open[2] > close[2] and high[1] < high[2] and low[1] < low[2] and low[0] > low[1] and high[0] > high[1], 1,
iff(open[2] < close[2] and high[1] > high[2] and low[1] > low[2] and high[0] < high[1] and low[0] < low[1], -1, nz(pos[1], 0)))
pos
strategy(title="Combo Strategies 123 Reversal and 3-Bar-Reversal-Pattern", shorttitle="Combo Backtest", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
pos3BarReversalPattern = BarReversalPattern()
pos = iff(posReversal123 == 1 and pos3BarReversalPattern == 1 , 1,
iff(posReversal123 == -1 and pos3BarReversalPattern == -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 ? red: possig == 1 ? green : blue )