
A estratégia é um sistema integrado de acompanhamento de tendências, combinando múltiplos indicadores técnicos e métodos de análise de dinâmica. O núcleo da estratégia usa a combinação de equilíbrio entre a linha de equilíbrio, a confirmação de tendências e os indicadores de dinâmica, para controlar o risco através da volatilidade, para obter a compreensão das tendências do mercado e a gestão eficaz do risco. A estratégia é bem adaptável em um ambiente de mercado com tendências evidentes a médio e longo prazo.
A estratégia utiliza um mecanismo de confirmação de sinais em vários níveis, que inclui principalmente os seguintes elementos-chave:
As condições de transação para o julgamento integrado de múltiplos sinais são as seguintes: Multi-condicionamento: EMA21 na EMA9, linha MACD maior que a linha de sinal e positiva, RSI entre 40-70; preço acima da EMA9 Condições de vazio: EMA9 abaixo de EMA21, linha MACD menor que a linha de sinal e negativo, RSI entre 30-60 , preço abaixo de EMA9
A estratégia, através da combinação de uso de múltiplos indicadores técnicos, constrói um sistema de negociação de acompanhamento de tendências relativamente completo. A principal vantagem da estratégia reside na confiabilidade do sinal e na racionalidade do controle de risco, mas, ao mesmo tempo, há um certo atraso e problemas de otimização de parâmetros.
/*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")