Estratégia avançada de negociação do indicador RSI


Data de criação: 2024-02-06 11:47:59 última modificação: 2024-02-06 11:47:59
cópia: 7 Cliques: 788
1
focar em
1617
Seguidores

Estratégia avançada de negociação do indicador RSI

Visão geral

O S&P 500 Advanced RSI Indicator Trading Strategy é uma estratégia de acompanhamento de tendências de médio e longo prazo para o índice S&P 500. A estratégia combina vários filtros para negociar com base em sinais de sobrevenda do RSI para controlar o risco e reduzir os falsos sinais.

Princípio da estratégia

O indicador central da estratégia é o RSI, baseado no valor do RSI de 2 ciclos para determinar o preço de compra e venda. Faça uma oferta quando o indicador RSI estiver abaixo da linha de venda superior definida e uma oferta baixa quando o indicador RSI estiver acima da linha de venda superior definida. Além disso, a estratégia também possui uma série de filtros auxiliares para controle de risco:

  1. Filtro de RSI semanal: exige que o RSI semanal esteja abaixo da linha de ajuste para evitar excessos excessivamente radicais em um mercado de touros

  2. Filtros de MA: exigem que o preço seja superior ao MA do período especificado, garantindo que a compra seja feita somente após o início da tendência

  3. Filtros de RSI secundários: exigem que o RSI secundário também esteja abaixo da linha de venda, para evitar falsas rupturas

  4. ATR supera filtro: evita queda rápida de preços e controla riscos

A combinação de vários filtros acima permite identificar de forma eficaz os pontos de reversão da linha média do preço, controlar a frequência de negociação e reduzir o risco.

Análise de vantagens

A estratégia de negociação do indicador RSI superior do S&P 500 tem as seguintes vantagens:

  1. Combinação de vários filtros de indicadores auxiliares, redução de falsos sinais, maior confiabilidade

  2. Controle de risco através de filtros de ruptura de ATR para evitar a aquisição após queda acentuada dos preços

  3. O filtro de RSI semanal evita a compra em um mercado de alta, para evitar o exagero

  4. Os filtros MA exigem que os preços sejam mais altos do que a linha média de tendência para garantir a entrada após a tendência

  5. O filtro de RSI secundário evita que o indicador de RSI produza falsas rupturas

  6. Aplica-se a posições médias e longas, não é negociado com muita frequência

Análise de Riscos

Os principais riscos dessa estratégia são os seguintes:

  1. Usando o RSI como principal indicador, há um certo atraso.

  2. Os requisitos de filtragem são muito rígidos e podem fazer com que você perca algumas oportunidades.

  3. Em casos extremos, a condição de stop loss pode ser ultrapassada.

  4. Fraca capacidade de julgamento de situações complexas com base em simples indicadores e filtros RSI

Os métodos de mitigação correspondentes são os seguintes:

  1. Ajustar os parâmetros adequadamente para evitar oportunidades perdidas

  2. Aumentar o tamanho das posições para compensar uma certa probabilidade de falta de compra

  3. Condições de filtragem devidamente relaxadas para aumentar a frequência de transações

  4. Consideração de mais indicadores para julgar situações complexas

Direção de otimização

A estratégia pode ser melhorada em várias direções:

  1. Teste para ajustar os parâmetros do RSI e encontrar a melhor linha de sobrevenda

  2. Testar os parâmetros de ciclo de MA para determinar o parâmetro ideal

  3. Teste de ajuste de parâmetros ATR para otimizar o preço para quebrar o julgamento filtrado

  4. Tente combinar outros indicadores para melhorar a sua capacidade de discernimento em situações complexas

  5. Optimizar os parâmetros do RSI semanal para determinar o melhor parâmetro do RSI semanal

  6. Optimizar os parâmetros do RSI secundário para encontrar o melhor ciclo do RSI secundário e a linha de sobrevenda

Resumir

A estratégia de negociação do indicador RSI superior do S&P 500 determina o ponto de reversão da tendência da linha média do preço através do indicador RSI e configura vários riscos de controle de condições de filtro. A estratégia aproveita ao máximo a eficácia do indicador RSI para bloquear efetivamente a tendência da linha média e evitar a entrada excessiva.

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

//@version=5
// Lets connect on LinkedIn (https://www.linkedin.com/in/lets-grow-with-quality/)
// Optimized for S&P500 Daily. Use it as a buy confirmation on certain levels (Springs, Pullbacks, ...) or let it run 
// without "Weekly RSI Filter" and pyramiding for 4 x more trades.
// This strategy is optimized for minimum drawdowns and has several filters on board for use on different securities

strategy("S&P500 RSI2 Studio", overlay=true)

baseLength = input(2, title="Base RSI Length")
overSold = input(10, title="Overbought Level")
overBought = input(90, title="Oversold Level")
overBoughtExit = input(70, title="Overbought Level Exit")
enableWeeklyRsiFilter = input(true, title="Enable Weekly RSI Filter")
weeklyOverSold = input(30, title="Weekly Oversold Level")
weeklyOverBought = input(70, title="Weekly OverOverbought Level")
weeklyRsiLength = input(2, title="weeklyRsiLength")

enableWmaFilter = input(false, title="Enable MA Filter")
wmaLength = input(100, title="WMA Length")

exitRsiLength = input(4, title="Exit RSI Length")
dailyRsiLength = input(4, title="Daily RSI Length")

enable2ndRSIFilter = input(false, title="Enable 2nd RSI Filter")
SecRSIFilterLengh = input(14, title="2nd RSI Filter Length")
SecRSIFilterOverSold = input(20, title="2nd RSI Filter Oversold Level")

enableAtrFilter = input(true, title="Enable ATR Filter")
numAtrDays = input(14, title="Number of Days ATR Average")
atrFilterFactor = input(2, title="ATR Filter Factor")

weeklyRsi = request.security(syminfo.tickerid, "W", ta.wma(ta.rsi(close, weeklyRsiLength), 1))
exitRsi = request.security(syminfo.tickerid, "D", ta.wma(ta.rsi(close, exitRsiLength), 2))
dailyRsi = request.security(syminfo.tickerid, "D", ta.wma(ta.rsi(close, dailyRsiLength), 2))
price = close

priceDropCondition = ta.atr(1) >= ta.atr(numAtrDays) * atrFilterFactor
preventEarlyEntry = not priceDropCondition

vrsi = ta.wma(ta.rsi(price, baseLength), 2)
wma = ta.wma(price, wmaLength)


buyCond1 = ta.crossunder(vrsi, overSold)
buyCond2 = enableWeeklyRsiFilter ? weeklyRsi < weeklyOverSold : true
buyCond3 = enable2ndRSIFilter ? ta.wma(ta.rsi(close, SecRSIFilterLengh),2) < SecRSIFilterOverSold : true
buyCond4 = enableWmaFilter ? price > ta.wma(close, wmaLength) : true
buyCond5 = enableAtrFilter ? preventEarlyEntry : true
 
buy = buyCond1 and buyCond2 and buyCond3 and buyCond4 and buyCond5

if (not na(vrsi))
    if buy 
        strategy.entry("RSI2 Studio", strategy.long, comment="Long")

if (exitRsi > overBoughtExit)
    strategy.close("RSI2 Studio", comment="Close Long")