Strategie mit zwei Indikatoren

Schriftsteller:ChaoZhang, Datum: 2023-11-02 15:30:54
Tags:

img

Übersicht

Die Dual-Indicator-Strategie ist eine quantitative Handelsstrategie, die die Indikatoren Simple Moving Average (SMA) und Moving Average Convergence Divergence (MACD) kombiniert.

Strategie Logik

Der Kern der Dual-Indicator-Strategie beruht auf zwei Indikatoren: SMA und MACD. Die Strategie verwendet 7--, 15- und 60-Perioden-SMA sowie die Standard-MACD-Parameter-Einstellung 12/26/9.

Wenn der 7-Perioden-SMA über dem 15- und 60-Perioden-SMA liegt und der 15-Perioden-SMA über dem 60-Perioden-SMA liegt, gilt dies als ein bullisches Signal des SMA-Indikators mit einer Wahrscheinlichkeit von 0,5.

Gleichzeitig gilt, wenn die MACD-Linie über die Signallinie geht, als Aufwärtssignal des MACD-Indikators, ebenfalls mit einer Wahrscheinlichkeit von 0,5.

Wenn die Wahrscheinlichkeiten der bullischen Signale der beiden Indikatoren auf 1 addiert werden, wird eine Long-Position eröffnet.

Wenn der 7-Perioden-SMA unter den 15- und 60-Perioden-SMA fällt und der 15-Perioden-SMA unter den 60-Perioden-SMA liegt, gilt dies als ein bärisches Signal des SMA-Indikators mit einer Wahrscheinlichkeit von 0,5.

Wenn die MACD-Linie unterhalb der Signallinie kreuzt, gilt dies als ein Bärensignal des MACD-Indikators mit einer Wahrscheinlichkeit von 0,5.

Wenn die Wahrscheinlichkeiten für die niedrigen Signale der beiden Indikatoren 1 sind, wird eine Leerposition eröffnet.

Darüber hinaus wird in der Strategie zwei verschiedene Gewinnpunkte festgelegt: 50% der Position werden geschlossen, wenn der Preis um 9% steigt oder fällt, und die verbleibende Position wird geschlossen, wenn der Preis um 21% steigt oder fällt.

Wenn ein Signal entgegengesetzt zur aktuellen Position auftritt, wird die aktuelle Position zuerst geschlossen, bevor eine neue Position auf der Grundlage des neuen Signals eröffnet wird.

Analyse der Vorteile

Der größte Vorteil der Dual-Indicator-Strategie besteht darin, dass sie die Stärken sowohl der SMA- als auch der MACD-Indikatoren nutzt. SMA kann Preistrendänderungen effektiv verfolgen und Marktlärm filtern, während MACD kurzfristige Trendumkehrmöglichkeiten identifizieren kann. Die Kombination der beiden kann die Zuverlässigkeit der Handelssignale verbessern.

Darüber hinaus hilft die Einführung von SMAs mit unterschiedlichen Parameter-Einstellungen, langfristige bis mittelfristige Trends zu erkennen, während die Take-Profit-Strategie teilweise Gewinne erzielt und Risiken kontrolliert.

Risikoanalyse

Es sind einige potenzielle Risiken der Dual-Indicator-Strategie zu beachten. Da sie sich ausschließlich auf technische Indikatoren stützt, können falsche Signale auftreten. Auch können unsachgemäße Take-Profit-Einstellungen zu einem vorzeitigen Ausstieg führen, der zu wichtigen Trends führt.

Die Strategie kann optimiert werden, indem die SMA-Periodenparameter angepasst oder zusätzliche Filterindikatoren integriert werden, um zuverlässigere Signale zu gewährleisten.

Optimierungsrichtlinien

Einige Aspekte der Doppelindikatorstrategie können weiter optimiert werden:

  1. Test mit Hinzufügung anderer technischer Indikatoren wie RSI, Bollinger Bands für das Filtern mehrerer Indikatoren.

  2. Versuchen Sie mit Machine-Learning-Algorithmen, um Signal-Urteilsmodelle mit mehreren Variablen zu erstellen.

  3. Parameter-Tuning anhand verschiedener Produkte und Zeitrahmen durchführen.

  4. Einbeziehen Sie Stop Loss, um Einzelhandelsverluste streng zu kontrollieren.

  5. Optimieren Sie die Gewinnstrategie, um anhaltende Trends zu überstehen.

Durch systematisches Backtesting und Optimierung können die Stabilität und Rentabilität der Strategie kontinuierlich verbessert werden.

Schlussfolgerung

Die Dual-Indicator-Strategie kombiniert die Stärken von SMA und MACD, um die Signalgenauigkeit zu verbessern und gleichzeitig die Risiken effektiv zu kontrollieren.


/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("SMA & MACD Dual Direction Strategy", shorttitle="SMDDS", overlay=true, initial_capital=1000)

// SMA settings
sma7_length = input.int(7, title="7 Candle SMA Length")
sma15_length = input.int(15, title="15 Candle SMA Length")
sma60_length = input.int(60, title="60 Candle SMA Length")

// MACD settings
fast_length = input.int(12, title="Fast Length")
slow_length = input.int(26, title="Slow Length")
signal_length = input.int(9, title="Signal Length")

// Leverage
leverage = 10

// Calculate the SMAs
sma7 = ta.sma(close, sma7_length)
sma15 = ta.sma(close, sma15_length)
sma60 = ta.sma(close, sma60_length)

// Calculate the MACD line and Signal line
[macdLine, signalLine, _] = ta.macd(close, fast_length, slow_length, signal_length)

// SMA-based Probabilities
smaBullishProb = (sma7 > sma15 and sma7 > sma60 and sma15 > sma60) ? 0.5 : 0.0
smaBearishProb = (sma7 < sma15 and sma7 < sma60 and sma15 < sma60) ? 0.5 : 0.0

// MACD-based Probabilities
macdBullishProb = ta.crossover(macdLine, signalLine) ? 0.5 : 0.0
macdBearishProb = ta.crossunder(macdLine, signalLine) ? 0.5 : 0.0

// Combined Probabilities
combinedBullishProb = smaBullishProb + macdBullishProb
combinedBearishProb = smaBearishProb + macdBearishProb

// Trade logic using `if` conditions
if combinedBullishProb == 1.0
    strategy.close("Short")
    strategy.entry("Long", strategy.long, qty=leverage)

if combinedBearishProb == 1.0
    strategy.close("Long")
    strategy.entry("Short", strategy.short, qty=leverage)

// Exit conditions based on profit points
longTargetProfit1 = close * 1.09
longTargetProfit2 = close * 1.21

shortTargetProfit1 = close * 0.91
shortTargetProfit2 = close * 0.79

strategy.exit("Long TP1", from_entry="Long", limit=longTargetProfit1, qty_percent=0.5)
strategy.exit("Long TP2", from_entry="Long", limit=longTargetProfit2)

strategy.exit("Short TP1", from_entry="Short", limit=shortTargetProfit1, qty_percent=0.5)
strategy.exit("Short TP2", from_entry="Short", limit=shortTargetProfit2)

// Visualization (optional)
plot(sma7, color=color.green, title="7 Candle SMA")
plot(sma15, color=color.blue, title="15 Candle SMA")
plot(sma60, color=color.red, title="60 Candle SMA")
hline(0, "Zero Line", color=color.gray)
plot(macdLine - signalLine, color=color.blue, title="MACD Histogram")


Mehr