Strategie für die Kombination von mehrfachen Umkehrhandelsstrategien

Schriftsteller:ChaoZhang, Datum: 2023-09-20 15:13:58
Tags:

Übersicht

Diese Strategie kombiniert mehrere Umkehrindikatoren, um bei Preisumkehrsignalen entgegengesetzte Positionen einzunehmen.

Strategie Logik

  1. Erstens wird das Umkehrsystem 123 verwendet, um Preisumkehrsignale zu identifizieren, die auf der Preisbewegung von zwei aufeinanderfolgenden Balken und dem Stochastischen Indikator basieren.

  2. Zweitens beurteilt der Indikator "Schnelle und langsame Kurtose" (FSK) die Stimmungsumkehrung anhand der Beschleunigung der Dynamik.

  3. Das Umkehrsystem 123 und der Umkehrindikator FSK werden als eine Kombination kombiniert.

  4. Umgekehrter Handel kann aktiviert werden, indem man kurz geht, wenn das ursprüngliche Signal lang ist, und umgekehrt.

Analyse der Vorteile

  1. Die Kombination mehrerer Faktoren kann die Signalgenauigkeit verbessern und falsche Signale vermeiden.

  2. Das 123-System und der FSK-Indikator ergänzen sich bei der Erfassung von Rückschlägen über Zeiträume hinweg.

  3. Der Umkehrhandel ermöglicht es, von starken Umkehrungen zu profitieren.

  4. Die Verwendung mehrerer Umkehrfaktoren erhöht die Robustheit der Strategie.

  5. Einfach zu verstehen und umzusetzen, geeignet für Anfänger im Quant-Trading.

Risikoanalyse

  1. Umkehrsignale können falsche Signale erzeugen, die zu Verlusten führen.

  2. Ein schlechtes Timing der Umkehrungen kann dazu führen, dass man nach Höhen und Tiefen jagt.

  3. Umgekehrter Handel kann bei anhaltenden Trends zu Verlusten führen.

  4. Eine unsachgemäße Optimierung der Parameter führt zu Überanpassung.

  5. Eine hohe Handelsfrequenz kann zu höheren Transaktionskosten führen.

Optimierungsrichtlinien

  1. Testen Sie, indem Sie andere Umkehrfaktoren wie RSI, KD hinzufügen, um die Kombination zu bereichern.

  2. Optimierung der Parameter für eine bessere Indikatorempfindlichkeit.

  3. Hinzufügen eines Trendfilters, um gegentrendige Trades zu vermeiden.

  4. Dynamische Positionsgrößerung zur Optimierung der Kapitaleffizienz.

  5. Optimieren Sie den Stop Loss, um Verluste pro Trade zu begrenzen.

  6. Bewertung der Auswirkungen auf die Transaktionskosten, um Überhandelungen zu vermeiden.

Schlussfolgerung

Diese Strategie kombiniert das 123 Umkehrsystem und den FSK-Indikator, um Preisumkehrungen in entgegengesetzte Richtung zu handeln. Sie kann falsche Signale filtern und die Genauigkeit verbessern. Aber Umkehrstrategien sind mit dem Risiko unsicherer Umkehrungen konfrontiert. Kontinuierliche Parameter-Tuning, Positionsgrößen und Handelsfrequenzkontrollen sind erforderlich, um Risiken zu reduzieren und die Robustheit zu erhöhen.


/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 14/10/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 plots the Fast & Slow Kurtosis. The Kurtosis is a market
// sentiment indicator. The Kurtosis is constructed from three different parts.
// The Kurtosis, the Fast Kurtosis(FK), and the Fast/Slow Kurtosis(FSK).
//
// 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

FSK(Triger) =>
    pos = 0.0
    xMOM_R = mom(mom(close, 3), 1)
    xMOM_RAvr = ema(xMOM_R, 65)
    xMOM_RWAvr = wma(xMOM_RAvr, 3)
    pos := iff(xMOM_RAvr > Triger and xMOM_RWAvr > Triger, 1,-1) 
    pos

strategy(title="Combo Backtest 123 Reversal & FSK (Fast and Slow Kurtosis)", shorttitle="Combo", overlay = true)
Length = input(15, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
Triger = input(0, minval=0.001)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posFSK = FSK(Triger)
pos = iff(posReversal123 == 1 and posFSK == 1 , 1,
	   iff(posReversal123 == -1 and posFSK == -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