Estratégia de reversão de momentum


Data de criação: 2023-12-12 17:25:08 última modificação: 2023-12-12 17:25:08
cópia: 1 Cliques: 349
1
focar em
1166
Seguidores

Estratégia de reversão de momentum

Visão geral

Esta estratégia usa um indicador de dinâmica do preço para determinar se uma tendência de movimento de preço está sendo reversada para capturar oportunidades de reversão de preço. Quando a tendência de aumento de preços diminui ou a tendência de queda diminui, indicando que a quantidade de movimento de preços está sendo reversada, a estratégia abre uma posição a mais ou a menos.

Princípio da estratégia

A estratégia baseia-se principalmente no cálculo de indicadores de momentum. Os indicadores de momentum refletem a velocidade e a intensidade das mudanças de preço. A estratégia calcula dois indicadores de momentum, MOM e MOM1.

Fórmula de MOM:

MOM = preço de encerramento do dia - preço de encerramento do dia anterior a N

A fórmula de cálculo do MOM1:

MOM1 = MOM hoje - MOM ontem

De acordo com o valor do MOM e MOM1 julgue se o preço está sendo reversado. Se o MOM > 0 e o MOM1 < 0, indique que a tendência de alta do preço está diminuindo, apareça um sinal de reversão, faça mais; Se o MOM < 0 e o MOM1 > 0, indique que a tendência de queda do preço está diminuindo, apareça um sinal de reversão, faça um vazio.

Vantagens estratégicas

  1. Capturar a reviravolta dos preços e entrar no mercado a tempo
  2. “O que eu quero é que o Brasil se torne um grande país.
  3. Implementação de Stop Loss Automático e Redução de Risco

Risco estratégico

  1. A tendência é para que os preços sejam mais baixos quando os preços estão mais baixos.
  2. Os parâmetros não foram definidos no momento e não foi possível determinar com precisão o ponto de reversão do preço
  3. Surpresas no mercado levam a sinais errados

Os principais métodos de redução de risco:

  1. Parâmetros de otimização para maior precisão de julgamento
  2. Combinação com outros indicadores de filtragem
  3. Intervenção humana para evitar prejuízos causados por anomalias de mercado

Direção de otimização da estratégia

  1. Otimização dos parâmetros do indicador de dinâmica para melhorar a captura do tempo de inversa
  2. Filtração de indicadores como aumento de tráfego para evitar sinais errados
  3. Adotar estratégias de stop loss para reduzir perdas individuais

Resumir

Esta estratégia calcula o indicador de movimento de preços, para determinar se a tendência de movimento de preços está se revertendo, para realizar o fechamento automático. O feedback mostrou que a estratégia funciona bem e efetivamente capta os pontos de reversão de preços.

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

//@version=4
strategy("Momentum - Strategy", overlay = false, precision = 2, initial_capital = 10000, default_qty_value = 100, default_qty_type = strategy.percent_of_equity, commission_type = strategy.commission.percent, commission_value = 0.2 )

i_len           =       input(defval = 12,      title = "Length",       minval = 1)
i_src           =       input(defval = close,   title = "Source")
i_percent       =       input(defval = true,    title = "Percent?")
i_mom           =       input(defval = "MOM2",  title = "MOM Choice",   options = ["MOM1", "MOM2"])

momentum(seria, length, percent) =>
	_mom        =       percent ? ( (seria / seria[length]) - 1) * 100 : seria - seria[length]
	_mom

mom0        =       momentum(i_src, i_len, i_percent)
mom1        =       momentum(mom0, 1, i_percent)
mom2        =       momentum(i_src, 1, i_percent)

momX        =       mom1

if i_mom == "MOM2"
    momX    :=     mom2

if (mom0 > 0 and momX > 0)
    strategy.entry("MomLE", strategy.long, stop = high + syminfo.mintick, comment = "MomLE")
else
	strategy.cancel("MomLE")
if (mom0 < 0 and momX < 0)
	strategy.entry("MomSE", strategy.short, stop = low - syminfo.mintick, comment = "MomSE")
else
	strategy.cancel("MomSE")

plot(mom0, color = #0000FF, title = "MOM")
plot(mom1, color = #00FF00, title = "MOM1", display = display.none)
plot(mom2, color = #00FF00, title = "MOM2")