Momentum Turn Pattern Reversal Strategie


Erstellungsdatum: 2023-11-15 15:36:39 zuletzt geändert: 2023-11-15 15:36:39
Kopie: 0 Klicks: 632
1
konzentrieren Sie sich auf
1617
Anhänger

Momentum Turn Pattern Reversal Strategie

Überblick

Die Strategie kombiniert die Strategie 123 Form Reversal mit der Strategie Easy Moving, die darauf abzielt, den Handel durch die Erfassung von Preiswendepunkten zu führen. Die Strategie 123 Form Reversal erzeugt Signale, wenn die Aktienpreise an drei aufeinanderfolgenden Tagen ein bestimmtes Modell bilden. Die Strategie Easy Moving (EOM) nutzt die Preis- und Transaktionsvolumenänderungen, um die Marktdynamik zu ermitteln.

Strategieprinzip

Die Strategie besteht aus zwei Teilen:

  1. 123 Umkehrung der Form
  • Überkauf und Überverkauf anhand des Stoch-Indikators
  • Kurzschluss, wenn der Schlusskurs zwei Tage in Folge gefallen ist und die Stoch-Schnelllinie über der Schnelllinie liegt
  • Wenn der Schlusskurs zwei Tage in Folge höher ist und die Stoch-Schnelllinie unter der Schnelllinie liegt, machen Sie mehr
  1. Einfach zu bewegliche Strategien
  • Berechnen Sie den Mittelpunkt des Vortags
  • Bewegung (Veränderung) der Mittelpunkte des berechneten Intervalls gegenüber dem Vortag
  • Berechnung des Verhältnisses zwischen der mittleren Bewegung und der Transaktionsmenge
  • Bei höheren als niedrigen Werten ist der Preis hoch, bei niedrigeren Werten ist er niedriger.

Wenn Easy of Movement und 123 Form gleichzeitig mehrere Signale machen, öffnen Sie mehrere Positionen; wenn Easy of Movement und 123 Form gleichzeitig leere Signale machen, öffnen Sie leere Positionen.

Analyse der Stärken

Diese Strategie hat folgende Vorteile:

  1. Preise, Technologie und Marktdynamik, um die Signalgenauigkeit zu verbessern

  2. 123 Form-Rückkehr, um Wendepunkte zu erfassen, leicht zu bewegen, um Trendbewegungen zu beurteilen, die sich ergänzen

  3. Stoch vermeidet wiederholte Negativpositionen bei der Bilanzierung

  4. Die Transaktionslogik ist einfach, übersichtlich und leicht umzusetzen.

  5. Anpassbare Parameter für unterschiedliche Marktumgebungen

Risikoanalyse

Die Strategie birgt auch einige Risiken:

  1. Übermäßige Abhängigkeit von Parameter-Einstellungen, die zu häufigen oder fehlenden Transaktionen führen können

  2. Die Kombination verschiedener Filterbedingungen kann zu niedrige Frequenzen erzeugen.

  3. Leicht bewegliche Indikatoren, die auf Marktschwankungen reagieren und falsche Signale auslösen können

  4. Ein wenig Rückschätzung auf der Festplatte und Kontrolle der Positionsgröße

  5. Nur für Trend-Aktien, nicht für die Börsengründung

Optimierungsrichtung

Die Strategie kann in folgenden Bereichen optimiert werden:

  1. Optimierung der Parameter, Anpassung der Strenge der Filterbedingungen, Ausgleich der Handelsfrequenz und der Signalqualität

  2. Ein Stop-Loss-Strategien und eine strenge Kontrolle der Einzelschäden

  3. Trendfilter und Abwehr von Gegenhandel

  4. Erweiterung des Moduls für die Vermögensverwaltung und dynamische Anpassung der Positionen an die Volatilität

  5. Optimierung der Parameter mithilfe von maschinellen Lernmethoden, um sie dynamisch an den Markt anzupassen

Zusammenfassen

Die Strategie integriert Preis-Technik-Indikatoren und Markt-Dynamik-Indikatoren, während die Erfassung der Wendepunkte zu bestätigen, Trend-Qualität, hat einen hohen praktischen Wert. Aber auch auf die Risiken der Kontrolle der Handelsfrequenz, Einzelschäden und Gegenwirkung zu handeln. Durch Parameter-Optimierung, Stop-Loss-Strategie, Trend-Filterung und andere Mittel können die Stabilität und die Ertragsfähigkeit der Strategie weiter verbessert werden. Die Strategie-Idee ist klar und einfach zu implementieren, und es lohnt sich, quantitative Händler weiter zu studieren und zu verbessern.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 14/04/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 indicator gauges the magnitude of price and volume movement. 
// The indicator returns both positive and negative values where a 
// positive value means the market has moved up from yesterday's value 
// and a negative value means the market has moved down. A large positive 
// or large negative value indicates a large move in price and/or lighter 
// volume. A small positive or small negative value indicates a small move 
// in price and/or heavier volume.
// A positive or negative numeric value. A positive value means the market 
// has moved up from yesterday's value, whereas, a negative value means the 
// market has moved down. 
//
// 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

EOM(BuyZone, SellZone) =>
    pos = 0
    xHigh = high
    xLow = low
    xVolume = volume
    xHalfRange = (xHigh - xLow) * 0.5
    xMidpointMove = mom(xHalfRange, 1)
    xBoxRatio = iff((xHigh - xLow) != 0, xVolume / (xHigh - xLow), 0)
    nRes = iff(xBoxRatio != 0, 1000000 * ((xMidpointMove - xMidpointMove[1]) / xBoxRatio), 0)
    pos := iff(nRes > BuyZone, 1,
             iff(nRes < SellZone, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Ease of Movement (EOM)", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
BuyZone = input(4000, minval=1)
SellZone = input(-4000)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posEOM = EOM(BuyZone, SellZone)
pos = iff(posReversal123 == 1 and posEOM == 1 , 1,
	   iff(posReversal123 == -1 and posEOM == -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 )