Dual-Faktor-Reversal-Tracking-Strategie


Erstellungsdatum: 2023-12-19 11:09:20 zuletzt geändert: 2023-12-19 11:09:20
Kopie: 2 Klicks: 545
1
konzentrieren Sie sich auf
1621
Anhänger

Dual-Faktor-Reversal-Tracking-Strategie

Überblick

Diese Strategie ist eine Doppelfaktor-Umkehr-Tracking-Strategie im Bereich des Quantitative Trading. Sie integriert die 123 Umkehr-Strategie und die Keltner-Kanal-Strategie mit dem Ziel, Umkehrsignale zu entdecken und die Kauf- und Verkaufssituation zu erreichen.

Strategieprinzip

Die Strategie besteht aus zwei Unterstrategien. Die erste Unterstrategie ist die 123 Umkehrstrategie, die durch die Berechnung der Schlusskursänderungen der letzten beiden Handelstage in Verbindung mit dem Stochastic-Indikator beurteilt, ob sich der Markt an einem Wendepunkt befindet. Konkret wird ein Kaufsignal ausgesendet, wenn der Schlusskurs zwei Tage in Folge steigt und der Stochastic-Indikator gleichzeitig unter 50 liegt; ein Verkaufsignal wird ausgesendet, wenn der Schlusskurs zwei Tage in Folge fällt und der Stochastic-Indikator gleichzeitig über 50 liegt.

Die zweite Strategie ist die Keltner-Kanal-Strategie. Die Strategie berechnet die typische Durchschnitts- und Schwankungsbreite der letzten n Handelstage und gibt ein Umkehr-Handelssignal aus, wenn der Preis nahe der Auf- und Abwärtsbahn ist.

Schließlich berechnet die Strategie das endgültige Haltungssignal, indem sie die Signalrichtung der beiden Unterstrategien beurteilt. Wenn die beiden Unterstrategien übereinstimmen, wird ein echter Handelsbefehl ausgegeben, ansonsten wird kein Handel getätigt, um die Zwecke der Zwei-Faktor-Verifikation zu erreichen.

Analyse der Stärken

Der größte Vorteil dieser Doppelfaktor-Umkehr-Tracking-Strategie besteht darin, dass Sie die Gelegenheit nutzen können, um bei einer Marktumkehr die Gelegenheit zu ergreifen, einen niedrigen Kauf-Hochverkauf-Handel zu realisieren. Gleichzeitig können Sie durch die Doppelfaktor-Bestätigungsmechanismen die Falschsignale reduzieren und die Qualität der Signale verbessern.

Die Stochastic-Indikator-Parameter-Einstellungen der 123-Umkehr-Strategie sind eher konservativ und können falsche Umkehrungen bei Erschütterungen wirksam filtern. Der Keltner-Kanal verfolgt die Gedanken des Brin-Bands und kann auch die Umkehrungschancen beim Ausbrechen der U-Bahn ergreifen. Die Verwendung der beiden in Kombination kann gegenseitig verifiziert werden, um unnötige Geschäfte zu reduzieren und so eine höhere Gewinnrate zu erzielen.

Risikoanalyse

Das Hauptrisiko dieser Strategie besteht darin, dass die Wahl des Zeitraums für das Auftreten eines Umkehrsignals sehr wichtig ist. Wenn eine Reihe von falschen Umkehrungen oder die falsche Wahl des Zeitpunkts für das Auftreten eines Umkehrsignals auftritt, kann dies dazu führen, dass die Trends nicht vollständig gehalten werden können, was sich auf die endgültigen Gewinne auswirkt.

Darüber hinaus ist die Parameterwahl und Optimierung bei einer Doppelfaktorstrategie schwieriger als bei einer Einzelstrategie. Die Parameter für die beiden Unterstrategien müssen umfassend getestet und bewertet werden, da sie sonst leicht fehlschlagen.

Schließlich sind die Gewinn- und Verlustquoten der Reverse-Trading selbst oft sehr unterschiedlich, und es ist leicht, eine Position zu platzieren, wenn es zu einer Ausnahme kommt. Dies muss durch eine strenge Stop-Loss-Vermeidung vermieden werden.

Optimierungsrichtung

Nach der Risikoanalyse kann diese Strategie optimiert werden in folgenden Bereichen:

  1. Verschiedene Einstellungen für die Reversal Parameter getestet, um eine Kombination mit einer höheren Fehlerfrequenz und weniger falschen Signalen zu finden
  2. Versuchen Sie, die Parameter mit unterschiedlichen Periodenlängen auszuwählen, um die genauen Werte zu finden, die in der Umkehrung erfasst werden
  3. Erhöhung der Stop-Loss-Module und strikte Kontrolle der maximalen Verluste für einzelne Geschäfte
  4. Testen Sie die Wirkung verschiedener Positionszeiten und finden Sie einen Ausgangspunkt, der besser mit der Strategie übereinstimmt
  5. Erhöhung der Anzahl der geöffneten Positionen oder der Positionskontrollmodule, um die Gewinn- und Verlustquote zu verbessern

Zusammenfassen

Diese Strategie ist eine typische Doppelfaktor-Umkehr-Tracking-Strategie, die durch die Integration von 123 Umkehrungen und Keltner-Kanal zwei Unterstrategien, mit dem Ziel, den Markt umzukehren genau zu erfassen, wenn der Preis niedrig zu kaufen und zu verkaufen. Bei Optimierung der Parameter und Risikokontrolle in der Lage, kann diese Strategie einen relativ beträchtlichen Überschuss zu erzielen.

Strategiequellcode
/*backtest
start: 2023-11-18 00:00:00
end: 2023-12-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 09/12/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 Keltner Channel, a classic indicator 
// of technical analysis developed by Chester Keltner in 1960. 
// The indicator is a bit like Bollinger Bands and Envelopes.
//
// 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

KeltnerChn(nPeriod) =>
    pos = 0.0
    xPrice = sma(hlc3, nPeriod)
    xMove = sma(high - low, nPeriod)
    reverse = input(false, title="Trade reverse")
    xUpper = xPrice + xMove
    xLower = xPrice - xMove
    pos := iff(close < xLower, -1,
             iff(close > xUpper, 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Keltner Channel", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
nPeriod = input(title="Period", defval=10, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posKeltnerChn = KeltnerChn(nPeriod)
pos = iff(posReversal123 == 1 and posKeltnerChn == 1 , 1,
	   iff(posReversal123 == -1 and posKeltnerChn == -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 )