Esta estratégia projeta um sistema de negociação de longo prazo baseado no indicador Relative Strength Index (RSI).
A estratégia baseia-se principalmente no indicador RSI para gerar sinais de negociação. O RSI calcula a proporção de dias de alta versus dias de baixa em um período para refletir situações de sobrecompra e sobrevenda.
Especificamente, a estratégia define vários parâmetros do RSI para gerar sinais de negociação:
Após o cálculo dos valores do RSI, a estratégia gera sinais de negociação como se segue:
Ao definir várias faixas do RSI para capturar cruz de ouro e cruz morta entre zonas de sobrecompra e sobrevenda, ele realiza a tendência seguinte.
A estratégia de tendência do RSI tem várias vantagens:
Há alguns riscos a considerar para esta estratégia:
Estes podem ser mitigados através da otimização dos períodos RSI, combinando com médias móveis, definindo o stop loss adequado, etc.
Algumas formas de otimizar ainda mais a estratégia:
A estratégia constrói um sistema de tendência simples com indicador técnico RSI configurável. A lógica é clara e fácil de entender, os parâmetros ajustáveis com base nas necessidades. Mas há alguns riscos a serem conscientes. Grande espaço para otimizações combinando com outros indicadores ou introduzindo novas técnicas como aprendizagem de máquina. No geral, fornece uma abordagem eficiente e flexível para a negociação quantitativa e vale a pena mais pesquisa e aplicação.
/*backtest start: 2023-09-06 00:00:00 end: 2023-10-06 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version= 4 // https://sauciusfinance.altervista.org, another trading idea, suggested by the fact that RSI tends to accompany the trend strategy(title="Pure RSI long only", overlay = true, max_bars_back=500) // INPUTS rsi_low = input(30, title ="RSI lower band", minval=5, step = 1) rsi_middle = input(55, title ="RSI middle band", minval=10, step = 1) rsi_mhigh = input(60, title ="RSI middle high", minval=20, step = 1) rsi_high = input(70, title ="RSI high", minval=30, step = 1) rsi_top = input(75, title ="RSI top", minval=30, step = 1) rsi_period = input(14, title="RSI period", minval = 1, step = 1) // CALCULATIONS myrsi = rsi(close, rsi_period) /// Entry: when RSI rises from the bottom or, after a retracement, it overcomes again the middle level of 50 strategy.entry("Long", true, when = crossover(myrsi,rsi_low)) strategy.entry("Long", true, when = crossover(myrsi,rsi_middle)) /// EXITS: when RSI crosses under the initial bottom level (stop loss) or undergoes one of the next 3 steps : 50, 60, 70 or it's simply // higher than 70 // you may test viceversa for short, adding level of 40 strategy.close("Long", when = crossunder(myrsi, rsi_low), comment="low") strategy.close("Long", when = crossunder(myrsi, rsi_middle), comment="middle") strategy.close("Long", when = crossunder(myrsi, rsi_mhigh), comment="middle-hi") strategy.close("Long", when = crossunder(myrsi, rsi_high), comment="high") strategy.close("Long", when = (myrsi>rsi_top), comment="top") plotchar(myrsi, title = "myrsi", char='+', color=color.black) // CONCLUSION: this system give notable results related to MA & RSI trading system and it's a good alternative. The best is making // roboadvisoring by working this two system togheter, i.e. watching both MA and levels of RSI together (you may also enter if RSI // crosses over 30 and then wait for a confirm in MA)