
Esta estratégia é uma melhoria do indicador RSI clássico, que define uma linha de alerta de compra e venda, e executa uma compra ou venda correspondente quando o indicador RSI quebra a linha de alerta. Além disso, a estratégia também oferece uma função de troca de posição curta e longa.
A estratégia utiliza o histograma do indicador RSI para desencadear um sinal de compra ou venda.
(1) Calcule o valor do RSI com a fórmula:
RSIMain = (rsi(xPrice, RSIPeriod) - 50) * RSIHistoModify
Entre eles, xPrice é a sequência de preços, RSIPeriod é o parâmetro para calcular o RSI, e RSIHistoModify é um fator de escala para o valor do RSI.
(2) Configurar BuyAlertLevel e SellAlertLevel. Quando o indicador RSI está acima da linha de alerta de compra, é um sinal de compra, quando está abaixo da linha de alerta de venda, é um sinal de venda.
(3) Histograma do RSI, visualização de sinais de compra e venda.
(4) Configurar posições pos, quando o sinal é acionado, configurar as posições pos como 1 (fazer mais) ou - 1 (fazer menos) e pode optar por negociar para a frente ou para trás.
(5) Direção e preço de entrada, de acordo com o valor dos pos.
(1) Melhorias na utilização do RSI para mostrar mais claramente os sinais de compra e venda.
(2) Parâmetros personalizáveis, ajustando o indicador RSI e a linha de alerta para adaptar-se a diferentes mercados.
(3) Histogramas que mostram os sinais de compra e venda.
(4) Opção de negociação para a frente ou para trás.
(5) A estratégia é simples e clara, fácil de entender e modificar.
(1) É fácil de produzir sinais errôneos, o indicador RSI em si é fácil de produzir sinais errôneos.
(2) Não considerar o stop loss, pode haver um risco de perda maior.
(3) A configuração incorreta dos parâmetros também pode causar falhas.
(1) Combinação com outros indicadores de filtragem de sinais para evitar sinais errados. Por exemplo, considerar a ruptura de volume de transação.
(2) Configurar um mecanismo de parada.
(3) Optimização de parâmetros para encontrar o melhor parâmetro.
(4) Considere a possibilidade de combinar com a aprendizagem de máquina, usando algoritmos para encontrar automaticamente o melhor parâmetro.
Esta estratégia tem uma maior praticidade em comparação com o indicador RSI original. Mas também existe um certo risco, que precisa de melhorias de otimização, em combinação com outros indicadores técnicos e de parada para reduzir o risco. A estratégia é simples e adequada para os iniciantes em quantificar o aprendizado e a prática de negociação.
/*backtest
start: 2022-12-22 00:00:00
end: 2023-12-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 22/12/2016
// This simple indicator modified RSI
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="RSI HistoAlert Strategy")
RSIPeriod = input(13, minval=1)
BuyAlertLevel = input(-10)
SellAlertLevel = input(10)
RSIHistoModify = input(1.5)
reverse = input(false, title="Trade reverse")
hline(0, color=purple, linestyle=line)
hline(BuyAlertLevel, color=green)
hline(SellAlertLevel, color=red)
xPrice = close
RSIMain = (rsi(xPrice, RSIPeriod) - 50) * RSIHistoModify
rsiHcolor = iff(RSIMain >= 0 , green,
iff(RSIMain < 0, red, black))
pos = iff(RSIMain > BuyAlertLevel, 1,
iff(RSIMain < SellAlertLevel, -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(RSIMain, color=blue, title="RSI HistoAlert")
plot(RSIMain, color=rsiHcolor, title="Histogram", style = histogram, linewidth = 1)