Basierend auf der Double-Reversal-Arbitrage-Strategie


Erstellungsdatum: 2024-02-06 09:58:04 zuletzt geändert: 2024-02-06 09:58:04
Kopie: 2 Klicks: 689
1
konzentrieren Sie sich auf
1617
Anhänger

Basierend auf der Double-Reversal-Arbitrage-Strategie

Überblick

Die Doppelreverse-Arbitrage-Strategie ist ein Arbitrage-Algorithmus, der die Doppelreverse-Indikatoren kombiniert. Es integriert die 123 Reverse-System und die beiden Unterstrategien der Gann-Schwankungslinie, die ein Handelssignal erzeugen, wenn die beiden Unterstrategien gleichzeitig signalisieren, um einen Arbitragevorgang zu ermöglichen.

Strategieprinzip

Die Strategie besteht aus zwei Unterstrategien:

  1. 123 Umkehrsystem: Es stammt aus Ulf Jensens Buch “Wie man dreimal mehr Geld am Futures-Markt verdient”, Seite 183. Die Handelsregeln sind: Wenn der Schlusskurs höher ist als der Schlusskurs des Vortages und niedriger als der Schlusskurs der letzten zwei Tage, dann machen Sie einen Plus unter der langsamen K-Linie unter 50; wenn der Schlusskurs niedriger ist als der Schlusskurs des Vortages und höher als der Schlusskurs der letzten zwei Tage, dann machen Sie einen Minus unter der schnellen K-Linie über 50.

  2. Der Gann-Schwanklinien-Schwankungs-Indikator: Er stammt von Robert Krausz und wurde von W.D. Gann in seinem Buch Treasures of Fortune entdeckt. Er beurteilt die Richtung des Marktes, indem er die Höchst- und Tiefstpreise in einem bestimmten Zeitraum berechnet.

Die Handelslogik dieser Strategie lautet: Das tatsächliche Handelssignal wird erzeugt, wenn die Signalrichtung der beiden Unterstrategien übereinstimmt. Mehrsignal ist, wenn die beiden Unterstrategien gleichzeitig mehrsignalisieren; Abbruchsignal ist, wenn die beiden Unterstrategien gleichzeitig Abbruchsignalisieren.

Analyse der Stärken

Der größte Vorteil dieser Strategie liegt in der Integration der Signale der beiden Unterstrategien, die effektiv Falschsignale filtern und die Genauigkeit der Handelssignale verbessern können. Die beiden Unterstrategien haben ihre eigenen Vorteile. Das 123 Reversing System kann plötzliche Kehrbewegungen erfassen, während der Gann Swing-Line-Oscillation-Indikator die Reifezeit für eine Trendwende beurteilen kann.

Risikoanalyse

Das Hauptrisiko dieser Strategie besteht darin, dass die Wahrscheinlichkeit, dass die Handelssignale der beiden Unterstrategien nicht übereinstimmen, höher ist, was zu weniger Handelssignalen führt. Darüber hinaus besteht ein gewisses Risiko für falsche Signale in den Unterstrategien selbst. Diese beiden Faktoren können zusammen dazu führen, dass die Strategie nicht genug gehandelt wird und keine Marktchancen genutzt werden können.

Um das Risiko zu verringern, können die Parameter der Unterstrategie angepasst werden, um die Handelsfrequenz angemessen zu erhöhen, oder in Kombination mit anderen Indikatoren, um die Urteilsvermögen zu unterstützen, um falsche Signale zu filtern. Wenn zwischen zwei Unterstrategien eine größere Signaldifferenz besteht, kann auch nur der zuverlässigere Teilnehmer berücksichtigt werden.

Optimierungsrichtung

Die Strategie kann in folgenden Bereichen optimiert werden:

  1. Die Parameter der Substratie werden angepasst, um die Häufigkeit der Transaktionen zu optimieren.
  2. Das Programm wurde von der Kommission in Zusammenarbeit mit den nationalen und regionalen Behörden der EU finanziert.
  3. Strategische Gewichte für die verschiedenen Sorten und Zyklusoptimierungs-Subsysteme;
  4. Ein Stop-Loss-Mechanismus, um einzelne Verluste zu kontrollieren.

Zusammenfassen

Die Doppel-Umkehr-Streaming-Strategie bildet ein stärkeres Handelssignal durch die Integration von zwei verschiedenen Arten von Umkehr-Strategien. Sie kann effektiv den Lärm beseitigen, die Signalqualität verbessern und ist geeignet, um Umkehr-Gelegenheiten in den Märkten zu erfassen. Die Unterstrategie erzeugt jedoch eine größere Wahrscheinlichkeit für ein ungleichmäßiges Signal, was zu Problemen mit unzureichender Handelsfrequenz führen kann.

Strategiequellcode
/*backtest
start: 2024-01-06 00:00:00
end: 2024-02-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 04/11/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
// The Gann Swing Oscillator has been adapted from Robert Krausz's book, 
// "A W.D. Gann Treasure Discovered". The Gann Swing Oscillator helps 
// define market swings. 
//
// 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

    
GannSO(Length) =>
    pos = 0.0
    xGSO = 0.0
    xHH = highest(Length)
    xLL = lowest(Length)
    xGSO:= iff(xHH[2] > xHH[1] and xHH[0] > xHH[1], 1,
             iff(xLL[2] < xLL[1] and xLL[0] < xLL[1], -1, nz(xGSO[1],0)))
    pos := iff(xGSO > 0, 1,
    	     iff(xGSO < 0, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Gann Swing Oscillator", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
LengthGSO = input(5, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posGannSO = GannSO(LengthGSO)
pos = iff(posReversal123 == 1 and posGannSO == 1 , 1,
	   iff(posReversal123 == -1 and posGannSO == -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 )