Bitcoin - Moving Average Crossover-Strategie


Erstellungsdatum: 2023-12-04 13:55:45 zuletzt geändert: 2023-12-04 13:55:45
Kopie: 0 Klicks: 910
1
konzentrieren Sie sich auf
1619
Anhänger

Bitcoin - Moving Average Crossover-Strategie

Überblick

Diese Strategie basiert auf dem Moving Average Crossover Principle von Bitcoin und folgt den Trends der Handelsstrategie. Die Strategie verwendet die Kreuzung von schnellen und langsamen Moving Averages als Kauf- und Verkaufssignal. Wenn Sie den langsamen Moving Average über den schnellen Moving Average durchqueren, betrachten Sie ihn als Goldfork und machen Sie einen Überschuss; wenn Sie den langsamen Moving Average unter dem schnellen Moving Average durchqueren, betrachten Sie ihn als Dead Fork und machen Sie einen Leerstand.

Strategieprinzip

Die Strategie basiert auf zwei Indikatoren:

  1. Moving Average (MA): Berechnung des Schlusspegels in einem bestimmten Zeitraum, um die Kursentwicklung und die Umkehrung zu bestimmen.

  2. Der Relative Strength Index (RSI) berechnet die Kursschwankungen innerhalb eines bestimmten Zeitraums und beurteilt die Überkauf- und Überverkaufszonen.

Konkret verwendet die Strategie einen kurzen MA als schnelle Linie und einen längeren MA als langsame Linie. Wenn die schnelle Linie die langsame Linie durchbricht, beschleunigt sich der kurzfristige Preisanstieg und erzeugt ein Kaufsignal. Wenn die schnelle Linie die langsame Linie durchbricht, beschleunigt sich der kurzfristige Preisrückgang und erzeugt ein Verkaufssignal.

Die Strategie setzt außerdem den RSI-Dämpfer ein, der nur dann ein Kaufsignal erzeugt, wenn der RSI über 50 liegt, und einen Verkaufsignal, wenn der RSI unter 50 liegt, um zu vermeiden, dass der Feigling bei starken Preisschwankungen auftritt.

Strategische Vorteile

Diese Strategie hat folgende Vorteile:

  1. Das Prinzip ist einfach, leicht zu verstehen und umzusetzen.
  2. Das ist ein sehr gutes Beispiel für die Entwicklung des Marktes.
  3. Weniger Parameter, leicht zu optimieren.
  4. Die Technik des Moving Averages ist ausgereift und weit verbreitet.
  5. Der RSI kann überkaufen und überverkaufen.

Risikoanalyse

Die Strategie birgt auch einige Risiken:

  1. Die Trendstrategie kann bei einer Preisumkehr zu großen Verlusten führen.
  2. Der Moving Average ist zurückgeblieben und kann die Kursbewegung nicht rechtzeitig erfassen.
  3. Die falsche Auswahl der Parameter kann die Qualität des Handelssignals beeinträchtigen.
  4. Die Strategie basiert nur auf technischen Indikatoren und berücksichtigt keine grundlegenden Faktoren.

Um das Risiko zu verringern, empfiehlt es sich, die Periodik der Moving Averages zu optimieren, die Stop-Loss-Position anzupassen und die Positionsgröße angemessen zu verkleinern. Die Verwendung dieser Strategie sollte bei wesentlichen Änderungen der Fundamentaldaten ausgesetzt werden.

Optimierungsrichtung

Die wichtigsten Optimierungsmöglichkeiten der Strategie sind:

  1. Optimieren Sie die Periodizität der Moving Average-Parameter, um die optimale Kombination von Parametern zu finden. Sie können durch Methoden wie schrittweise Suche oder genetische Algorithmen optimiert werden.

  2. Die Filter für andere technische Indikatoren wie KDJ, MACD usw. werden hinzugefügt, um die Qualität der Handelssignale zu verbessern.

  3. Erhöhung der Überwachung von Preisschwankungen, Anpassung von Positionen und Stop-Losses an die Volatilität.

  4. Es ist wichtig, dass die Anzeige von Signalen nur dann gesendet wird, wenn die Transaktionsmenge größer ist.

  5. Die Entwicklung von Parameter-Adaptionsmechanismen. Diese ermöglichen es der Strategie, die Parameter automatisch an die jeweiligen Marktbedingungen anzupassen.

Zusammenfassen

Diese Strategie ist eine eher typische Trend-Follow-Strategie. Auf der Grundlage des Moving Average Crossover-Prinzips ist die Handelslogik einfach, klar und leicht zu verstehen und umzusetzen. Die Integration der RSI-Indikatoren verhindert unvernünftige Geschäfte. Die Strategie ist risiko- und ertragsnahe und eignet sich für Investoren mit einer gewissen Quantifizierungs-Handelerfahrung, die jedoch darauf achten müssen, das potenzielle Verlustrisiko zu vermeiden.

Strategiequellcode
/*backtest
start: 2023-11-03 00:00:00
end: 2023-12-03 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Trading Strategy Warning - Past performance may not equal future performance
//Account Size Warning - Performance based upon default 10% risk per trade, of account size $100,000. Adjust before you trade to see your own drawdown.
//Time Frame - D1 and H4, warning H4 has a lower profit factor (fake-outs, and account drawdown), D1 recommended
//Trend Following System - Profitability of this system is dependent on a STRONG trend in Bitcoin, into the future
strategy("Bitcoin - MA Crossover Strategy", overlay=true)

// User Input
usr_risk = input(title="Equity Risk (%)",type=input.integer,minval=1,maxval=100,step=1,defval=10,confirm=false)
sma_fast = input(title="Fast MA (Period)",type=input.integer,minval=1,maxval=500,step=1,defval=20,confirm=false)
sma_slow = input(title="Slow MA (Period)",type=input.integer,minval=1,maxval=500,step=1,defval=40,confirm=false)
rsi_valu = input(title="RSI (Period)",type=input.integer,minval=1,maxval=500,step=1,defval=14,confirm=false)

// Create Indicator's
shortSMA = sma(close, sma_fast)
longSMA = sma(close, sma_slow)
rsi = rsi(close, rsi_valu)
strategy.initial_capital = 50000
// Units to buy
amount = usr_risk / 100 * (strategy.initial_capital + strategy.netprofit)
units = floor(amount / close)

// Specify entry conditions
longEntry = crossover(shortSMA, longSMA)
shortEntry = crossunder(shortSMA, longSMA)

// Specify exit conditions
longExit = crossunder(shortSMA, longSMA)
shortExit = crossover(shortSMA, longSMA)

// Execute long trade
if (longEntry)
    strategy.entry("long", strategy.long, units, when = rsi > 50)

// Exit long trade
if(longExit and strategy.position_size > 0)    
    strategy.order("exit long", strategy.short, abs(strategy.position_size))

// Execute short trade
if (shortEntry)
    strategy.entry("short", strategy.short, units, when = rsi < 50)
    
// Exit short trade
if(shortExit and strategy.position_size < 0)    
    strategy.order("exit short", strategy.long, abs(strategy.position_size))

// Plot Moving Average's to chart
plot(shortSMA)
plot(longSMA, color=color.black)