Zweifelhafte Golden Cross-Umkehrhandelsstrategie

Schriftsteller:ChaoZhang, Datum: 2023-11-03 15:32:38
Tags:

img

Übersicht

Die Dual Golden Cross Reversal Trading Strategie ist eine Handelsstrategie, die mehrere Indikatoren der technischen Analyse kombiniert.

Strategieprinzipien

Die Strategie besteht aus zwei Teilstrategien:

  1. 123 Umkehrmusterstrategie

    Es erzeugt Handelssignale basierend auf den Schlusskurs von Aktien. Die Signale werden ausgelöst, wenn sich die Beziehung zwischen den Schlusskurs der aufeinander folgenden Tage ändert. Insbesondere wird ein kurzes Signal erzeugt, wenn der vorherige Schlusskurs höher ist als der von vor zwei Tagen und der aktuelle Schlusskurs niedriger ist als der vorherige Tag. Ein langes Signal wird erzeugt, wenn der vorherige Schlusskurs niedriger ist als der von vor zwei Tagen und der aktuelle Schlusskurs höher als der vorherige Tag. Darüber hinaus werden die Signale nur aktiviert, wenn der stochastische Oszillator überschreitet. Das heißt, das lange Signal wird nur aktiviert, wenn die schnelle Linie unterhalb der langsamen Linie ist. Das kurze Signal wird nur aktiviert, wenn die schnelle Linie über der langsamen Linie liegt.

  2. Strategie für Primzahlenbänder

    Diese Strategie verwendet die einzigartige Verteilung von Primzahlen, um die Preisschwankungen zu bestimmen. Zuerst werden die höchsten und niedrigsten Primzahlen innerhalb eines bestimmten Prozentsatzzwischenbereichs des Preises lokalisiert und die beiden Primzahlenreihen als Bands dargestellt. Handelssignale werden generiert, wenn der Preis die Bands berührt. Insbesondere wird ein langes Signal ausgelöst, wenn der Preis über das obere Band bricht. Ein kurzes Signal wird ausgelöst, wenn der Preis unter das untere Band bricht.

Die beiden Unterstrategien werden kombiniert, um die endgültigen Handelssignale zu erzeugen. Das heißt, das lange Signal wird nur erzeugt, wenn beide Strategien lange Signale erzeugen. Ähnlich für die kurzen Signale. Kein Handel wird ausgeführt, wenn die Signale der beiden Strategien einander widersprechen.

Analyse der Vorteile

Die Strategie weist folgende Vorteile auf:

  1. Erhöhung der Rentabilität durch Signalintegration

    Durch die Kombination von Signalen aus zwei verschiedenen Arten von Strategien kann die Zuverlässigkeit der Signale überprüft werden, um mit hoher Wahrscheinlichkeit profitable Handelsmöglichkeiten zu identifizieren.

  2. Hohe Gewinnrate von 123 Umkehrmuster

    Das 123 Umkehrmuster ist eine klassische Gegensatzstrategie, die Umkehrmöglichkeiten aus kurzfristigen Überkauf- und Überverkaufssituationen erfassen kann und somit eine relativ hohe Gewinnrate im Live-Handel aufweist.

  3. Primzahlenbänder erfassen Preismuster

    Primzahlenbänder nutzen die einzigartige Zufälligkeit von Primzahlen, um Preisschwankungsbereiche zu bestimmen, subjektive Verzerrungen zu vermeiden und die Objektivität von Handelssignalen zu verbessern.

  4. Neue Strategie-Logik vermeidet Ausbeutung

    Die innovative Integration mehrerer Indikatoren macht die Strategie weniger anfällig für Reverse Engineering und Ausnutzung durch Nachahmungsstrategien.

Risikoanalyse

Die Strategie birgt außerdem folgende Risiken:

  1. Risiko einer fehlgeschlagenen Umkehrung

    Als Umkehrstrategie können fehlgeschlagene Umkehrungen des 123-Musters zu Verlusten führen.

  2. Ausfall der Primzahlenbänder

    Die Primzahlenbänder hängen von der richtigen Parameter-Ausrichtung ab. Falsche Parameter können sie unwirksam machen.

  3. Erhöhte Handelsfrequenz aus mehreren Signalen

    Bei der Kombination von zwei Signalquellen können mehr Trades generiert werden.

  4. Schwierige Optimierung

    Die Optimierung von Parametern aus zwei integrierten Strategien kann eine Herausforderung sein.

Optimierungsvorschläge

Die Strategie kann in folgenden Aspekten optimiert werden:

  1. Die Risikopositionen werden in der Tabelle 060 angegeben.

  2. Optimierung der Parameter für Primzahlbänder, um sie den neuesten Marktbedingungen anzupassen.

  3. Kontrolle der Handelsfrequenz, um zu vermeiden, dass die Handelskosten durch Überhandelungen verringert werden.

  4. Einführung von Algorithmen für maschinelles Lernen zur Automatisierung der Optimierung von Strategieparametern.

  5. Zusätzliche Bestätigungsindikatoren wie Lautstärken, um die Signalgenauigkeit weiter zu verbessern.

Zusammenfassung

Die doppelte Golden Cross-Reversal-Handelsstrategie integriert mehrere technische Indikatoren, um Noise-Trades auszufiltern und hochwahrscheinliche Handelsmöglichkeiten durch Signalverifizierung zu identifizieren.


/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 23/04/2021
// 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
// Determining market trends has become a science even though a high number 
// or people still believe it’s a gambling game. Mathematicians, technicians, 
// brokers and investors have worked together in developing quite several 
// indicators to help them better understand and forecast market movements.
// The Prime Number Bands indicator was developed by Modulus Financial Engineering 
// Inc. This indicator is charted by indentifying the highest and lowest prime number 
// in the neighborhood and plotting the two series as a band.
//
// 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

PrimeNumberUpBand(price, percent) =>
    res = 0.0
    res1 = 0.0
    for j = price to price + (price * percent / 100)
        res1 := j
	    for i = 2 to sqrt(price)
        	res1 := iff(j % i == 0 , 0, j)
            if res1 == 0 
                break
		if res1 > 0 
		    break
    res := iff(res1 == 0, res[1], res1)
    res

PrimeNumberDnBand(price, percent) =>
    res = 0.0
    res2 = 0.0
    for j = price to price - (price * percent / 100)
        res2 := j
	    for i = 2 to sqrt(price)
        	res2 := iff(j % i == 0 , 0, j)
            if res2 == 0 
                break
		if res2 > 0 
		    break
    res := iff(res2 == 0, res[1], res2)
    res

PNB(percent, Length,srcUp,srcDn) =>
    pos = 0.0
    xPNUB = PrimeNumberUpBand(srcUp, percent)
    xPNDB = PrimeNumberDnBand(srcDn, percent)
    xHighestPNUB = highest(xPNUB, Length)
    xLowestPNUB = lowest(xPNDB, Length)
    pos:= iff(close > xHighestPNUB[1], 1,
             iff(close < xLowestPNUB[1], -1, nz(pos[1], 0))) 
    pos


strategy(title="Combo Backtest 123 Reversal & Prime Number Bands", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Prime Number Bands ----")
percent = input(5, minval=0.01, step = 0.01, title="Tolerance Percentage")
Length_PNB = input(5, minval=1)
srcUp = input(title="Source Up Band", type=input.source, defval=high)
srcDn = input(title="Source Down Band", type=input.source, defval=low)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posPNB = PNB(percent, Length_PNB,srcUp,srcDn)
pos = iff(posReversal123 == 1 and posPNB == 1 , 1,
	   iff(posReversal123 == -1 and posPNB == -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