
Visão geral
A estratégia combina várias médias móveis e um índice relativamente forte (RSI) para gerar um sinal de negociação. Ela usa médias móveis de quatro períodos diferentes, os dias 9, 21, 25 e 99, para determinar a direção da tendência através do cruzamento entre eles.
A principal idéia da estratégia é aproveitar as características de tendência de diferentes médias móveis periódicas para julgar as principais tendências do mercado por meio de seus alinhamentos de múltiplos eixos e alinhamentos em branco. A média curta de curto prazo cruzando a média de longo prazo para cima é considerada um sinal de otimismo e, em vez disso, é considerada um sinal de baixa. O indicador RSI é usado para julgar o sentimento do mercado e fornecer um reverso quando o mercado está sobrecomprado ou sobrevendido.
Princípio da estratégia
- Calcule a média móvel simples de quatro períodos diferentes: 9, 21, 25 e 99.
- Para julgar a intersecção da linha média de 9 dias e da linha média de 21 dias, quando a linha média de 9 dias atravessa a linha média de 21 dias para cima, gera um sinal de multiplicação; quando a linha média de 9 dias atravessa a linha média de 21 dias para baixo, gera um sinal de divisão.
- A intersecção entre a linha média de 25 dias e a linha média de 99 dias é julgada quando a linha média de 25 dias atravessa a linha média de 99 dias para cima, gerando um sinal de multiplicação; quando a linha média de 25 dias atravessa a linha média de 99 dias para baixo, gerando um sinal de divisão.
- Para calcular o RSI de 14 dias, quando o RSI é maior que 70, o mercado está em um estado de sobrecompra; quando o RSI é menor que 30, o mercado está em um estado de sobrevenda.
- A combinação do sinal de cruzamento da média móvel e do sinal RSI produz um sinal de negociação final:
- Quando a linha média de 9 dias atravessa a linha média de 21 dias e o RSI é maior que 70, abre uma posição vazia;
- Quando a linha média de 9 dias atravessa a linha média de 21 dias para baixo e o RSI é menor que 30, abrir uma posição a mais;
- Quando a média de 25 dias atravessa a média de 99 dias para cima e o RSI é maior que 70, abrir uma posição maior;
- Quando a linha média de 25 dias atravessa a linha média de 99 dias para baixo e o RSI é menor que 30, abre uma posição em branco.
- Os sinais de cruzamento de média móvel também são usados para equilibrar posições, quando o correspondente cruzamento de média ocorre, para equilibrar posições anteriores.
Análise de vantagens
- Seguimento de tendências: a estratégia utiliza as características de tendência de diferentes médias móveis periódicas para julgar as principais tendências do mercado por meio de suas ordenações de cabeças múltiplas e cabeças vazias, o que ajuda a entender a direção geral do mercado.
- Filtragem de ruído: Em vez de usar uma única média móvel, a estratégia usa uma média móvel de vários períodos diferentes, o que ajuda a filtrar o ruído de curta duração e melhorar a confiabilidade do sinal.
- Julgamento do sentimento: A introdução do indicador RSI como julgamento auxiliar, que fornece um sinal de reversão quando o sentimento do mercado é demasiado otimista ou pessimista, pode, em parte, evitar que a estratégia tenha um retorno maior em situações extremas do mercado.
- Lógico claro: a lógica de negociação da estratégia é simples e clara, fácil de entender e implementar.
- Adaptabilidade: A estratégia pode ser adaptada a diferentes ambientes de mercado e variedades de negociação, ajustando os períodos das médias móveis e os parâmetros do RSI.
Análise de Riscos
- Parâmetros sensíveis: o desempenho da estratégia pode ser sensível à escolha de períodos de médias móveis e configurações de parâmetros do RSI, e diferentes parâmetros podem causar grandes diferenças no desempenho da estratégia.
- Atraso de identificação de tendências: a média móvel é essencialmente um indicador de atraso, e pode ocorrer um certo atraso nos pontos de viragem do mercado, resultando em oportunidades de negociação perdidas ou gerando sinais errados.
- Desempenho fraco em mercados de turbulência: em mercados de turbulência, a frequência de equilíbrio entre as linhas pode levar a estratégias que produzem mais sinais de negociação, podendo não ter um desempenho ideal.
- A estratégia é baseada em dados históricos e pode não responder adequadamente a alguns casos de cisnes negros.
Direção de otimização
- Optimização de parâmetros: optimização dos parâmetros de média móvel e do RSI para encontrar o melhor conjunto de parâmetros em um determinado mercado. Os métodos de otimização, como algoritmos genéticos, podem ser usados para encontrar automaticamente os parâmetros mais ótimos.
- Filtragem de sinais: baseado no cruzamento equilátero e no sinal RSI, introduza outros indicadores técnicos ou padrões de comportamento de preços para filtragem secundária, aumentando a precisão do sinal. Por exemplo, pode ser combinado com indicadores como Brinks, MACD e outros.
- Gerenciamento de posições: introdução do conceito de gerenciamento de posições com base na estratégia atual, ajustando o tamanho das posições de acordo com a intensidade e a dinâmica de determinação das tendências do mercado, para melhor controlar o risco e aumentar os ganhos.
- Stop loss: introdução de mecanismos de stop loss e stop loss, especialmente stop loss de volatilidade ou stop loss de rastreamento, para controlar o limite máximo de risco de uma única transação.
- Adaptação multi-mercado: expandir a estratégia para vários mercados e variedades, capturando oportunidades de negociação em diferentes mercados com o ajuste de parâmetros e controle de risco apropriados.
Resumir
Esta estratégia, combinando a média móvel e o indicador RSI de diferentes períodos, forma uma estratégia de negociação de acompanhamento de tendências e julgamento de emoções. Sua vantagem é a clareza lógica, a adaptabilidade e a melhor compreensão da tendência do mercado através da combinação de linhas uniformes. Mas, ao mesmo tempo, há riscos de fraco desempenho do mercado, como a sensibilidade aos parâmetros, o atraso na identificação de tendências e oscilações.
Código-fonte da estratégia
/*backtest
start: 2023-04-24 00:00:00
end: 2024-04-29 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Estratégia de Médias Móveis e RSI (por Svitorino_trade)", shorttitle="Estratégia-Médias Móveis", overlay=true)
len1 = input.int(9, minval=1, title="Length 1")
len2 = input.int(21, minval=1, title="Length 2")
len3 = input.int(25, minval=1, title="Length 3")
len4 = input.int(99, minval=1, title="Length 4")
rsi_length = input.int(14, minval=1, title="RSI Length")
rsi_oversold = input.float(30, minval=0, maxval=100, title="RSI Oversold Level")
rsi_overbought = input.float(70, minval=0, maxval=100, title="RSI Overbought Level")
src = input(close, title="Source")
ama(src, length) =>
sum = 0.0
for i = 0 to length - 1
sum := sum + src[i]
sum / length
avg1 = ama(src, len1)
avg2 = ama(src, len2)
avg3 = ama(src, len3)
avg4 = ama(src, len4)
rsi_value = ta.rsi(src, rsi_length)
// Condições de entrada e saída para períodos de 9 e 21
cruzamento_9_21_acima = avg1 > avg2 and avg1[1] <= avg2[1]
cruzamento_9_21_abaixo = avg1 < avg2 and avg1[1] >= avg2[1]
// Condições de entrada e saída para períodos de 25 e 99
cruzamento_25_99_acima = avg3 > avg4 and avg3[1] <= avg4[1]
cruzamento_25_99_abaixo = avg3 < avg4 and avg3[1] >= avg4[1]
// Plotando os sinais de entrada e saída
plotshape(series=cruzamento_9_21_acima, style=shape.triangleup, color=color.green, size=size.small, location=location.belowbar)
plotshape(series=cruzamento_9_21_abaixo, style=shape.triangledown, color=color.red, size=size.small, location=location.abovebar)
plotshape(series=cruzamento_25_99_acima, style=shape.triangleup, color=color.green, size=size.small, location=location.belowbar)
plotshape(series=cruzamento_25_99_abaixo, style=shape.triangledown, color=color.red, size=size.small, location=location.abovebar)
// Entradas e saídas para períodos de 9 e 21
if cruzamento_9_21_acima and rsi_value > rsi_overbought
strategy.entry("Venda Curta", strategy.short)
if cruzamento_9_21_abaixo and rsi_value < rsi_oversold
strategy.entry("Compra Curta", strategy.long)
if cruzamento_9_21_acima
strategy.close("Compra Curta")
if cruzamento_9_21_abaixo
strategy.close("Venda Curta")
// Entradas e saídas para períodos de 25 e 99
if cruzamento_25_99_acima and rsi_value > rsi_overbought
strategy.entry("Compra Forte", strategy.long)
if cruzamento_25_99_abaixo and rsi_value < rsi_oversold
strategy.entry("Venda Forte", strategy.short)
if cruzamento_25_99_acima
strategy.close("Venda Forte")
if cruzamento_25_99_abaixo
strategy.close("Compra Forte")