La stratégie est un système intégré de suivi des tendances, combinant plusieurs indicateurs techniques et une méthode d’analyse de la dynamique. Le cœur de la stratégie utilise une méthode de croisement homogène, de confirmation de la tendance et de la combinaison des indicateurs de la dynamique, afin de contrôler les risques par le biais de la volatilité, de maîtriser les tendances du marché et de gérer efficacement les risques. La stratégie est bien adaptée dans un environnement de marché où les tendances sont évidentes à moyen et long terme.
La stratégie utilise un mécanisme de confirmation du signal à plusieurs niveaux, qui comprend principalement les éléments clés suivants:
Les conditions de transaction pour le jugement de synthèse de signaux multiples sont les suivantes: Plus de conditions: EMA21 sur EMA9, la ligne MACD est plus grande que la ligne de signal et est positive, le RSI est entre 40 et 70, le prix est au-dessus de l’EMA9 Conditions de crevaison: traversée de l’EMA21 sous l’EMA9, ligne MACD inférieure à la ligne de signal et négative, RSI entre 30 et 60 et prix sous l’EMA9
La stratégie utilise une combinaison d’indicateurs techniques multiples pour construire un système de trading de suivi de tendance relativement complet. Les principaux avantages de la stratégie résident dans la fiabilité du signal et la rationalité du contrôle des risques, mais il existe également un certain retard et des problèmes d’optimisation des paramètres.
/*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")