Esta estratégia é chamada de
O principal indicador desta estratégia é o Relative Strength Index (RSI). O indicador RSI compara o aumento médio e diminuição ao longo de um período de tempo para determinar se o preço atual do título é superestimado ou subestimado.
RSI = 100 - 100 / (1 + UP / DOWN)
Onde UP é a amplitude média do aumento do preço de fechamento nos últimos n dias; DOWN é a amplitude média da queda do preço de fechamento nos últimos n dias. O índice oscila entre os intervalos de 0 a 100. Acima de 70 é a zona de sobrecompra e abaixo de 30 é a zona de sobrevenda.
Esta estratégia define o parâmetro RSI Length=14 para calcular o RSI com base nos preços de fechamento de 14 dias. E define a linha de sobrevenda Rsvalue=40, ou seja, o RSI abaixo de 40 é determinado como sobrevendo. Quando o RSI do dia está abaixo de 40, a janela de compra é aberta, e as posições são gradualmente construídas na área de sobrevenda, e o horário final de fechamento é definido para vender depois de exceder o horário de fechamento.
A maior vantagem desta estratégia é que, usando o indicador RSI para determinar o momento do mercado, a captura de preços baixos é realizada. Quando o RSI está abaixo de 40, é um estado de sobrevenda, o que significa que o declínio anterior foi muito grande e há uma chance de um rebote. Neste momento, gradualmente construa uma posição para obter um melhor custo. Quando o RSI está acima de 70, está em um estado de sobrecompra, o que significa que o mercado pode ter atingido o pico e as posições podem ser reduzidas.
Além disso, a estratégia adota uma abordagem gradual de construção de posições para reduzir o risco de uma única entrada.
Esta estratégia baseia-se principalmente no indicador técnico RSI, que tem algum atraso. Especialmente quando o mercado muda de repente, o RSI pode não ser capaz de reagir a tempo. Neste momento, seguir cegamente o indicador RSI para construir uma posição pode resultar em lucros limitados ou aumento das perdas.
Além disso, a estratégia fornece sinais de negociação probabilísticos. Mesmo que o RSI esteja abaixo de 40, isso não significa que haja 100% de chance de um rebote. A probabilidade de que o preço atinja uma nova baixa após a construção de uma posição também existe.
A estratégia pode ser otimizada nos seguintes domínios:
Combine várias ações para negociação de carteiras. As ações individuais são mais facilmente afetadas por eventos específicos, enquanto as carteiras podem diversificar os riscos individuais de ações.
Adicione uma estratégia de stop loss para controlar ainda mais os riscos.
Optimizar a estratégia de construção de posições, por exemplo, utilizar o preço médio ponderado pelo tempo para a construção gradual de posições no intervalo superior, em vez de estabelecer posições completas.
Combinar com outros indicadores para filtrar sinais, tais como indicadores de momento, médias móveis, etc., para evitar seguir cegamente o RSI.
Esta estratégia determina as áreas de sobrecompra e sobrevenda através da construção do indicador RSI, estabelece gradualmente posições longas na área de sobrevenda e define o tempo final de fechamento para alcançar a detenção de longo prazo. Em comparação com a negociação de curto prazo, esta estratégia é mais adequada como uma ferramenta de investimento quantitativo de longo prazo. Suas vantagens estão em capturar preços baixos e controlar custos, enquanto os riscos estão no atraso do indicador e no erro de sinal. No futuro, pode ser melhorada de muitas maneiras, como otimização de carteira, estratégias de stop loss, otimização de construção de posição.
/*backtest start: 2024-01-28 00:00:00 end: 2024-02-04 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="Relative Strength Index", shorttitle="RSI") len = input(14, minval=1, title="Length") src = input(close, "Source", type = input.source) up = rma(max(change(src), 0), len) down = rma(-min(change(src), 0), len) rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down)) plot(rsi, "RSI", color=#8E1599) band1 = hline(70, "Upper Band", color=#C0C0C0) band0 = hline(30, "Lower Band", color=#C0C0C0) fill(band1, band0, color=#9915FF, title="Background") Rsvalue = input(defval = 40, title = "RSvalue", minval = 20, maxval = 75) FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) FromYear = input(defval = 2015, title = "From Year", minval = 999) ToMonth = input(defval = 3, title = "To Month", minval = 1, maxval = 12) ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) ToYear = input(defval = 2022, title = "To Year", minval = 999) start = timestamp(FromYear, FromMonth, FromDay, 00, 00) finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) booking = timestamp(ToYear, ToMonth, ToDay, 23, 59) window() => time >= start and time <= finish ? true : false endtrade() => time >= booking ? true : false longCondition = rsi< Rsvalue if (longCondition) strategy.entry("BUY", strategy.long) strategy.close("BUY")