Doppelte Schockverfolgungs-Umkehrhandelsstrategie


Erstellungsdatum: 2023-10-11 14:47:25 zuletzt geändert: 2023-10-11 14:47:25
Kopie: 0 Klicks: 585
1
konzentrieren Sie sich auf
1617
Anhänger

Überblick

Die Strategie ist eine doppelte Shock-Tracking-Rückkehr-Handelsstrategie, die eine Kombination aus einer Random-Index-Rückkehr-Strategie und einem Yaken-Volatilitätsindikator verwendet, um zuverlässigere Handelssignale zu erhalten. Die Strategie zielt darauf ab, Gewinne an Trendwendepunkten zu erfassen und ist für den Handel mit mittleren und langen Linien geeignet.

Strategieprinzip

Die Strategie besteht aus zwei Teilen:

  1. Strategie zur Rückführung von Zufallsindikatoren

Dieser Abschnitt verwendet die Schnell- und Langleiste eines zufälligen Indikators, um ein Handelssignal zu erzeugen. Wenn der Schlusskurs zwei Tage in Folge unter dem Schlusskurs des Vortages liegt und der Schnellkurs höher ist als der Langleiste, wird ein Plus getätigt. Wenn der Schlusskurs zwei Tage in Folge über dem Schlusskurs des Vortages liegt und der Schnellkurs unter dem Langleiter liegt, wird ein Minus getätigt.

  1. Einer der Yaken-Raten

Der Indikator berechnet die Veränderung der Differenz zwischen den höchsten und niedrigsten Preisen innerhalb einer bestimmten Zeit. Wenn die Differenz größer ist, bedeutet dies, dass die Schwankungen ansteigen, und Sie können etwas tun. Wenn die Differenz kleiner ist, bedeutet dies, dass die Schwankungen sinken, und Sie können mehr tun.

Das endgültige Handelssignal ist eine Kombination aus zwei Teilen des Signals. Das Signal wird genommen, wenn das Signal des Zufallsindikators und das Signal des Volatilitätsindikators übereinstimmen; wenn die beiden Signale nicht übereinstimmen, wird nicht gehandelt.

Analyse der Stärken

Diese Strategie hat folgende Vorteile:

  1. Durch die Kombination zweier verschiedener Arten von Indikatoren kann die Signalgenauigkeit verbessert werden.

  2. Die Verwendung von Doppelbestätigungsmechanismen verringert Falschmeldungen und kontrolliert das Risiko.

  3. Der Trendwechsel ist die wichtigste Handelsrichtung, um am Trendwechselpunkt zu profitieren.

  4. Die Parameter sind flexibel eingestellt und können für verschiedene Sorten und Perioden angepasst werden.

  5. Die Parameter des Indikators können optimiert werden.

Risikoanalyse

Die Strategie birgt auch folgende Risiken:

  1. Die Umkehrsignale können falsch beurteilt werden, was zu Verlusten führt. Die Parameter können entsprechend angepasst werden, um die Wahrscheinlichkeit von Fehleinschätzungen zu verringern.

  2. Bei starkem Anstieg der Volatilität besteht die Gefahr eines Verlustes durch eine kurzfristige Ausrichtung.

  3. Bei starken Schwankungen kann die Doppelindex-Palette ausfallen. Es kann in Betracht gezogen werden, den Handel auszusetzen, bis sich der Index wieder stabilisiert.

  4. Die Notwendigkeit, zwei Indikatoren gleichzeitig zu überwachen, erhöht die Arbeitsbelastung der Händler.

Optimierungsrichtung

Die Strategie kann optimiert werden durch:

  1. Test mehr Parameterkombinationen, um die besten Parameter zu finden.

  2. Zusätzliche Bestätigungskennzahlen, wie z. B. die Preis-/Menge-Kennzahlen, bilden eine Mehrfachbestätigung.

  3. Die Einführung von Stop-Loss-Mechanismen, wie z. B. Stop-Loss in Bewegung und Stop-Loss in der Zeit, um das Risiko weiter zu kontrollieren.

  4. Optimierung von Kapitalmanagementstrategien, wie z. B. Fixed-Equity-Anteile, Kelly-Anteile usw., zur Steigerung der Ertragsfähigkeit.

  5. Die Parameter für verschiedene Sorten und Perioden sind unterschiedlich eingestellt, so dass die Eignung für mehr Sorten und Perioden getestet werden kann.

Zusammenfassen

Die Strategie kombiniert die Verwendung von doppelten Indikatoren, um Handelssignale zu erzeugen, um Marktumkehrungen als Haupthandelsrichtung zu erfassen. Mit Vorteilen wie hoher Signalgenauigkeit und guter Risikokontrolle gibt es auch einige Verbesserungsmöglichkeiten. Durch Verbesserungen in den Bereichen Parameteroptimierung, Stop-Loss und Kapitalmanagement kann die Strategie zu einer starken mittleren Umkehrungsstrategie optimiert werden.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 29/07/2019
// 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
// Chaikin's Volatility indicator compares the spread between a security's
// high and low prices. It quantifies volatility as a widening of the range
// between the high and the low price.
// You can use in the xPrice1 and xPrice2 any series: Open, High, Low, Close, HL2,
// HLC3, OHLC4 and ect...
//
// 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

ChaikinVolatility(Length, ROCLength, Trigger) =>
    pos = 0
    xPrice1 = high
    xPrice2 = low
    xPrice = xPrice1 - xPrice2
    xROC_EMA = roc(ema(xPrice, Length), ROCLength)
    pos := iff(xROC_EMA < Trigger, 1,
	         iff(xROC_EMA > Trigger, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Chaikin Volatility", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthCV = input(10, minval=1)
ROCLength = input(12, minval=1)
Trigger = input(0, minval=0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posChaikinVolatility = ChaikinVolatility(LengthCV, ROCLength, Trigger)
pos = iff(posReversal123 == 1 and posChaikinVolatility == 1 , 1,
	   iff(posReversal123 == -1 and posChaikinVolatility == -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 )