Estratégia de entrada de dupla reversão

Autora:ChaoZhang, Data: 2023-11-13 17:56:24
Tags:

img

Resumo

A estratégia de entrada de reversão dupla gera entradas combinando sinais de reversão dos indicadores MACD e Stochastic RSI para ir com precisão longo e curto nos pontos de reversão da tendência.

Estratégia lógica

A estratégia consiste nos seguintes elementos:

  1. Usando o cruzamento do indicador MACD da linha zero para determinar a inversão da tendência.

  2. Usando o indicador RSI estocástico para identificar condições de sobrecompra e sobrevenda.

  3. Quando a linha MACD cruza acima de zero (sinal de reversão de alta) e o RSI estocástico mostra sobrevenda, um sinal de compra é gerado.

  4. A estratégia possui tanto o modo de gráfico do indicador quanto o modo de execução.

A combinação do sinal de reversão do MACD com os níveis de sobrecompra/supervenda do RSI estocástico melhora a precisão das entradas.

Vantagens

  • Filtragem de indicadores duplos melhora a precisão de entrada

Os filtros duplos de inversão garantem que as entradas sejam tomadas apenas após a inversão da tendência, reduzindo os falsos sinais e melhorando a precisão da entrada.

  • Operações de reversão de negociação para mercados agitados/variados

Como uma estratégia de reversão, ela se destaca em condições de mercado de ursos com altos e baixos frequentes e permite negociações vencedoras em cada reversão menor.

  • Amigável para iniciantes sem tendências

Trata diretamente todas as reversões sem a necessidade de determinar a tendência principal, simples de usar para iniciantes.

  • Indicadores flexíveis ou modos de estratégia

Os modos permitem uma utilização flexível para análise ou execução automatizada.

Riscos

  • Risco mais elevado de reversão da negociação

Sem considerar a tendência principal, a negociação de reversão tem maior risco em mercados com tendências fortes, com perdas consecutivas prováveis de abertura de contra-tendência.

  • Optimização multiparâmetro difícil

Os múltiplos parâmetros dos indicadores duplos tornam a otimização desafiadora. Parâmetros inadequados podem causar excesso de negociação ou sinais insuficientes. Requer testes extensos.

  • Requer conta de negociação de alta frequência

A estratégia de alta frequência precisa de contas de negociação de baixo custo para apoiá-la, caso contrário, as taxas podem compensar os lucros.

Oportunidades de melhoria

  • Optimização dos parâmetros do indicador

Testar diferentes combinações de parâmetros para encontrar as configurações ideais para sinais confiáveis.

  • Adicionar filtro de tendência

A adição de um indicador de tendência e a tomada de sinais de reversão apenas na direção da tendência evitam negociações contra-tendência.

  • Implementar o stop loss

Adicionar stop loss por preço ou porcentagem para controlar o risco nas negociações.

  • Reforçar as condições de entrada

Filtros de entrada adicionais como pico de volume ou cruzamento da média móvel para reduzir entradas falsas.

Conclusão

A estratégia de entrada de reversão dupla fornece uma abordagem inovadora e confiável para negociar reversões locais.


/*backtest
start: 2022-11-06 00:00:00
end: 2023-11-12 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy('RB Reversal Tabs Strategy', overlay=true)
//Developer: Andrew Palladino
//Owner: Rob Booker
//Date Modified: 11/25/2018
//Updated to Pinescript V5 and transformed into a Strategy by: Powerscooter	11/25/2022

StrategyMode = input.bool(true,"Strategy Mode")
macd_fast_period = input(title='MACD Fast Period', defval=12)
macd_slow_period = input(title='MACD Slow Period', defval=26)
macd_signal_period = input(title='MACD Signal Period', defval=9)
stoch_period = input(title='Stochastic RSI Period', defval=70)
prc_k_period = input(title='%K Period', defval=30)
prc_d_period = input(title='%D Period', defval=30)
stoch_ob = input(title='Stochastic Overbought Level', defval=70)
stoch_os = input(title='Stochastic Oversold Level', defval=30)

[macd_line, signal_line, hist_line] = ta.macd(close, macd_fast_period, macd_slow_period, macd_signal_period)

fast_prc_k = 100 * (close - ta.lowest(low, stoch_period)) / (ta.highest(high, stoch_period) - ta.lowest(low, stoch_period))
fast_prc_d = ta.sma(fast_prc_k, prc_d_period)

slow_prc_k = ta.sma(fast_prc_k, prc_k_period)
slow_prc_d = ta.sma(slow_prc_k, prc_d_period)

full_prc_k = ta.sma(fast_prc_k, prc_k_period)
full_prc_d = ta.sma(full_prc_k, prc_d_period)

is_buy_reversal = ta.crossover(macd_line, 0) and full_prc_k < stoch_os
is_sell_reversal = ta.crossunder(macd_line, 0) and full_prc_k > stoch_ob

plotshape(is_buy_reversal and not StrategyMode, style=shape.triangleup, color=color.new(color.green, 0), size=size.small, location=location.belowbar)
plotshape(is_sell_reversal and not StrategyMode, style=shape.triangledown, color=color.new(color.red, 0), size=size.small, location=location.abovebar)

//Orders
if is_buy_reversal and StrategyMode
	strategy.entry("Long",strategy.long)
if is_sell_reversal and StrategyMode
	strategy.entry("Short",strategy.short)
//plot(full_prc_k, color=blue)
//plot(full_prc_d, color=red)
//plot(macd_line, color=blue)

Mais.