
Die Strategie ist ein umfassendes Trend-Tracking-System, das mehrere technische Indikatoren und dynamische Analysemethoden kombiniert. Die Kernstrategie verwendet eine Kombination aus Gleichgewichtskreuzung, Trendbestätigung und Dynamische Indikatoren, um Risiken durch Schwankungen zu kontrollieren, um Markttrends zu erfassen und Risiken effektiv zu verwalten. Die Strategie ist gut geeignet für Marktumgebungen mit deutlichen mittelfristigen Trends.
Die Strategie umfasst eine vielschichtige Signalbestätigungsmechanik, die folgende Schlüsselelemente umfasst:
Die Transaktionsbedingungen für die Mehrfachsignal-Kombination sind wie folgt: Mehrere Bedingungen: EMA21 auf EMA9, MACD-Linie größer als die Signallinie und positiv, RSI zwischen 40-70, Preis über EMA9 Die MACD-Linie ist kleiner als die Signal-Linie und negativ, der RSI liegt zwischen 30 und 60, der Preis liegt unter der EMA9
Die Strategie baut durch die Kombination von mehreren technischen Indikatoren ein relativ vollständiges Trend-Tracking-Handelssystem auf. Die Kernvorteile der Strategie liegen in der Zuverlässigkeit der Signale und der Rationalität der Risikokontrolle, aber es gibt auch einige Probleme mit der Lagerung und Optimierung der Parameter. Durch die vorgeschlagene Optimierungsrichtung wird die Strategie eine bessere Leistung in der Anwendung in der Praxis erwarten.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Estratégia Cripto - 1D", shorttitle="Estratégia Cripto", overlay=true)
// Definição das Médias Móveis Exponenciais (EMA)
ema9 = ta.ema(close, 9)
ema21 = ta.ema(close, 21)
// Definição do MACD
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
// Definição do RSI
rsi = ta.rsi(close, 14)
// Volume médio
volMedio = ta.sma(volume, 14)
// Definição das Bollinger Bands
basis = ta.sma(close, 20)
dev = ta.stdev(close, 20)
upperBand = basis + 2 * dev
lowerBand = basis - 2 * dev
// Condições de Compra (Long)
longCondition = (ema9 > ema21) and (macdLine > signalLine) and (macdLine > 0) and (volume > volMedio) and (rsi > 40 and rsi < 70) and (close > ema9)
if (longCondition)
strategy.entry("Compra", strategy.long)
// Condições de Venda (Short)
shortCondition = (ema9 < ema21) and (macdLine < signalLine) and (macdLine < 0) and (volume > volMedio) and (rsi < 60 and rsi > 30) and (close < ema9)
if (shortCondition)
strategy.entry("Venda", strategy.short)
// Stop Loss e Take Profit
strategy.exit("Take Profit/Stop Loss", from_entry="Compra", loss=200, profit=400)
strategy.exit("Take Profit/Stop Loss", from_entry="Venda", loss=200, profit=400)
// Plotagem das Médias Móveis e Bollinger Bands
plot(ema9, color=color.green, title="EMA 9")
plot(ema21, color=color.red, title="EMA 21")
plot(upperBand, color=color.blue, title="Upper Band")
plot(lowerBand, color=color.blue, title="Lower Band")