
Uma estratégia de negociação quantitativa de possíveis pontos de reversão do mercado é uma estratégia de negociação quantitativa que tenta descobrir os pontos de reversão do mercado, calculando a média móvel do indicador RSI após o ajuste inverso em um período de tempo mais longo.
A estratégia primeiro calcula o indicador RSI em geral, cujo parâmetro é o RSI_pm representa a duração do ciclo de cálculo do RSI. Depois, o RSI original é ajustado de forma inversa através de uma função matemática IF, com a fórmula IF ((input) => ((exp)) 2*input)-1)/(exp(2*input) + 1) ◦ O indicador RSI ajustado é transmitido para a variável IF_RSI。
Para filtrar o ruído excessivo, a estratégia é usar o IF_E o RSI é baseado em RSI._ps média móvel em períodos, obtendo o indicador final usado para avaliar pontos de compra e venda wma_O RSI é mapeado para uma faixa de 0 a 100.
Finalmente, a estratégia traça o indicador em um período de tempo mais alto e define um limite de 0,8 e -0,8. O indicador gera um sinal de compra quando a linha do indicador sobe de baixo para um nível de 0,8; O indicador gera um sinal de venda quando a linha do indicador desce de cima para baixo para um nível de -0,8.
A estratégia de lidar com o movimento do RSI através de uma dupla suavização é eficaz para filtrar o excesso de ruído e bloquear um sinal de inversão mais claro. A dupla suavização é aplicada ao indicador RSI original e ao RSI após o ajuste do valor absoluto, respectivamente. Esta abordagem pode aumentar a característica de regresso médio do indicador e produzir um sinal de negociação mais confiável.
Além disso, a estratégia usa uma análise de vários quadros temporais para identificar rupturas de indicadores em um quadro temporal de nível mais elevado, podendo bloquear oportunidades de reversão nas linhas longas, evitando a interferência de excesso de ruído de mercado de curto prazo.
A estratégia depende do indicador de equilíbrio para determinar os pontos de venda e venda, existindo um certo atraso. Em um mercado de touros de longo prazo, o espaço para subir após o ajuste do indicador pode ser limitado e não ser capaz de capturar adequadamente as oportunidades de tendência.
Por outro lado, o ajuste do indicador também pode perder a oportunidade de rebote após o ajuste da linha curta. Se não for possível otimizar adequadamente os parâmetros do indicador, é possível enfrentar certos riscos estratégicos.
Pode-se tentar ajustar adequadamente os parâmetros do indicador para que eles se adaptem melhor ao ambiente do mercado. Por exemplo, pode-se testar diferentes ciclos de cálculo do RSI, paramétricos de ciclos suaves, para encontrar a melhor combinação de parâmetros.
Também pode ser considerado em combinação com outros indicadores auxiliares para validar o sinal, melhorar a estabilidade da estratégia. Por exemplo, pode ser adicionado o indicador de volume de transação, linha de Brin e outros indicadores para determinar a força do sinal de tendência.
A estratégia de múltiplos quadros de tempo de escala real do RSI médio inverso de Fisher é robusta, mas precisa ser otimizada para se adaptar a uma situação de mercado mais ampla. Vale a pena testar e melhorar ainda mais para torná-la uma estratégia de negociação quantitativa confiável.
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title = "Inverse Fisher RSI-MTF2", shorttitle="INRSIM2",overlay=true)
//Inputs
RSI_pm = input(5, title="RSI Main Period",minval=2)
RSI_ps = input(1, title="RSI Smooth Period",minval=0)
//Functions
IF(input)=>(exp(2*input)-1)/(exp(2*input)+1)
//RSI Calculation
raw_RSI=0.1*(rsi(close,RSI_pm)-50)
wma_RSI=wma(raw_RSI,RSI_ps)*100
IF_RSI = IF(wma_RSI)
resCustom = input(title="Timeframe", defval="1440" )
v=request.security(syminfo.tickerid, resCustom,IF_RSI)
a=v>0.8
b=v<-0.8
z=0.8
buy = crossover(v,z)
sell=crossunder(v,b)
plotshape(sell, title="sell", style=shape.triangledown,location=location.abovebar, color=red, transp=0, size=size.small)
plotshape(buy, title="buy", style=shape.triangleup,location=location.belowbar, color=green, transp=0, size=size.small)
//Strategy
golong = crossover(v,z)
goshort = crossunder(v,b)
strategy.entry("Buy",strategy.long,when = golong)
strategy.entry("Sell",strategy.short,when = goshort)