Strategie zur Umkehrung der Dynamik für mehrere Zeitrahmen

Schriftsteller:ChaoZhang, Datum: 2023-10-30 10:42:54
Tags:

img

Übersicht

Diese Strategie kombiniert Dynamikindikatoren über verschiedene Zeitrahmen hinweg, um Trendumkehrungen in mehreren Zeitskalen zu identifizieren.

Strategie Logik

Die Strategie besteht aus zwei Bestandteilen:

  1. 123 Umkehrung

Es verwendet Stochastic Fast Line Crossing unter der Slow Line zusammen mit Preisumkehrmustern, um kurzfristige Trendumkehrungen zu identifizieren. Insbesondere geht es lang, wenn der Preis höher als der vorherige Schlusskurs schließt und die Stochastic Fast Line unter der Slow Line und unter 50 kreuzt; es geht kurz, wenn der Preis niedriger als der vorherige Schlusskurs schließt und die Stochastic Fast Line über die Slow Line und über 50 kreuzt. Dieser Teil zielt darauf ab, durchschnittliche Umkehrsetzungen auf der Grundlage von Überkauf/Überverkaufswerte zu erfassen.

  1. (Höchst-Tiefste) / Schließindikator

Dieser Indikator misst die Volatilität der aktuellen Bar. Höhere Werte deuten auf eine erhöhte Volatilität und mögliche Umkehrungen hin, während niedrigere Werte auf eine verminderte Volatilität und eine Fortsetzung des Trends hindeuten. Die Strategie verwendet SMA dieses Indikators, um mittelfristige bis langfristige Trendumkehrungen zu identifizieren.

Zusammen ermöglichen die beiden Komponenten es der Strategie, Rückschläge in kurzen und mittleren bis langen Zeitrahmen zu erkennen.

Vorteile

  • Verbesserte Genauigkeit durch Zeitrahmenindikatoren

    Die Verwendung von kurz- und mittel- bis langfristigen Indikatoren gewährleistet die Signalzuverlässigkeit und vermeidet falsche Signale.

  • Flexible Indikatorparameter

    Die Parameter der Stochastik und (H-L) /C können für die Marktregime angepasst werden, was die Strategie robust macht.

  • Einfache und intuitive Logik

    Mit dem Stochastic als Kern und einem Trendfilter ist der Rahmen einfach und leicht verständlich.

  • Ausweitung

    Der einfache Rahmen ermöglicht die einfache Einbeziehung mehrerer Indikatoren zum Aufbau von Multifaktormodellen.

Risiken

  • Bei anhaltendem Trend kann es unterdurchschnittlich sein

    Die durchschnittliche Umkehrung macht sie für stark trendige Märkte weniger ideal.

  • Risiko falscher Signale

    Stochastic und (H-L) /C können in abnormalen Märkten falsche Signale auslösen.

  • Die Anzeige-Abstimmung erfordert Fachwissen

    Die Parameter müssen für sich ändernde Märkte optimiert werden, sonst kann die Leistung beeinträchtigt werden.

  • Es ist eine geeignete Positionsgröße erforderlich.

    Als Umkehrstrategie ist ein umsichtiges Risikomanagement bei der Positionsgrößenbildung wichtig.

Möglichkeiten zur Verbesserung

  • Mehr Faktoren im Multifaktormodell

    Zusätzliche Faktoren wie Volumen, andere Umkehrindikatoren können hinzugefügt werden, um Multifaktormodelle zu erstellen.

  • Implementieren von Stop Loss

    Stop Loss auf Zeit oder bewegliche Basis könnte dazu beitragen, Einzelhandelsverluste zu kontrollieren.

  • Optimierung der Parameter

    Es können systematischere Parameter-Tuning-Methoden wie genetische Algorithmen untersucht werden.

  • Maschinelles Lernen

    ML-Algorithmen können dazu beitragen, die Genauigkeit der Umkehrvorhersage zu verbessern.

  • Analyse der Stimmung

    Die Einbeziehung alternativer Daten wie soziale Stimmung könnte bei der Vorhersage von Umkehrungen helfen.

Schlussfolgerung

Diese Strategie kombiniert kurz- und mittelfristige Indikatoren, um Rückschläge über Zeiträume hinweg zu identifizieren. Sie hat Vorteile wie flexible Parameter, einfache Struktur, Erweiterbarkeit. Die nächsten Schritte könnten mehr Faktoren, Stop-Loss, Parameteroptimierung, maschinelles Lernen umfassen, um die Rentabilität und das Risikomanagement weiter zu verbessern. Insgesamt ist dies eine innovative Strategie, die es wert ist, recherchiert und angewendet zu werden.


//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 23/05/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.
//
// Second strategy
//  This histogram displays (high-low)/close
//  Can be applied to any time frame.
//
// 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

HLCHist(input_barsback, input_percentorprice, input_smalength) =>
    xPrice = (high-low)/close
    xPriceHL = (high-low)
    xPrice1 = iff(input_percentorprice, xPrice * 100, xPriceHL)
    xPrice1SMA = sma(abs(xPrice1), input_smalength)
    pos = 0.0
    pos := iff(xPrice1SMA[input_barsback] > abs(xPrice1), 1,
    	   iff(xPrice1SMA[input_barsback] < abs(xPrice1), -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & (H-L)/C Histogram", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
input_barsback = input(4, title="Look Back")
input_percentorprice = input(false, title="% change")
input_smalength = input(13, title="SMA Length")
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posHLCHist = HLCHist(input_barsback, input_percentorprice, input_smalength)
pos = iff(posReversal123 == 1 and posHLCHist == 1 , 1,
	   iff(posReversal123 == -1 and posHLCHist == -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 ) 	   

Mehr