Estratégia de Stop Loss de Média Móvel Noro


Data de criação: 2024-01-30 15:49:34 última modificação: 2024-01-30 15:49:34
cópia: 1 Cliques: 527
1
focar em
1617
Seguidores

Estratégia de Stop Loss de Média Móvel Noro

Visão geral

A estratégia de stop-loss de Noro é uma estratégia de acompanhamento de tendências. Ela é calculada com uma média móvel simples de 3 dias e adiciona uma proporção acima e abaixo dela como uma linha de abertura e uma linha de parada.

Princípio da estratégia

O núcleo da estratégia é o cálculo da média móvel simples de 3 dias, ma. Em seguida, adicione uma percentagem de lo acima de ma como a linha de abertura long, fazendo mais quando o preço atravessa long; abaixo de ma, subtraia uma percentagem de sl como a linha de parada de perda, fazendo uma parada quando o preço quebra a parada abaixo.

As regras de cálculo são as seguintes:

  1. Calcule a média móvel simples de 3 dias
  2. A linha de abertura long = ma + ma * lo%
  3. linha de parada take = preço médio atual da posição + preço médio atual da posição * tp%
  4. Stop loss line = preço médio da posição atual - preço médio da posição atual * sl%

Isso cria uma estratégia de acompanhamento de tendências baseada em ma para definir uma linha de abertura, uma linha de parada e uma linha de parada com percentual configurável.

Análise de vantagens

A maior vantagem dessa estratégia é que ela pode ser executada automaticamente. Você pode capturar a tendência intermédia fazendo um excesso de otimização, baixa e baixa, sem ter que julgar a forma da face. Além disso, com a configuração de stop loss, você pode parar automaticamente no final da tendência, evitando a retração excessiva.

Outra vantagem é que os parâmetros podem ser ajustados de forma flexível. Ao ajustar os parâmetros percentuais da linha de posição aberta, da linha de parada e da linha de parada, é possível controlar livremente o tamanho da posição e o espaço de parada.

Análise de Riscos

O maior risco desta estratégia é a possibilidade de se formar um deslizamento enorme. Como é uma negociação fora da linha de jogo, quando o preço cai rapidamente, é fácil causar transações que ultrapassam o preço de parada muito antes de serem feitas. Isso fará com que os investidores percam muito.

Outro risco é que a configuração inadequada dos parâmetros pode levar a entradas e saídas muito frequentes, aumentando a frequência de negociação e a carga de taxas.

Direção de otimização

A estratégia pode ser melhorada em vários aspectos:

  1. Em vez de usar um único stop-loss, evite o risco de um grande deslizamento
  2. Aumentar a configuração do número de posições para facilitar a troca de posições e reduzir a frequência de negociação
  3. Aumentar os indicadores de tendência e evitar a manipulação de mercados não-trend
  4. Optimizar configurações de parâmetros para encontrar combinações ótimas de parâmetros

Resumir

A estratégia de stop loss de Noro é uma estratégia de acompanhamento de tendências simples e prática. Ela pode ser executada automaticamente para acompanhar a tendência, acompanhada de uma configuração de stop loss para controlar eficazmente o risco. O maior risco da estratégia é que ela pode causar grandes pontos de deslizamento e configuração inadequada de parâmetros que resultam em negociações muito frequentes.

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

//2019
//Noro

//@version=4
strategy("Stop-loss", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
lo = input(-5.0, title = "Long-line, %")
tp = input(5.0, title = "Take-profit")
sl = input(2.0, title = "Stop-loss")

//SMA
ma = sma(ohlc4, 3)
long = ma + ((ma / 100) * lo)

//Orders
avg = strategy.position_avg_price
if ma > 0
    strategy.entry("Long", strategy.long, limit = long)
    strategy.entry("Take", strategy.short, 0, limit = avg + ((avg / 100) * tp))
    strategy.entry("Stop", strategy.short, 0, stop = avg - ((avg / 100) * sl))
    
//Cancel order
if strategy.position_size == 0
    strategy.cancel("Take")
    strategy.cancel("Stop")

//Lines
plot(long, offset = 1, color = color.black, transp = 0)
take = avg != 0 ? avg + ((avg / 100) * tp) : long + ((long / 100) * tp)
stop = avg != 0 ? avg - ((avg / 100) * sl) : long - ((long / 100) * sl)
takelinecolor = avg == avg[1] and avg != 0 ? color.lime : na
stoplinecolor = avg == avg[1] and avg != 0 ? color.red : na
plot(take, offset = 1, color = takelinecolor, linewidth = 3, transp = 0)
plot(stop, offset = 1, color = stoplinecolor, linewidth = 3, transp = 0)