A estratégia de negociação do indicador avançado do RSI do S&P500 é uma estratégia de médio a longo prazo de tendência para a negociação do índice S&P500. Esta estratégia combina vários filtros com sinais de sobrecompra e sobrevenda do RSI para controlar o risco e reduzir os falsos sinais.
O indicador central desta estratégia é o RSI, usando o RSI de 2 períodos para determinar os níveis de sobrecompra e sobrevenda de preços.
Filtro semanal do RSI: Requer que o RSI semanal esteja abaixo de um limiar para evitar compras longas excessivamente agressivas em um mercado de alta.
Filtro MA: Requer que o preço esteja acima de um determinado período MA para garantir a entrada após o início de uma tendência de alta.
Filtro RSI secundário: Requer que o indicador RSI secundário também caia abaixo da linha de sobrevenda para evitar falsos breakouts.
ATR Breakout Filter: Evita ir muito tempo após uma queda acentuada do preço para controlar o risco.
A combinação destes múltiplos filtros pode identificar eficazmente pontos de reversão de preços a médio e longo prazo, controlar a frequência das trocas e reduzir o risco.
A estratégia de negociação do indicador S&P500 Advanced RSI tem as seguintes vantagens:
A combinação de múltiplos indicadores auxiliares reduz os falsos sinais e melhora a fiabilidade.
O filtro de fuga ATR controla o risco evitando comprar após uma queda de preços.
O filtro semanal do RSI evita compras longas agressivas em um mercado de alta.
O filtro MA garante a entrada após o início de uma tendência de alta.
O filtro secundário de RSI evita falhas de RSI.
Adequado para a detenção a médio e longo prazos e evita o excesso de negociação.
Os principais riscos desta estratégia são os seguintes:
RSI como o principal indicador tem algum atraso.
As condições de filtragem podem ser demasiado rigorosas e perder oportunidades.
O stop loss pode ser retirado durante falhas de flash.
Os RSI simples e os filtros têm capacidades limitadas em condições de mercado complexas.
Mitigações correspondentes:
Ajustar parâmetros para evitar trocas perdidas.
Aumentar o tamanho das posições para explicar alguns negócios perdidos.
Relaxar moderadamente as condições do filtro para aumentar a frequência de troca.
Considere a combinação de mais indicadores para uma análise complexa do mercado.
A estratégia pode ser melhorada nas seguintes direcções:
Teste ajustando os parâmetros do RSI para encontrar linhas de sobrecompra/supervenda ideais.
Ensaiar os parâmetros do período de MA para determinar os valores ideais.
Teste ajustando os parâmetros ATR para otimizar os filtros de desvio de preços.
Tente combinar outros indicadores para uma melhor análise de mercados complexos.
Otimizar parâmetros semanais do RSI para encontrar configurações ideais.
Otimizar os parâmetros secundários do RSI, incluindo o período e as linhas sobrecompradas/supervendidas.
O S&P500 Advanced RSI Indicator Trading Strategy identifica pontos de reversão de tendência de médio a longo prazo usando o RSI e várias condições de filtro para controlar o risco. Utiliza os pontos fortes do RSI de forma eficaz para bloquear tendências de médio / longo prazo e evitar overtrading. À medida que os parâmetros continuam a ser otimizados, o desempenho da estratégia pode continuar a melhorar.
/*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")