Strategie der Mittelwertumkehr mit doppeltem gleitenden Durchschnitt


Erstellungsdatum: 2023-10-17 14:38:55 zuletzt geändert: 2023-10-17 14:38:55
Kopie: 0 Klicks: 662
1
konzentrieren Sie sich auf
1617
Anhänger

Strategie der Mittelwertumkehr mit doppeltem gleitenden Durchschnitt

Die Binary Average Reversal Strategy ist eine Trendverfolgungstrategie. Sie berechnet die Durchschnittslinie für verschiedene Zeitspannen, um zu beurteilen, ob sich die Kursentwicklung umgekehrt hat, um die Trendwende zu erfassen und einen niedrigen Kauf zu erzielen.

Die Strategie berechnet zunächst die Mittelwerte zweier Gruppen verschiedener Perioden, eine Gruppe mit den Mittelwerten für längere Perioden, um den Gesamttrend zu bestimmen; die andere Gruppe mit den Mittelwerten für kürzere Perioden, um lokale Trends zu bestimmen. Die Strategie vergleicht die Beziehung der beiden Gruppen von Mittelwerten, um zu bestimmen, ob ein Umkehrung des Gesamttrends stattgefunden hat.

Konkret berechnet die Strategie zunächst zwei Mittelwerte für eine Reihe von längeren Perioden (wie die 60-Tage-Linie), nämlich den 60-Tage-Simple Moving Average und den 60-Tage-Weighted Moving Average. Diese Mittelwerte werden verwendet, um die Gesamttrends zu bestimmen. Zusätzlich berechnet die Strategie zwei Mittelwerte für eine Reihe von kürzeren Perioden (wie die 5-Tage-Linie), nämlich den 5-Tage-Simple Moving Average und den 5-Tage-Weighted Moving Average. Diese Mittelwerte werden verwendet, um lokale Trends zu bestimmen.

Wenn die kurzfristige Durchschnittslinie die langfristige Durchschnittslinie durchbricht, wird die Strategie einen Mehrkopfplatz eröffnet, wenn der Preis sich umkehrt und von einem Rückgang in einen Anstieg umschaltet. Wenn die kurzfristige Durchschnittslinie die langfristige Durchschnittslinie unterbricht, wird der Preis umgekehrt und von einem Anstieg in einen Rückgang umgeschaltet, wird die Strategie einen Leerkopfplatz eröffnet.

Das Verfahren ist wie folgt:

  1. Berechnung des 60-Tage-Einfachen Moving Averages nma und des 60-Tage-Gewichteten Moving Averages n2ma

  2. Berechnen Sie den 5-Tage-Einfachen Moving Average nma1 und den 5-Tage-Gewichteten Moving Average n2ma1

  3. Vergleiche n2ma1 und nma1: Wenn n2ma1 auf nma1 getragen wird, öffnet sich der Kopf; wenn n2ma1 unter nma1 getragen wird, öffnet sich der Kopf

  4. Vergleiche zwischen n2ma und nma: Wenn n2ma über nma und mit offenen Köpfen getragen wird, bleibt der Kopf offen; wenn n2ma unter nma und mit offenen Köpfen getragen wird, bleibt der Kopf offen

  5. Wenn der Preis den Stop-Loss-Punkt überschreitet oder den Stop-Loss-Punkt erreicht, wird die Position platziert.

  6. Wiederholen Sie die oben beschriebenen Prozesse, um eine Trendwende zu erfassen und einen niedrigen Kauf zu erzielen

Der Vorteil dieser Strategie besteht darin, dass die Kombination von zwei Gleichgewichtslinien eine Umkehrung der Preisentwicklung empfindlicher erfassen kann. Die Umkehrung der Gleichgewichtslinie ist ein eher klassisches technisches Indikatorsignal. Gleichzeitig ermöglicht die Kombination verschiedener periodischer Gleichgewichtslinien die Beurteilung von Gesamttrends und lokalen Trends und ermöglicht Trendverfolgung.

Die Gefahr dieser Strategie besteht darin, dass die doppelte Gleichlauf-Umkehrsignale möglicherweise falsche Signale erzeugen, was zu einem Sturz bei der Ein- oder Auszahlung führt und das Handelsrisiko erhöht. Darüber hinaus ist ein Gleichlaufsystem für Märkte mit großer Abrechnungsspanne anfällig für falsche Signale. Schließlich benötigen die doppelten Gleichlaufsysteme eine längere Rückmesszeit, um die Stabilität der Parameter einzustellen.

Diese Strategie kann in folgenden Bereichen optimiert werden:

  1. Optimierung der Periodiparameter der Mittellinie, um die optimale Kombination zu finden

  2. Filter für weitere technische Kennzahlen, um falsche Durchbrüche zu vermeiden

  3. Ein Stop-Loss-Strategie, um die Einzelleistungen zu kontrollieren

  4. Der Trend-Trading-Trend und die Fehltrading-Situation in einem wackligen Markt

  5. Dynamische Anpassung der Positionsgröße an Veränderungen der Marktfluktuation

Zusammenfassend lässt sich sagen, dass die Binär-Meanline-Wertumkehr-Strategie die Beziehung zwischen verschiedenen periodischen Meanlines vergleicht, um Trendwendepunkte zu erfassen, um die Ziele von Low-Buy-High-Sell zu erreichen. Optimierung der Parameter-Einstellungen, Erhöhung der Filterbedingungen und Risikokontrolle sind die Richtungen, in denen die Strategie verbessert werden kann.

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

//@version=2
//                   //////////////// Attempt to Reduced ReDraw version /////////////////////
//
//                         Microcana.com strategy by pilotgsms - version 4.20b <<<< Edited by Seaside420 >>>> special thanks to 55cosmicpineapple
//                            Hull_MA_cross added to script
strategy("M&H_v420b", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)
dt = input(defval=0.0010, title="Decision Threshold", type=float, step=0.0001)
dd = input(defval=1, title="Post Signal Bar Delay", type=float, step=1)
df = input(defval=5, title="Close Position Bar Delay", type=float, step=1)
keh=input(title="Double HullMA Cross",defval=7, minval=1)
confidence=(request.security(syminfo.tickerid, 'D', close)-request.security(syminfo.tickerid, 'D', close[1]))/request.security(syminfo.tickerid, 'D', close[1])
prediction = confidence > dt ? true : confidence < -dt ? false : prediction[1]
n2ma=2*wma(close,round(keh/2))
nma=wma(close,keh)
diff=n2ma-nma,sqn=round(sqrt(keh))
n2ma1=2*wma(close[2],round(keh/2))
nma1=wma(close[2],keh)
diff1=n2ma1-nma1,sqn1=round(sqrt(keh))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
openlong=prediction[dd] and n1>n2 and strategy.opentrades<1
if (openlong)
    strategy.entry("Long", strategy.long)
openshort=not prediction[dd] and n2>n1 and strategy.opentrades<1
if (openshort)
    strategy.entry("Short", strategy.short)
closeshort=prediction and close<low[df]
if (closeshort)
    strategy.close("Short")
closelong=not prediction and close>high[df]  
if (closelong)
    strategy.close("Long")