Estratégia de reversão de barra de pinos com filtro de tendência

SMA RSI PB
Data de criação: 2024-06-07 16:48:23 última modificação: 2024-06-07 16:48:23
cópia: 2 Cliques: 631
1
focar em
1617
Seguidores

Estratégia de reversão de barra de pinos com filtro de tendência

Visão geral

A estratégia usa uma média móvel simples de 50 ciclos (SMA) para determinar a direção da tendência atual e usa uma média móvel de 20 ciclos (SMA) como condição de filtragem de volume de transação, sendo que apenas a quantidade de transação maior do que essa linha média é considerada um sinal eficaz quando a barra de pin aparece. Além disso, a estratégia também calcula um indicador de força relativamente fraca (RSI), mas não é usada diretamente nas condições de entrada e saída, mas sim como condição para sinais de filtragem adicional.

Princípio da estratégia

  1. Primeiro, julgar o tamanho relativo das linhas de sombras superiores e inferiores da barra de pinos e exigir que as linhas de sombras superiores ou inferiores sejam pelo menos 60% do intervalo de pontos altos e baixos de toda a linha K, enquanto a parte da entidade não pode exceder 30%.
  2. Comparando o tamanho do preço de fechamento e do preço de abertura, é possível determinar se o Pin Bar está em alta ou baixa.
  3. Usando a SMA de 50 períodos para avaliar a tendência atual, quando o preço de fechamento está acima da SMA é considerado uma tendência ascendente, ao contrário, é uma tendência descendente.
  4. Com o limite de 20 ciclos de volume de transação (SMA) como condição de filtragem de volume de transação, apenas o volume de transação maior do que esse valor quando a barra de pin é realizada é considerado um sinal válido.
  5. Desenhe os indicadores de alta e baixa identificados na barra de pinos.
  6. Abrir uma posição de alta quando a barra de pin aparece, abrir uma posição de baixa quando a barra de pin aparece.
  7. O stop loss é 2 vezes o tamanho da barra de pinos e o stop loss é 3 vezes o tamanho da barra de pinos. O stop loss está localizado abaixo do ponto mais baixo da barra de pinos e o stop loss está localizado acima do ponto mais alto.

Análise de vantagens

  1. O Pin Bar é uma forma de inversão de preço muito intuitiva e eficaz, capaz de capturar com maior precisão as mudanças de humor do mercado.
  2. As condições de filtragem de tendências garantem que os sinais de Pin Bar estejam de acordo com a direção da tendência atual, aumentando significativamente a taxa de sucesso do sinal.
  3. As condições de volume de transação filtram o ruído do mercado de falta de liquidez, garantindo que os sinais de Pin Bar tenham participação suficiente no mercado.
  4. A configuração do stop loss e do stop stop é baseada nas características da própria barra de pinos, e os riscos são mais razoáveis do que os benefícios.
  5. A lógica do código e as regras são claras, fáceis de entender e implementar.

Análise de Riscos

  1. A confiabilidade dos sinais de Pin Bar é muito reduzida em mercados de baixa volatilidade, onde a filtragem de tendências não é muito eficaz.
  2. O Pin Bar também pode falhar em caso de um acidente com um avião italiano ou um Lido.
  3. A frequência de transações é baixa e a amostragem pode ser insuficiente.
  4. Os parâmetros padrão podem precisar de mais otimização para variedades e períodos específicos.
  5. Um sistema de sinalização individual é, em geral, mais arriscado.

Direção de otimização

  1. Pode-se considerar a introdução de outras formas de inversão, como Bar interno, para enriquecer a fonte de sinal.
  2. A posição do stop loss e do stop-loss pode ser ajustada dinamicamente com os indicadores de volatilidade, como o ATR, para se adaptar a diferentes condições de mercado.
  3. A partir de agora, o preço de cada produto será calculado de acordo com o seu preço de venda.
  4. Pode-se adicionar mais dados básicos, como calendários econômicos e eventos importantes, para filtrar sinais que podem falhar.
  5. Considere a introdução de um módulo de gestão de fundos para controlar o risco de cada transação.

Resumir

A estratégia de reversão do Pin Bar usa um pensamento simples e eficaz para melhorar a precisão do reconhecimento de sinais por meio de filtragem de tendências e filtragem de volume de transações. Embora ainda haja alguns pontos a serem melhorados, o pensamento geral é viável e vale a pena otimizar ainda mais. O Pin Bar em si, como uma forma clássica de preço, também pode ser usado em combinação com outros indicadores ou sinais para obter um sistema de negociação mais robusto.

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

//@version=5
strategy("Filtered Pin Bar Strategy with Relaxed Volume", overlay=true)

// Define the size of the pin bar's wick and body
wickSize = 0.6
bodySize = 0.3

// Calculate the size of the wicks and body
upperWick = high - math.max(open, close)
lowerWick = math.min(open, close) - low
body = math.abs(close - open)

// Define a simple moving average to determine the trend
smaLength = 50
sma = ta.sma(close, smaLength)

// Define a more relaxed volume threshold
volumeThreshold = ta.sma(volume, 20) * 1.0

// Define RSI parameters
rsiLength = 14
rsiOverbought = 70
rsiOversold = 30
rsi = ta.rsi(close, rsiLength)

// Define the conditions for a bullish pin bar
bullishPinBar = (lowerWick > (wickSize * (high - low))) and
     (body < (bodySize * (high - low))) and
     (close > open) and
     (close > sma) and
     (volume > volumeThreshold)

// Define the conditions for a bearish pin bar
bearishPinBar = (upperWick > (wickSize * (high - low))) and
     (body < (bodySize * (high - low))) and
     (close < open) and
     (close < sma) and
     (volume > volumeThreshold)

// Plot the bullish and bearish pin bars on the chart
plotshape(series=bullishPinBar, title="Bullish Pin Bar", location=location.belowbar, color=color.green, style=shape.labelup, text="PB")
plotshape(series=bearishPinBar, title="Bearish Pin Bar", location=location.abovebar, color=color.red, style=shape.labeldown, text="PB")

// Entry and exit rules
if (bullishPinBar)
    strategy.entry("Bullish Pin Bar", strategy.long)
if (bearishPinBar)
    strategy.entry("Bearish Pin Bar", strategy.short)

// Optional: Set stop loss and take profit
stopLoss = 2 * body
takeProfit = 3 * body
strategy.exit("Exit Long", from_entry="Bullish Pin Bar", stop=low - stopLoss, limit=high + takeProfit)
strategy.exit("Exit Short", from_entry="Bearish Pin Bar", stop=high + stopLoss, limit=low - takeProfit)