Ehlers Fisher verändert seine Handelsstrategie

Schriftsteller:ChaoZhang, Datum: 2024-01-08 16:51:10
Tags:

img

Übersicht

Diese Strategie basiert auf dem Fisher Transform-Indikator, der von John Ehlers, einem Meister der technischen Analyse, entwickelt wurde, um automatisch Kursumkehrpunkte für den Long/Short-Handel zu identifizieren.

Strategie Logik

Diese Strategie verwendet die Fisher-Transformationsformel, um Preise zu standardisieren und eine nahe Gauss-Verteilungspreiserfolge zu erzeugen. Die Fisher-Transformationsformel lautet: y = 0.5 * ln ((((1+x) /(1-x)). Durch diese Transformation werden Preisextreme in relativ seltenere Ereignisse umgewandelt. Wenn der neueste Fisher-Transformationswert höher/niedriger ist als der vorherige Zeitraum, zeigt dies eine mögliche Preisumkehr an. Die Strategie erzeugt Handelssignale basierend auf den Wendepunkten dieses Indikators.

Insbesondere sind die Strategie-Schritte wie folgt:

  1. Berechnung des mittleren Preises HL2;
  2. Berechnen Sie den höchsten Preis xMaxH und den niedrigsten Preis xMinL über den Zeitraum Länge;
  3. Der Standardpreis nValue1=(xHL2 - xMinL) / (xMaxH - xMinL) wird berechnet - 0,5;
  4. Schlanke nValue1, um nValue2 zu erhalten, um Extreme zu vermeiden;
  5. Die Fisher-Transformationsformel wird auf nValue2 angewendet, um den Fisher-Indikator nFish zu erhalten.
  6. Vergleichen Sie nFish mit dem vorherigen Wert, um festzustellen, ob eine Wende stattgefunden hat, und setzen Sie die Handelsrichtung pos;
  7. Lange/kurze Positionen auf Basis von Pos setzen, um Handelssignale zu generieren.

Analyse der Vorteile

Der größte Vorteil dieser Strategie ist die Genauigkeit und Aktualität ihrer Handelssignale. Da die Fisher-transformierte Preissequenz einer Gauss-Verteilung annähert, können Preisumkehrungen schnell durch den Fisher-Indikator identifiziert und reagiert werden. Dies gewährleistet rechtzeitige Fangmöglichkeiten für Umkehrungen. Darüber hinaus wurde die Ehlers-Fisher-Transformation selbst auch umfassend für sehr zuverlässige Umkehrsignale validiert.

Risikoanalyse

Das größte Risiko dieser Strategie besteht darin, dass die Fisher-transformierte Preissequenz möglicherweise nicht perfekt der theoretischen Gauss-Verteilung entspricht.

Um dieses Risiko zu verringern, können wir andere Indikatoren zur Signalfilterung kombinieren und Trades während abnormaler Märkte vermeiden.

Optimierungsrichtlinien

Diese Strategie kann in folgenden Aspekten optimiert werden:

  1. Optimierung des Parameters Länge, um die besten Kombinationen für verschiedene Marktbedingungen zu finden;
  2. Hinzufügen von Stop-Loss-Mechanismen zur Begrenzung von Abwärtswirkungen;
  3. Hinzufügen von Handelsfiltern, um falsche Trades auf abnormalen Märkten zu vermeiden;
  4. Kombination mit anderen Indikatoren zur Verbesserung der Signalgenauigkeit.

Schlussfolgerung

Diese Strategie nutzt den Ehlers Fisher Transform-Indikator, um schnell und genau Preisumkehrpunkte für zeitnahe Handelseinträge zu identifizieren. Seine größte Stärke liegt in der Genauigkeit und Aktualität der Handelssignale. Es gibt auch Risiken, die Parameter-Tuning und Handelsregeloptimierungen erfordern, um zu mildern. Insgesamt verdient diese Strategie weitere Forschung und Anwendung.


/*backtest
start: 2023-12-08 00:00:00
end: 2024-01-07 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 15/12/2016
// 	Market prices do not have a Gaussian probability density function
// 	as many traders think. Their probability curve is not bell-shaped.
// 	But trader can create a nearly Gaussian PDF for prices by normalizing
// 	them or creating a normalized indicator such as the relative strength
// 	index and applying the Fisher transform. Such a transformed output 
// 	creates the peak swings as relatively rare events.
// 	Fisher transform formula is: y = 0.5 * ln ((1+x)/(1-x))
// 	The sharp turning points of these peak swings clearly and unambiguously
// 	identify price reversals in a timely manner. 
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Fisher Transform Indicator by Ehlers Backtest", shorttitle="Fisher Transform Indicator by Ehlers")
Length = input(10, minval=1)
reverse = input(false, title="Trade reverse")
xHL2 = hl2
xMaxH = highest(xHL2, Length)
xMinL = lowest(xHL2,Length)
nValue1 = 0.33 * 2 * ((xHL2 - xMinL) / (xMaxH - xMinL) - 0.5) + 0.67 * nz(nValue1[1])
nValue2 =   iff(nValue1 > .99,  .999,
	         iff(nValue1 < -.99, -.999, nValue1))
nFish = 0.5 * log((1 + nValue2) / (1 - nValue2)) + 0.5 * nz(nFish[1])
pos = iff(nFish > nz(nFish[1]), 1,
	   iff(nFish < nz(nFish[1]), -1, nz(pos[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)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nFish, color=green, title="Fisher")
plot(nz(nFish[1]), color=red, title="Trigger")

Mehr