Estratégia de avanço do BBMA

Autora:ChaoZhang, Data: 2023-12-25 11:33:50
Tags:

img

Resumo

A estratégia de avanço do BBMA é uma estratégia que usa uma combinação de Bandas de Bollinger e médias móveis para gerar sinais de negociação. A estratégia usa os trilhos superior e inferior das Bandas de Bollinger e os cruzamentos entre a média móvel rápida e a média móvel comum como sinais de entrada. Vá longo quando o preço atravessa o trilho superior das Bandas de Bollinger e a média móvel rápida atravessa acima da média móvel comum e vá curto quando o preço atravessa o trilho inferior das Bandas de Bollinger e a média móvel rápida atravessa abaixo da média móvel comum.

Princípio da estratégia

Esta estratégia baseia-se principalmente na teoria das Bandas de Bollinger e na teoria das médias móveis. As Bandas de Bollinger são amplamente utilizadas na negociação quantitativa, consistindo de trilho médio, trilho superior e trilho inferior. O trilho médio é a média móvel simples dos preços de fechamento durante um determinado período, e os trilhos superior e inferior são, respectivamente, um desvio padrão do trilho médio.

A média móvel é também um indicador técnico comumente usado, usado principalmente para julgar a tendência e julgar a entrada e saída de fundos principais. A média móvel rápida pode capturar mudanças de preço mais rapidamente e a média móvel comum é mais estável.

Esta estratégia leva em conta tanto a teoria das Bandas de Bollinger quanto a teoria das médias móveis. Determina os pontos de entrada e saída do mercado através do sinal combinado de preço quebrando os trilhos superior e inferior das Bandas de Bollinger e cruzamento especial entre médias móveis rápidas e lentas, e usa-o como sinal de entrada para orientar a direção da negociação.

Vantagens da estratégia

  1. Usar a teoria das Bandas de Bollinger para determinar os pontos de entrada e saída do mercado é propício para capturar oportunidades de reversão de preços.

  2. Considerando de forma abrangente os sinais de cruzamento de médias móveis rápidas e comuns evita falsos breakouts.

  3. Estabelecer pontos de stop loss e take profit ajuda a controlar estritamente os riscos.

  4. Dados suficientes de backtest, alta taxa de retorno, boa taxa de vitória.

Riscos da Estratégia

  1. As configurações incorretas dos parâmetros das Bandas de Bollinger podem causar sinais de negociação errados.

  2. O atraso dos sinais cruzados da média móvel pode levar a perdas desnecessárias.

  3. O ponto de stop loss está demasiado solto para controlar eficazmente as perdas individuais.

  4. Condições de mercado extremas podem atravessar pontos de stop loss.

Orientações de otimização da estratégia

  1. Otimizar os parâmetros das Bandas de Bollinger para encontrar a melhor combinação.

  2. Avaliar se devem ser introduzidos outros indicadores auxiliares para filtrar os sinais.

  3. Teste e otimize as estratégias de stop loss para controlar ainda mais os riscos.

  4. Avalie se deve utilizar métodos de avanço de tempo ou de preço para o stop loss.

Resumo

A estratégia de avanço do BBMA integra o uso de Bandas de Bollinger e teoria da média móvel para julgar os sinais de negociação. Esta estratégia tem boa estabilidade, altos retornos e níveis de risco controláveis.


/*backtest
start: 2023-12-17 00:00:00
end: 2023-12-24 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("BBMA Strategy", shorttitle="BBMA", overlay=true)

// Input parameters
length = input(20, title="BBMA Length")
deviation = input(2, title="Deviation")
ema_period = input(50, title="EMA Period")
fast_ema_period = input(10, title="Fast EMA Period")
stop_loss_percentage = input.float(1, title="Stop Loss Percentage") / 100
take_profit_percentage = input.float(2, title="Take Profit Percentage") / 100

// Calculate Bollinger Bands and MTF MA
basis = ta.sma(close, length)
dev = deviation * ta.stdev(close, length)
upper_bb = basis + dev
lower_bb = basis - dev
ema = ta.ema(close, ema_period)
fast_ema = ta.ema(close, fast_ema_period)

// Entry conditions
long_condition = ta.crossover(close, upper_bb) and ta.crossover(close, fast_ema) and close > ema
short_condition = ta.crossunder(close, lower_bb) and ta.crossunder(close, fast_ema) and close < ema

// Signals for entry and exit with stop loss and take profit
if (long_condition)
    strategy.entry("Buy", strategy.long)
    strategy.exit("Take Profit/Stop Loss", from_entry="Buy", stop=close * (1 + stop_loss_percentage), limit=close * (1 + take_profit_percentage))

if (short_condition)
    strategy.entry("Sell", strategy.short)
    strategy.exit("Take Profit/Stop Loss", from_entry="Sell", stop=close * (1 - stop_loss_percentage), limit=close * (1 - take_profit_percentage))

Mais.