Estratégia de negociação de média móvel multiperíodo


Data de criação: 2023-10-09 15:05:47 última modificação: 2023-10-09 15:05:47
cópia: 0 Cliques: 671
1
focar em
1617
Seguidores

Visão geral

Esta estratégia é uma estratégia de negociação que combina a média EMA com vários parâmetros diferentes e o indicador de energia quantitativa EOM para obter um julgamento de tendência em vários períodos de tempo, construindo uma linha longa e uma linha curta. A estratégia visa usar a ressonância de vários períodos de tempo de diferentes médias de períodos para descobrir um movimento de tendência mais eficaz.

Princípio da estratégia

A estratégia usa quatro grupos de médias EMAs paramétricas de diferentes períodos, EMAs de 13 períodos, 21 períodos, 50 períodos e 180 períodos. Essas quatro médias EMAs constroem várias dimensões temporais para determinar a tendência dos preços e descobrir padrões de tendência mais efetivos.

A estratégia usa o indicador de quantidade de energia EOM para confirmar a tendência. O indicador EOM combina o volume de transação e a amplitude de flutuação de preços, o que permite determinar com eficácia o caminho da força de compra e venda. A estratégia determina que o EOM maior que 0 é um mercado de ativos, e o EOM menor que 0 é um mercado de ativos.

A estratégia estabelece duas opções, a opção 1 é a de fazer mais quando a EMA de curto prazo passa pela EMA de longo prazo, a opção 2 é a de fazer mais quando a EMA de curto prazo passa pela EMA de médio prazo e a opção 2 é a de fazer mais quando a EMA de curto prazo passa pela EMA de médio prazo. As duas opções permitem uma avaliação mais abrangente da tendência.

Vantagens estratégicas

  • O EMA de períodos múltiplos pode ser usado para determinar tendências e descobrir padrões de tendências mais longas.
  • O indicador de capacidade de EOM é um bom indicador de força de compra e venda, evitando a distorção temporária da correção.
  • Dois meios de entrada para uma melhor compreensão das tendências
  • A redução de perdas individuais através da transição por camadas

Risco estratégico

  • EMA média está atrasada e pode perder uma reversão rápida
  • Indicadores de energia podem emitir sinais errados
  • O julgamento por múltiplos critérios de admissão é incerto
  • A demolição por camadas pode ser excessivamente mecanizada

Direção de otimização

  • Parâmetros com mais combinações podem ser testados em períodos de EMA para encontrar o melhor parâmetro
  • Podem ser adicionados outros indicadores para confirmação de admissão, como o MACD, etc.
  • Pode-se usar o stop loss móvel para acompanhar a operação da tendência
  • A proporção de posições de posicionamento pode ser ajustada de acordo com a situação do mercado

Resumir

A estratégia integra o julgamento do EMA de períodos múltiplos e a filtragem do indicador de energia quantitativa, permitindo o acompanhamento de tendências e a remoção de ruído. Há muito espaço para otimização, e a estabilidade da estratégia pode ser ainda melhorada testando diferentes combinações de parâmetros e adicionando mais indicadores. Ao mesmo tempo, a adoção de stop loss dinâmico e gerenciamento de posição também pode otimizar significativamente o desempenho da estratégia.

Código-fonte da estratégia
/*backtest
start: 2022-10-02 00:00:00
end: 2023-10-08 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © SoftKill21

//@version=4
strategy("4x ema + volume", overlay=true,initial_capital = 1000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent , commission_value=0.1 )

//ema x 4
ema1l=input(13)
ema2l=input(21)
ema3l=input(50)
ema4l=input(180)

ema1=ema(close,ema1l)
ema2=ema(close,ema2l)
ema3=ema(close,ema3l)
ema4=ema(close,ema4l)

long1 = close > ema1 and ema1 > ema2 and ema2> ema3 and ema3 > ema4
long2 = crossover(ema1,ema2) and crossover(ema1,ema3)

short1 = close < ema1 and ema1 < ema2 and ema2< ema3 and ema3 < ema4
short2= crossunder(ema1,ema2) and crossunder(ema1,ema3)


//eom
length = input(14, minval=1)
div = input(10000, title="Divisor", minval=1)
eom = sma(div * change(hl2) * (high - low) / volume, length)


option1=input(true)
option2=input(false)

if(option1)
    strategy.entry("long",1,when=long1 and eom>0)
    strategy.close("long",when=short1 and eom<0)
 
if(option2)
    strategy.entry("long",1,when=long2 and eom>0)
    strategy.close("long",when=short2 and eom<0)