- Quadrado
- Estratégia de reversão média
Estratégia de reversão média
Autora:
ChaoZhang, Data: 2024-06-17 14:57:59
Tags:
SMADEVMA
Resumo
Esta estratégia é baseada no princípio da reversão média, usando o desvio dos preços da média móvel para tomar decisões de negociação. Ele vai curto quando o preço desvia acima da faixa superior e vai longo quando desvia abaixo da faixa inferior. A posição é fechada quando o preço retorna à média móvel.
Princípios de estratégia
- Calcular a média móvel simples (SMA) de um período especificado (padrão 20) como nível médio de preços.
- Calcule o desvio padrão (DEV) dos preços e use-o para construir as faixas superior e inferior. A faixa superior é a SMA mais um múltiplo (padrão 1.5) do desvio padrão, e a faixa inferior é a SMA menos um múltiplo do desvio padrão.
- Vá curto quando o preço quebra acima da faixa superior, e vá longo quando quebra abaixo da faixa inferior.
- Fechar a posição longa quando o preço cruzar abaixo da SMA e fechar a posição curta quando o preço cruzar acima da SMA.
- Marque a média móvel, a faixa superior, a faixa inferior e os sinais de compra/venda no gráfico.
Análise das vantagens
- A estratégia de reversão da média baseia-se no princípio estatístico de que os preços voltam sempre para a média, que tem uma certa probabilidade de rentabilidade a longo prazo.
- A configuração das bandas superior e inferior proporciona pontos de entrada e saída claros, o que é conveniente para a execução e gestão.
- A lógica estratégica é simples e clara, fácil de compreender e implementar.
- É adequado para instrumentos e prazos que apresentem características óbvias de reversão da média.
Análise de riscos
- Quando a tendência do mercado muda, os preços podem desviar-se da média por um longo tempo sem reverter, fazendo com que a estratégia falhe.
- A fixação inadequada do múltiplo do desvio-padrão pode conduzir a uma frequência de negociação demasiado elevada ou demasiado baixa, afetando os retornos.
- Em condições de mercado extremas, as flutuações de preços podem ser violentas e as faixas superior e inferior podem perder a sua eficácia.
- Se o instrumento ou o prazo não tiver características de reversão da média, a estratégia pode não ser rentável.
Orientações de otimização
- Realizar testes de otimização sobre o período SMA e o múltiplo do desvio-padrão para encontrar os melhores parâmetros.
- Introduzir indicadores de avaliação da tendência para evitar negociações contrárias à tendência quando a tendência estiver clara.
- Adicionar indicadores de volatilidade, tais como ATR, para além do desvio-padrão para construir bandas dinâmicas.
- Considere custos de negociação, como deslizamento e comissões, para controlar a autenticidade do backtesting.
- Adicionar módulos de controle de risco, como stop-loss, take-profit e gestão de posições.
Resumo
A estratégia de reversão média é uma estratégia de negociação quantitativa baseada em princípios estatísticos, que toma decisões de negociação construindo bandas superiores e inferiores em torno do preço médio. A estratégia tem lógica simples e execução clara, mas deve ser dada atenção à seleção de instrumentos e otimização de parâmetros. Na aplicação prática, fatores como tendência, custos de negociação e controle de risco também precisam ser considerados para melhorar a robustez e lucratividade da estratégia.
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Mean Regression Strategy", overlay=true)
// Define the lookback period for the moving average
length = input.int(20, title="Moving Average Length")
mult = input.float(1.5, title="Standard Deviation Multiplier")
// Calculate the moving average and standard deviation
ma = ta.sma(close, length)
dev = mult * ta.stdev(close, length)
// Calculate upper and lower bands
upper_band = ma + dev
lower_band = ma - dev
// Plot the moving average and bands
plot(ma, color=color.blue, linewidth=2, title="Moving Average")
plot(upper_band, color=color.red, linewidth=2, title="Upper Band")
plot(lower_band, color=color.green, linewidth=2, title="Lower Band")
// Entry conditions
long_condition = ta.crossover(close, lower_band)
short_condition = ta.crossunder(close, upper_band)
// Exit conditions
exit_long_condition = ta.crossunder(close, ma)
exit_short_condition = ta.crossover(close, ma)
// Strategy orders
if (long_condition)
strategy.entry("Long", strategy.long)
if (short_condition)
strategy.entry("Short", strategy.short)
if (exit_long_condition)
strategy.close("Long")
if (exit_short_condition)
strategy.close("Short")
// Plot signals on the chart
plotshape(series=long_condition, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal")
plotshape(series=short_condition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal")
Relacionados
Mais.