Índice de Momentum Tendência Seguindo Estratégia


Data de criação: 2023-12-05 15:13:25 última modificação: 2023-12-05 15:13:25
cópia: 0 Cliques: 681
1
focar em
1619
Seguidores

Índice de Momentum Tendência Seguindo Estratégia

Visão geral

Trata-se de uma estratégia de acompanhamento de tendências dinâmicas de ETFs de índices baseados em médias móveis. Utiliza a interseção de direção e inclinação de médias móveis rápidas e médias móveis lentas para determinar a direção da tendência, permitindo o acompanhamento de tendências dinâmicas de ETFs de índices de baixo risco.

Princípio da estratégia

A estratégia usa uma média móvel de 50 e 150 períodos. Quando a média móvel rápida atravessa a média móvel lenta e a inclinação da média móvel rápida é maior que a barreira, considere-se uma mudança de tendência e faça mais; quando a média móvel rápida atravessa a média móvel lenta abaixo da média móvel rápida ou a inclinação da média móvel rápida é menor que a barreira, considere-se uma reversão de tendência e leve.

A estratégia é simples e direta, usando a direção e a inclinação da média móvel para determinar a tendência do mercado, evitando o encaixe da curva e controlando eficazmente o risco. Além disso, a média móvel possui características naturais de silenciamento e pode filtrar efetivamente o ruído do mercado.

Análise de vantagens

Este é um índice de baixo risco ETF com uma estratégia de seguimento de tendências dinâmicas, com as seguintes vantagens:

  1. Forte capacidade de controle de risco. Controlar o risco de forma eficaz, filtrando o ruído do mercado através de médias móveis.
  2. O custo de implementação é baixo. Usando apenas uma média móvel simples, o custo de implementação é baixo e fácil de implementar.
  3. Estabilidade de ganhos. O índice ETF em si é pouco volátil, e pode obter ganhos extras estáveis com o acompanhamento da tendência.
  4. Adaptabilidade. Há muitos parâmetros ajustáveis que podem ser otimizados para diferentes índices de ETFs.

Análise de Riscos

A estratégia também apresenta alguns riscos:

  1. Pode ter perdido a reversão rápida. Use a média móvel para avaliar a tendência, pode ter perdido a reversão rápida.
  2. Parâmetros sensíveis. A configuração inadequada dos parâmetros pode levar a excesso de transações ou a oportunidades perdidas.
  3. A eficácia varia conforme o ambiente de mercado. Pode não ser boa em situações de turbulência.

Resolução:

  1. A resposta foi rápida, combinada com outros indicadores.
  2. Optimização de testes para parâmetros.
  3. Parâmetros de ajuste de acordo com a dinâmica do mercado.

Direção de otimização

A estratégia também pode ser melhorada nos seguintes aspectos:

  1. Utilizando outros indicadores como MACD, KD e outros para auxiliar o julgamento e melhorar a eficácia da estratégia.
  2. Aumentar a lógica de stop loss para controlar ainda mais o risco.
  3. Optimizar os parâmetros do ciclo da média móvel para mais índices de ETFs.
  4. Parâmetros de ajuste dinâmico, adaptando-se a mudanças no ambiente de mercado.

Resumir

Esta estratégia é uma estratégia de seguimento de tendências de tipo dinâmico de ETFs de índice de baixo risco, simples e fácil de implementar. Utiliza a direção da tendência de determinação cruzada de médias móveis, com fortes vantagens de controle de risco e de baixo custo e estabilidade de receita. A estratégia também possui algumas falhas, mas pode ser otimizada de várias maneiras, tornando-se uma ferramenta eficaz para a distribuição de ativos de ETFs de índice.

Código-fonte da estratégia
/*backtest
start: 2023-11-04 00:00:00
end: 2023-12-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//please use on daily SPY, or other indexes only
strategy("50-150 INDEX TREND FOLLOWING", overlay=true)

//user input
fastSMA = input(title="Fast Moving Average (Int)",type=input.integer,minval=1,maxval=1000,step=1,defval=50,confirm=false)
slowSMA = input(title="Slow Moving Average (Int)",type=input.integer,minval=1,maxval=1000,step=1,defval=150,confirm=false)
longSlopeThreshold = input(title="Bullish Slope Angle (Deg)",type=input.integer,minval=-90,maxval=90,step=1,defval=5,confirm=false)
shortSlopeThreshold = input(title="Bearish Slope Angle (Deg)",type=input.integer,minval=-90,maxval=90,step=1,defval=-5,confirm=false)
atrValue = input(title="Average True Range (Int)",type=input.integer,minval=1,maxval=100,step=1,defval=14,confirm=false)
risk = input(title="Risk (%)",type=input.integer,minval=1,maxval=100,step=1,defval=100,confirm=false)

//create indicator
shortSMA = sma(close, fastSMA)
longSMA = sma(close, slowSMA)

//calculate ma slope
angle(_source) =>
    rad2degree=180/3.14159265359
    ang=rad2degree*atan((_source[0] - _source[1])/atr(atrValue)) 

shortSlope=angle(shortSMA)
longSlope=angle(longSMA)

//specify crossover conditions
longCondition = (crossover(shortSMA, longSMA) and (shortSlope > longSlopeThreshold)) or ((close > shortSMA) and (shortSMA > longSMA) and (shortSlope > longSlopeThreshold))
exitCondition = crossunder(shortSMA, longSMA) or (shortSlope < shortSlopeThreshold)
strategy.initial_capital = 50000
//units to buy
amount = (risk / 100) * (strategy.initial_capital + strategy.netprofit)
units = floor(amount / close)

//long trade
if (longCondition and strategy.position_size == 0)
    strategy.order("Long", strategy.long, units)

//close long trade
if (exitCondition and strategy.position_size > 0)
    strategy.order("Exit", strategy.short, strategy.position_size)

// Plot Moving Average's to chart
plot(shortSMA, color=color.blue)
plot(longSMA, color=color.green)