Williams' anspruchsvolle Oszillator (AC) Backtesting-Strategie


Erstellungsdatum: 2023-12-18 12:03:38 zuletzt geändert: 2023-12-18 12:03:38
Kopie: 0 Klicks: 749
1
konzentrieren Sie sich auf
1621
Anhänger

Williams’ anspruchsvolle Oszillator (AC) Backtesting-Strategie

Überblick

Die Strategie basiert auf dem “Awesome Oscillator” (AO) im Williamson Index, der von Bill Williams entwickelt wurde. Er erstellt ein Schwankungsindikator für diagnostische Trends und Marktdynamiken, indem er die Differenz zwischen den Mittelpreislinien für verschiedene Perioden berechnet und entsprechende Handelssignale entwickelt, um Kauf- und Verkaufsschritte zu steuern.

Strategieprinzip

Der Kernindikator der Strategie ist der Subtile Oscillator ((AO), dessen Berechnungsformel lautet: AO = SMA (Mittelkurs, 5 Tage) - SMA (Mittelkurs, 34 Tage) Der Mittelwert wird definiert als ((höchster Preis + niedrigerer Preis) / 2 ⋅ die Formel extrahiert die Preisbewegungsinformation aus den Mittelwert-SMAs zweier unterschiedlicher Perioden. Durch die Berechnung der Differenz zwischen dem schnellen SMA ((5 Tage) und dem langsamen SMA ((34 Tage) wird ein Kaufsignal ausgegeben, wenn die schnelle Linie höher ist als die langsame Linie, und ein Verkaufsignal, wenn die schnelle Linie niedriger ist als die langsame Linie.

In dieser Strategie wurde ein 5-Tage-SMA-Operation mit AO durchgeführt, um das Fehlsignal zu filtern. Es wurde ein Umkehrmodus eingerichtet, der durch die Umkehrung des Long/Short-Signals eine unterschiedliche Handelsrichtung ermöglicht. Wenn der AO-Wert höher ist als zuvor, wird dies als Kaufmöglichkeit betrachtet, die mit einer blauen Säule markiert ist.

Strategische Vorteile

  1. Die Verwendung von Zwischenpreisen anstelle von Schlusspreisen reduziert die Auswirkungen von Falschbrüchen auf die SMA und erhöht die Stabilität
  2. SMA-Kombination, schnell und flexibel, um Marktveränderungen zu erfassen
  3. SMA-Doppelfilter, um Hochfrequenzgeräusche zu entfernen und die Signalqualität zu verbessern
  4. Flexible Anpassung der Parameter an unterschiedliche Marktumstände
  5. Intuitive Säulen zeigen die Kauf- und Verkaufsplätze, die leicht zu beurteilen sind

Risiken und Lösungen

  1. Vorsicht bei der Beurteilung der Häufigkeit von Marktschwankungen und Anpassung der Parameter zur Vermeidung von Überpassung
  2. In einem bewegten Markt kann es zu mehreren Fehlhandlungen kommen. Die Stop-Loss-Range kann entsprechend erweitert oder die Größe der Position reduziert werden.
  3. Rücklaufdaten sind unzuverlässig, die Realität kann sich von der Simulation unterscheiden. Mehrfache Realitätsauswertung wird empfohlen.

Optimierungsrichtung

  1. Erhöhung der Filterung von Verkehrsmesswerten, um die Signalqualität zu verbessern
  2. Ein Stop-Loss-Strategie, um einzelne Verlust-Operationen zu kontrollieren
  3. Optimierung der Positionsverwaltung, Erhöhung und Absenkung der Positionen in Abhängigkeit von Marktschwankungen
  4. In Kombination mit anderen Indikatoren, um eine Trendrichtung zu bestimmen, um eine rückläufige Marktabweichung zu verhindern

Zusammenfassen

Diese Strategie nutzt die raffinierte Schwingung der mittleren und langsamen SMA-Struktur, um die Veränderungen der Marktdynamik zu diagnostizieren. Die Kauf- und Verkaufssignale sind intuitiv. Sie können jedoch von Schwingungen und Umkehrungen betroffen sein.

Strategiequellcode
/*backtest
start: 2022-12-11 00:00:00
end: 2023-12-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 28/12/2016
//    This indicator plots the oscillator as a histogram where blue denotes 
//    periods suited for buying and red . for selling. If the current value 
//    of AO (Awesome Oscillator) is above previous, the period is considered 
//    suited for buying and the period is marked blue. If the AO value is not 
//    above previous, the period is considered suited for selling and the 
//    indicator marks it as red.
//
// 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("Bill Williams. Awesome Oscillator (AC)")
nLengthSlow = input(34, minval=1, title="Length Slow")
nLengthFast = input(5, minval=1, title="Length Fast")
reverse = input(false, title="Trade reverse")
xSMA1_hl2 = sma(hl2, nLengthFast)
xSMA2_hl2 = sma(hl2, nLengthSlow)
xSMA1_SMA2 = xSMA1_hl2 - xSMA2_hl2
xSMA_hl2 = sma(xSMA1_SMA2, nLengthFast)
nRes =  xSMA1_SMA2 - xSMA_hl2
cClr = nRes > nRes[1] ? blue : red
pos = iff(nRes > nRes[1], 1,
	   iff(nRes < nRes[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(nRes, style=histogram, linewidth=1, color=cClr)