Revertendo a estratégia de configuração extrema


Data de criação: 2024-02-21 14:08:09 última modificação: 2024-02-21 14:08:09
cópia: 0 Cliques: 716
1
focar em
1617
Seguidores

Revertendo a estratégia de configuração extrema

Visão geral

A estratégia de configuração de extremo invertido é uma estratégia que usa o extremo K para inverter a linha. Ela é julgada com base no tamanho da entidade e na média da linha K mais recente, gerando um sinal de negociação quando a entidade é maior que a média e ocorre uma inversão.

Princípio da estratégia

A estratégia julga principalmente o tamanho da entidade da linha K atual e o tamanho da linha K global.

Ele registra o tamanho da última linha K (a diferença entre o preço de abertura e o preço de fechamento) e o tamanho da linha K como um todo (a diferença entre o preço mais alto e o preço mais baixo).

Em seguida, use o método da média real-rango-média (RMA) para calcular o tamanho médio da entidade e o tamanho da linha K dos últimos 20 K.

Quando a última linha K está ligada e o tamanho da entidade é maior do que o tamanho da entidade média, e o tamanho da linha K em geral também é maior do que o tamanho da linha K média, gera-se um sinal de multiplicidade.

Em vez disso, quando a linha K mais recente cai e o tamanho da entidade também atende às condições acima, um sinal de falta é gerado.

Isto é, quando a linha K extrema é invertida, o julgamento de valor médio é usado para gerar um sinal de negociação.

Análise de vantagens

As principais vantagens desta estratégia são:

  1. Utilizando características de linha K extrema, é fácil de formar reversão
  2. Comparando o tamanho da entidade com o tamanho total da linha K, em busca de pontos de anomalia
  3. A média dinâmica calculada com RMA para se adaptar às mudanças do mercado
  4. Combinado com a forma invertida, o sinal é mais confiável

Análise de Riscos

A estratégia também apresenta alguns riscos:

  1. O Extremo K não precisa de ser revertido, mas pode continuar a funcionar
  2. Parâmetros mal definidos podem resultar em hipersensibilidade ou insensibilidade
  3. O que é necessário é que haja bastante volatilidade como suporte e não seja adequado para a liquidação.
  4. Pode gerar sinais de negociação frequentes, aumentando custos de negociação e risco de deslizamento

Para reduzir o risco, pode-se ajustar os parâmetros de forma apropriada, ou adicionar o stop loss para controlar os prejuízos.

Direção de otimização

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

  1. Aumentar a filtragem de transações para evitar falsas brechas
  2. Configuração dinâmica de parâmetros de otimização usando o indicador de taxa de flutuação
  3. Combinação de indicadores de tendência para evitar a inversão de overdrafts
  4. Aumentar a probabilidade de um modelo de aprendizagem de máquina determinar a inversão da linha K
  5. Adesão ao mecanismo de impedimento

Resumir

A estratégia de configuração de extremo invertido produz um sinal de negociação quando ocorre uma reversão, julgando os extremos da linha K mais recente. Ela tem a vantagem de aproveitar as características da linha K extrema anormal, mas também existe um certo risco.

Código-fonte da estratégia
/*backtest
start: 2024-02-13 00:00:00
end: 2024-02-20 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Extreme Reversal Setup", overlay=true)

bodySize = input(defval=0.75)
barsBack = input(title="Lookback Period", type=input.integer, defval=20, minval=0)
bodyMultiplier = input(title="Bar ATR Multiplier", type=input.float, defval=2.0, minval=0)

myBodySize = abs(close - open)
averageBody = rma(myBodySize, barsBack)
myCandleSize = abs(high - low)
averageCandle = rma(myCandleSize, barsBack)

signal_long = open[1]-close[1] >= bodySize*(high[1]-low[1]) and 
   high[1]-low[1] > averageCandle*bodyMultiplier and 
   open[1]-close[1] > averageBody and close > open
signal_short = close[1]-open[1] >= bodySize*(high[1]-low[1]) and 
   high[1]-low[1] > averageCandle*bodyMultiplier and 
   close[1]-open[1] > averageBody and open > close

plotshape(signal_long, "LONG", shape.triangleup, location.belowbar, size=size.normal)
plotshape(signal_short, "SHORT", shape.triangledown, location.belowbar, size=size.normal)

strategy.entry("LONG", strategy.long, when=signal_long)
strategy.entry("SHORT", strategy.short, when=signal_short)