A estratégia de engenharia reversa do RSI é uma estratégia de negociação baseada no indicador RSI.
A ideia central desta estratégia é a seguinte:
Calcular o valor K, o período ExpPer, a sequência ascendente da AUC e a sequência descendente da ADC no indicador RSI.
Calcular inversamente o nVal com base nas definições dos parâmetros RSI, ADC, valores da sequência AUC, etc.
Adicione nVal ao preço para deduzir inversamente nRes.
Comparar o nRes com o preço de fechamento atual para gerar sinais longos e curtos.
Especificamente, a estratégia primeiro calcula alguns parâmetros-chave no RSI, incluindo o valor K, o período ExpPer, a seqüência de aumento da AUC e a seqüência de queda da ADC. Entre eles, o valor K é o fator de suavização e o ExpPer é duas vezes a configuração do parâmetro RSI menos 1.
Em seguida, de acordo com esses parâmetros, a estratégia deduz o preço inversamente. Primeiro, uma variável chave nVal é calculada, que é igual a (WildPer - 1) * (ADC_Value / (100 - Valor) - AUC). Esta fórmula deduz o processo de cálculo do RSI inversamente.
Em seguida, adicione nVal ao preço de fechamento atual para obter o preço de engenharia reversa nRes. Finalmente, se o nRes for maior que o preço de fechamento atual, um sinal curto é gerado.
As principais vantagens desta estratégia são:
A lógica é nova e inovadora até certo ponto.
O preço de engenharia reversa gera sinais de negociação opostos ao mercado, o que permite a venda a descoberto para expandir o âmbito de aplicação da estratégia.
O RSI é um indicador de negociação maduro e comumente utilizado, com configurações razoáveis de parâmetros e elevada fiabilidade e baixo risco.
A lógica da estratégia é clara e fácil de compreender.
Esta estratégia apresenta também alguns riscos:
Se o RSI enviar sinais errados, os sinais da estratégia também falharão.
Os sinais contrários podem não ser coerentes com a tendência geral do mercado.
A configuração dos parâmetros do RSI requer experiência, uma configuração inadequada pode levar a negociações excessivamente frequentes ou sinais errados.
A venda a descoberto com operações reversas tem riscos elevados.
Os riscos podem ser controlados através da otimização dos parâmetros do RSI, da combinação de outros indicadores e da gestão rigorosa do dinheiro.
A estratégia pode ser otimizada nos seguintes aspectos:
Otimizar os parâmetros do RSI WildPer e Value para melhor adaptar-se às condições do mercado.
Adicionar estratégias de stop loss para bloquear os lucros e reduzir as perdas.
Combinar com outros indicadores como o MACD para gerar sinais mais precisos e confiáveis.
Adicionar filtros de posição aberta para evitar operações perdedoras desnecessárias.
Otimizar as estratégias de gestão de fundos para controlar estritamente o capital por negócio, a fim de evitar perdas além do alcance acessível.
A estratégia de engenharia reversa RSI gera sinais de negociação opostos ao mercado deduzindo o processo de cálculo do RSI inversamente. A estratégia tem uma lógica única e certa inovação, permitindo que a venda a descoberto expanda seu escopo de aplicação. Mas também há riscos de operações reversas que precisam de otimização e controle de risco adequados.
/*backtest start: 2022-11-21 00:00:00 end: 2023-11-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 25/10/2017 // The related article is copyrighted material from // Stocks & Commodities. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Reverse Engineering RSI, by Giorgos Siligardos", overlay = true) Value = input(50, minval=1) WildPer = input(14,minval=1) reverse = input(false, title="Trade reverse") ExpPer = 2 * WildPer - 1 K = 2 / (ExpPer + 1) AUC = iff(close > close[1], K * (close - close[1]) + (1 - K) * nz(AUC[1], 1), (1-K) * nz(AUC[1], 1)) ADC = iff(close > close[1], (1-K) * nz(ADC[1], 1), K * (close[1] - close) + (1 - K) * nz(ADC[1], 1)) nVal = (WildPer - 1) * (ADC * Value / (100 - Value) - AUC) nRes = iff(nVal >= 0, close + nVal, close + nVal * (100 - Value) / Value) pos = iff(nRes > close, -1, iff(nRes < close, 1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(nRes, color=blue, title="Reverse Engineering RSI")