- Quadrado
- As bandas de Bollinger e a estratégia de negociação cruzada de média móvel exponencial
As bandas de Bollinger e a estratégia de negociação cruzada de média móvel exponencial
Autora:
ChaoZhang, Data: 2024-06-17 16:58:43
Tags:
EMABBSMA
Resumo
Esta estratégia combina Bandas de Bollinger e a Média Móvel Exponencial de 5 dias (EMA) para gerar sinais de negociação. Quando o preço ultrapassa a Banda de Bollinger superior e fecha abaixo da EMA de 5 dias, uma posição curta é aberta. Por outro lado, quando o preço ultrapassa a Banda de Bollinger inferior e fecha acima da EMA de 5 dias, uma posição longa é aberta. Além disso, quando um sinal inverso aparece, a estratégia fecha a posição atual e abre uma nova posição na direção oposta. A estratégia visa capturar a volatilidade do mercado e as mudanças de tendência usando Bandas de Bollinger para medir os níveis de preços relativos e a EMA como um filtro de tendência para gerar sinais de negociação.
Princípios de estratégia
- Calcule as Bandas de Bollinger superior, média e inferior. A banda superior é a banda do meio mais dois desvios padrão, a banda inferior é a banda do meio menos dois desvios padrão, e a banda do meio é a média móvel simples dos preços de fechamento.
- Calcular a EMA de 5 dias como referência de tendência.
- Quando o preço de abertura estiver acima da banda de Bollinger superior e o preço de encerramento estiver abaixo da EMA de 5 dias, abra uma posição curta.
- Quando o preço de abertura estiver abaixo da banda de Bollinger inferior e o preço de encerramento estiver acima da EMA de 5 dias, abra uma posição longa.
- Se uma posição curta já estiver aberta e um sinal longo for acionado, fechar a posição curta e abrir uma posição longa.
- Se uma posição longa já estiver aberta e um sinal de curto for acionado, feche a posição longa e abra uma posição curta.
- Se a manutenção de uma posição longa e um sinal de fechamento curto for acionado, feche a posição longa.
- Se a manutenção de uma posição curta e um sinal de fechamento longo for acionado, feche a posição curta.
Vantagens da estratégia
- Utiliza tanto a volatilidade de preços como as características de tendência para gerar sinais, permitindo aproveitar oportunidades em mercados de tendência e oscilantes.
- As bandas de Bollinger podem ser ajustadas de forma flexível para se adaptarem às diferentes condições de mercado e características dos instrumentos.
- A EMA de 5 dias atua como um filtro de tendência, reduzindo efetivamente o ruído e as negociações frequentes.
- O mecanismo de abertura oportuna de posições stop-loss e reverse permite um melhor controlo dos riscos e a exploração activa de novas oportunidades de tendência.
- Lógica clara, fácil de compreender e implementar e conveniente para uma otimização adicional.
Riscos estratégicos
- A selecção incorreta dos parâmetros pode conduzir a distorções do sinal ou a negociações excessivas.
- Em mercados oscilantes, podem ocorrer sinais de negociação frequentes, resultando em excesso de negociação e aumento dos custos.
- Pode haver um atraso na captação dos pontos de virada da tendência, potencialmente perdendo as melhores oportunidades de entrada.
- O risco de falha existe com uma única combinação de indicadores técnicos, exigindo validação com outros sinais.
- Em condições de mercado extremas, pode haver um risco de perda de controlo, que exige medidas rigorosas de controlo dos riscos.
Orientações para a otimização da estratégia
- Otimizar os parâmetros das Bandas de Bollinger, tais como comprimento e multiplicador, para encontrar a melhor combinação de parâmetros.
- Otimizar e testar o período EMA para selecionar o melhor período de tendência.
- Incorporar outros indicadores de tendência, como o MACD, como julgamento auxiliar para melhorar a precisão da captura da tendência.
- Introduzir indicadores de volatilidade, tais como o ATR, como base para a gestão de paradas de perdas e de posições para controlar o risco de negociação única.
- Restringir a negociação a períodos de tempo específicos para evitar flutuações ineficazes em determinados momentos.
- Estabelecer estratégias adequadas de captação de lucros e stop-loss com base nas características do mercado.
Resumo
Ao combinar Bandas de Bollinger e EMA, esta estratégia pode efetivamente capturar tendências e oportunidades de volatilidade, adequadas para estratégias de negociação de médio a longo prazo. No entanto, deve-se prestar atenção à otimização de parâmetros, controle de posição e gerenciamento de risco.
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bollinger Bands and EMA Strategy", overlay=true)
// Define the Bollinger Bands
length = input.int(20, title="BB Length")
src = input(close, title="BB Source")
mult = input.float(2.0, title="BB Multiplier")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
// Plot Bollinger Bands
plot(upper, "Upper Band", color=color.red)
plot(lower, "Lower Band", color=color.green)
plot(basis, "Middle Band", color=color.blue) // Use plot instead of hline for basis
// Define the 5-period EMA
ema5 = ta.ema(close, 5)
// Plot the 5 EMA
plot(ema5, "5 EMA", color=color.orange)
// Generate signals
var float entry_price = na
var string trade_direction = "none"
if (na(close[1]))
trade_direction := "none"
// Condition for entering a short trade
if (open > upper and close < ema5)
if (trade_direction != "short")
strategy.entry("Short", strategy.short)
entry_price := close
trade_direction := "short"
// Condition for entering a long trade
if (open < lower and close > ema5)
if (trade_direction != "long")
strategy.entry("Long", strategy.long)
entry_price := close
trade_direction := "long"
// Close short trade on a long signal
if (trade_direction == "short" and open < lower and close > ema5)
strategy.close("Short")
strategy.entry("Long", strategy.long)
entry_price := close
trade_direction := "long"
// Close long trade on a short signal
if (trade_direction == "long" and open > upper and close < ema5)
strategy.close("Long")
strategy.entry("Short", strategy.short)
entry_price := close
trade_direction := "short"
// Close trades when opposite signal is generated
if (trade_direction == "long" and open > upper and close < ema5)
strategy.close("Long")
trade_direction := "none"
if (trade_direction == "short" and open < lower and close > ema5)
strategy.close("Short")
trade_direction := "none"
Relacionados
Mais.