Moving Average Crossover-Handelsstrategie


Erstellungsdatum: 2023-11-27 17:25:36 zuletzt geändert: 2023-11-27 17:25:36
Kopie: 0 Klicks: 639
1
konzentrieren Sie sich auf
1617
Anhänger

Moving Average Crossover-Handelsstrategie

Überblick

Die Moving-Average-Cross-Trading-Strategie ist eine Technische Analyse-Trading-Strategie, die durch die Berechnung von Moving-Averages aus verschiedenen Perioden, Kauf- oder Verkaufsaktionen bei deren Auftreten, Gold- oder Todesforken, erfolgt. Die Strategie ist einfach, leicht zu handhaben, kostet weniger Geld und ist für mittlere und lange Linien geeignet.

Strategieprinzip

Die Strategie berechnet den Index-Moving-Average (EMA) für 20 und 50 Perioden. Ein Kauf wird getätigt, wenn ein 50-Zyklus-EMA auf einer 20-Zyklus-EMA liegt. Ein Verkauf wird getätigt, wenn ein 50-Zyklus-EMA unter einer 20-Zyklus-EMA liegt.

Der EMA-Index ist ein bewegter Durchschnitt, der den jüngsten Daten mehr Gewicht verleiht. Die Berechnungsformel der EMA lautet:

EMAtoday = (Pricetoday * k) + EMAyesterday * (1-k)

Dabei ist k = 2/ (Zyklus+1)

Wenn also ein kurzfristiger EMA einen langfristigen EMA durchschreitet, ist der Kurs bullish, LONG; wenn ein kurzfristiger EMA einen langfristigen EMA durchschreitet, ist der Kurs bearish, SHORT.

Analyse der Stärken

Diese Strategie hat folgende Vorteile:

  1. Die Bedienung ist einfach und leicht zu verstehen.
  2. Weniger Einnahmen und weniger Rücknahmen, was für die Vermögensverwaltung von Vorteil ist.
  3. Die Parameter können flexibel angepasst werden und für verschiedene Märkte angepasst werden.
  4. Die Anwendung ist auf jede Sorte und ist für den Tages- und Trendhandel geeignet.

Risiko und Optimierung

Die Strategie birgt auch folgende Risiken:

  1. Wenn die Preise schwanken, treten häufige Handelssignale auf, und Filter müssen berücksichtigt werden.
  2. Es ist sehr wahrscheinlich, dass Sie sich in einem brechenden Handelsplatz festsetzen, und Sie müssen einen Stop-Loss-Ansatz erwägen.
  3. Die Transaktionen sind durch Parameteroptimierungen behindert und erfordern mehr historische Datenüberprüfung.

Daher kann die Strategie in folgenden Bereichen optimiert werden:

  1. Filter, wie z.B. Brinline-Indikatoren, werden eingesetzt, um falsche Signale zu reduzieren.
  2. Die Logik des Stop-Loss-Einsatzes verhindert die Gefangenschaft.
  3. Suche nach der optimalen Kombination von Parametern für verschiedene Sorten.
  4. Bestätigung von Kauf- und Verkaufssignalen in Verbindung mit Handelsvolumenindikatoren.

Zusammenfassen

Eine Mobile Average Crossover Trading Strategie ist eine einfache und effektive Technologietrading-Strategie, die leicht zu verstehen und zu implementieren ist. Durch die Optimierung der Parameter und die Hinzufügung von Zusatzkonditionen kann das Handelsrisiko weiter reduziert und die Strategie-Stabilität erhöht werden. Die Strategie kann als ein grundlegendes Modul für den Quantifizierungshandel dienen.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © brandlabng

//@version=5
//study(title="Holly Grail", overlay = true)
strategy('HG|E15m', overlay=true)
src = input(close, title='Source')

price = request.security(syminfo.tickerid, timeframe.period, src)
ma1 = input(20, title='1st MA Length')
type1 = input.string('EMA', '1st MA Type', options=['EMA'])

ma2 = input(50, title='2nd MA Length')
type2 = input.string('EMA', '2nd MA Type', options=['EMA'])

price1 = if type1 == 'EMA'
    ta.ema(price, ma1)

price2 = if type2 == 'EMA'
    ta.ema(price, ma2)


//plot(series=price, style=line,  title="Price", color=black, linewidth=1, transp=0)
plot(series=price1, style=plot.style_line, title='1st MA', color=color.new(#219ff3, 0), linewidth=2)
plot(series=price2, style=plot.style_line, title='2nd MA', color=color.new(color.purple, 0), linewidth=2)


longCondition = ta.crossover(price1, price2)
if longCondition
    strategy.entry('Long', strategy.long)

shortCondition = ta.crossunder(price1, price2)
if shortCondition
    strategy.entry('Short', strategy.short)