Handelsstrategie mit doppelter Indikator-Leichte-Umkehr

Schriftsteller:ChaoZhang, Datum: 2023-10-17 15:45:09
Tags:

img

Übersicht

Die Dual Indicator Slight Reversal Trading Strategy kombiniert Dynamik und Trend-folgende Indikatoren für den kurzfristigen Handel. Die Strategie erzeugt zuerst Handelssignale mit einem Umkehrindikator, kombiniert ihn dann mit einem Trend-folgende Indikator zu produzieren zuverlässigere Signale. Es zielt darauf ab, kurzfristige Preisumkehrungen im Kontext von mittelfristigen Trends zu erfassen.

Grundsätze

Die Strategie besteht aus zwei Teilstrategien.

Die erste ist die 123 Reversal-Strategie. Sie überwacht, ob ein Spitzenumkehrmuster auftritt. Insbesondere erzeugt sie ein Long-Signal, wenn der Schlusskurs der vorherigen zwei Tage sinkt und der aktuelle Schlusskurs höher ist als der vorherige Schlusskurs, wobei die Stochastic Slow Line unter 50 liegt.

Der zweite ist der ergodische Indikator, ein Trend-folgende Indikator, der die Richtung der mittelfristigen bis langfristigen Trends identifiziert.

Die Strategie kombiniert die Signale der beiden Teilstrategien. Sie wird nur dann eine Position eröffnen, wenn die beiden Teilstrategien konsistente Signale erzeugen. Das heißt, sie handelt nur, wenn es eine kurzfristige leichte Umkehrung zusammen mit einem starken mittelfristigen bis langfristigen Trend gibt.

Vorteile

  • Die Kombination mehrerer Indikatoren kann falsche Signale effektiv filtern und die Zuverlässigkeit verbessern.

  • Die Kombination von Umkehrung und Trendverfolgung bietet sowohl kurzfristige Chancen als auch Vermeidung von Gegentrendgeschäften.

  • Die Stochastik-Einstellungen sind ziemlich robust, um Whipsaws zu reduzieren.

  • Die Glättungsparameter des ergodischen Indikators sind so eingestellt, dass Trends besser erkannt werden können.

  • Die Handelsfrequenz ist angemessen, um ausreichende Chancen zu nutzen, ohne übermäßig zu handeln.

  • Für den mittelfristigen Handel mit flexiblen Zeitrahmen geeignet.

Risiken

  • Umkehrsignale können falsche Signale erzeugen und müssen von Trendindikatoren validiert werden.

  • Die geringe Handelsfrequenz kann einige kurzfristige Chancen verpassen.

  • Es könnte eine Umkehrung nach der anderen geben, die einen zeitnahen Stop-Loss erfordert.

  • Unangemessene Parameter-Einstellungen können erhebliche Auswirkungen auf die Ergebnisse haben.

  • Eine allzu hohe Abhängigkeit von technischen Indikatoren birgt das Risiko, dass sie übermäßig angepasst werden.

Erweiterung

  • Versuche verschiedene Parameter-Einstellungen, um Unterstrategien zu optimieren.

  • Einführung von mehr Indikatoren zur Erstellung von Multifaktormodellen.

  • Anwendung von maschinellem Lernen für dynamische Parameteroptimierung.

  • Untersuchen Sie verschiedene Stop-Loss-Methoden zur Risikokontrolle.

  • Studieren Sie Opportunitätskosten und passen Sie die Handelsfrequenz an.

  • Überprüfung der Robustheit der Strategie in verschiedenen Marktregimes.

Schlussfolgerung

Die Dual Indicator Slight Reversal Trading Strategy versucht, kurzfristige Umkehrungschancen in mittelfristigen Zeitrahmen zu erfassen, indem sie Kombinationen von Umkehrungs- und Trend-Nachfolgungsindikatoren verwendet. Sie kann falsche Signale effektiv filtern und Risiken bis zu einem gewissen Grad kontrollieren. Es bestehen jedoch Probleme wie fehlende kurzfristige Chancen, Parameterempfindlichkeit und Überfittingrisiken.


/*backtest
start: 2023-10-09 00:00:00
end: 2023-10-16 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 28/07/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 is one of the techniques described by William Blau in his book "Momentum,
// Direction and Divergence" (1995). If you like to learn more, we advise you to
// read this book. His book focuses on three key aspects of trading: momentum, 
// direction and divergence. Blau, who was an electrical engineer before becoming 
// a trader, thoroughly examines the relationship between price and momentum in 
// step-by-step examples. From this grounding, he then looks at the deficiencies 
// in other oscillators and introduces some innovative techniques, including a 
// fresh twist on Stochastics. On directional issues, he analyzes the intricacies 
// of ADX and offers a unique approach to help define trending and non-trending periods. 
//
// 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


EMDI(r,s,u,SmthLen) =>
    pos = 0
    xEMA = ema(close, r)
    xEMA_S = close - xEMA
    xEMA_U = ema(ema(xEMA_S, s), u)
    xSignal = ema(xEMA_U, u)
    pos := iff(xEMA_U > xSignal, 1,
    	     iff(xEMA_U < xSignal, -1, nz(pos[1], 0)))
    pos

strategy(title="Combo Backtest 123 Reversal & Ergodic MDI", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
r = input(32, minval=1)
s = input(5, minval=1)
u = input(5, minval=1)
SmthLen = input(3, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posEMDI = EMDI(r,s,u,SmthLen)
pos = iff(posReversal123 == 1 and posEMDI == 1 , 1,
	   iff(posReversal123 == -1 and posEMDI == -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 )

Mehr