Quatro médias móveis exponenciais e estratégia de volume

Autora:ChaoZhang, Data: 2023-10-09 15:05:47
Tags:

Resumo

Esta estratégia combina várias EMAs com diferentes configurações de parâmetros e o indicador de volume EOM para determinar tendências em vários prazos e construir uma estratégia de negociação com julgamentos de longo prazo e de curto prazo.

Estratégia lógica

A estratégia utiliza 4 grupos de EMAs com parâmetros de período diferentes - 13, 21, 50 e 180. Estes 4 EMAs estabelecem múltiplas dimensões temporais para determinar as tendências de preços e revelar padrões de tendência de longo prazo.

A estratégia usa o indicador de volume EOM para confirmar tendências. O EOM combina volume de negociação e faixa de volatilidade de preços para medir efetivamente a pressão de compra e venda. A estratégia determina condições longas quando o EOM está acima de 0 e condições curtas quando o EOM está abaixo de 0.

A estratégia tem duas opções. A opção 1 é longa quando a EMA mais curta cruza acima da EMA mais longa e fecha longa quando a EMA mais curta cruza abaixo da EMA mais longa. A opção 2 é longa quando a EMA mais curta cruza acima da EMA intermediária e fecha longa quando a EMA mais curta cruza abaixo da EMA intermediária. As duas opções permitem uma confirmação de tendência mais abrangente.

Vantagens

  • O uso de EMAs de vários prazos para determinar tendências pode revelar padrões de tendência de longo prazo
  • O indicador de volume EOM mede eficazmente a pressão de compra/venda, evitando falsos sinais de retrações temporárias
  • Dois métodos opcionais de entrada permitem uma confirmação mais completa da tendência
  • A ampliação com saídas em camadas reduz a exposição a saídas únicas

Riscos

  • As EMAs têm atraso e podem perder inversões rápidas
  • Os indicadores de volume podem dar sinais falsos
  • Critérios de condição múltiplos criam entrada pouco clara
  • As saídas em camadas podem ser demasiado mecânicas

Oportunidades de melhoria

  • Teste mais combinações de períodos de EMA para encontrar parâmetros ideais
  • Adicionar outros indicadores como o MACD para confirmação de entrada
  • Adotar um stop loss dinâmico para seguir as tendências
  • Ajustar o dimensionamento das posições com base nas condições de mercado

Resumo

Esta estratégia integra determinação de tendência EMA de vários prazos e filtragem de indicadores de volume para alcançar o seguimento da tendência e a remoção de ruído.


/*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)   

Mais.