
Die Strategie handelt zunächst mit dem Preisumkehrsignal und filtert dann in Kombination mit einem Trendfilter, um einen doppelten Faktor zu erreichen. Der Preisumkehrteil verwendet das 123 Umkehrhandelssystem, der Trendfilterteil verwendet das Extracting The Trend Trading System (ETT), die beide zusammen eine Umkehrhandelsstrategie bilden, die einen doppelten Faktor bildet.
Der Kursumkehrteil nutzt das 123 Umkehrsystem. Das System stammt aus Ulf Jensens Buch “Wie kann ich mein Geld auf dem Futures-Markt verdreifachen?” Seite 183. Die Entstehung eines Handelssignals unterliegt den folgenden Bedingungen:
Wenn die oben genannten Bedingungen erfüllt sind, wird ein Kaufsignal erzeugt; im Gegenteil, wenn
Wenn die oben genannten Bedingungen erfüllt sind, wird ein Verkaufssignal erzeugt.
Der Zweck dieses teilweisen Umkehrhandelssystems ist es, die Bewegung des Preises bei kurzfristigen Umkehrungen zu erfassen.
Der Trendfilter verwendet die Extrahierung von Trendsystemen (ETT). Das ETT-System beurteilt die Richtung der Trends anhand von Ergebnisfiltern und Gleichgewichtskombinationen. In dieser Strategie dient es hauptsächlich der Verifizierung von Preisumkehrsignalen und vermeidet Umkehroperationen, wenn kein eindeutiger Trend vorliegt.
Die Strategie kombiniert die Handelssignale der beiden Unterstrategien, um den doppelfaktorgetriebenen Umkehrhandel zu ermöglichen.
Die Kombination von Doppelfaktor-Rücklauf-Trading-Strategien durch Kombinationen von Substrategien, die ihre eigenen Vorteile kombinieren, zeigt sich hauptsächlich in:
Daher kann die Strategie effektiv unwirksame Umkehrsignale filtern und, unter der Annahme, dass das Trend-Urteil korrekt ist, Umkehroperationen durchführen, wodurch die Gesamtperformance des Handelssystems verbessert wird.
Die Risiken einer binären Kombinationsumkehrstrategie bestehen hauptsächlich aus folgenden Aspekten:
Um die oben genannten Risiken zu verringern, kann man die Anpassung der Compiler-Parameter, die Optimierung der Reversal-Strategie und der ETT-Strategie in Betracht ziehen, um das Urteil genauer zu machen, während die Stop-Loss-Spanne für Reversal-Transaktionen angemessen gelockert wird. In der Praxis ist es auch notwendig, die Risiken der Doppelfaktoren zu berücksichtigen, die die Größe der Position kontrollieren.
Diese Strategie kann in folgenden Bereichen optimiert werden:
Die Optimierung von Parametern und Kombinationen, unter Beibehaltung der Strategie und der Hauptlogik der Handelssignale, wird zu besseren Rückmeldungsergebnissen führen.
Die Doppelfaktor-Kombination-Umkehr-Trading-Strategie realisiert ein Handelssystem, das auf mehreren Faktoren basiert, die durch die organische Kombination von Preisumkehrsignalen und Trendfiltersignalen beurteilt werden. Im Vergleich zu einem einzigen Umkehrsignal kann die Strategie die Signalqualität verbessern, indem sie ein gefälschtes Signal in einer Situation ohne klaren Trend vermeidet, indem sie einen kurzfristigen Preisumkehr garantiert erfasst. Durch die Optimierung der Parameter und andere zusätzliche Faktoren wird eine bessere Performance erwartet.
/*backtest
start: 2023-11-26 00:00:00
end: 2023-12-26 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 03/08/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
// Extracting The Trend
// The related article is copyrighted material from Stocks & Commodities Mar 2010
//
// 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
ETT(Length,Delta,Trigger) =>
pos = 0
xBandpassFilter = 0.0
xPrice = hl2
beta = cos(3.1415 * (360 / Length) / 180)
gamma = 1 / cos(3.1415 * (720 * Delta / Length) / 180)
alpha = gamma - sqrt(gamma * gamma - 1)
xBandpassFilter := 0.5 * (1 - alpha) * (xPrice - xPrice[2]) + beta * (1 + alpha) * nz(xBandpassFilter[1]) - alpha * nz(xBandpassFilter[2])
xMean = sma(xBandpassFilter, 2 * Length)
pos :=iff(xMean > Trigger, 1,
iff(xMean < Trigger, -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & Extracting The Trend", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthETT = input(20, minval=1)
Delta = input(0.5)
Trigger = input(0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posETT = ETT(LengthETT,Delta,Trigger)
pos = iff(posReversal123 == 1 and posETT == 1 , 1,
iff(posReversal123 == -1 and posETT == -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 )