Estratégia de negociação quantitativa baseada no indicador RSI


Data de criação: 2023-11-27 16:02:14 última modificação: 2023-11-27 16:02:14
cópia: 1 Cliques: 660
1
focar em
1617
Seguidores

Estratégia de negociação quantitativa baseada no indicador RSI

Visão geral da estratégia

Esta estratégia é chamada de estratégia de rastreamento de RSI do Plan B. A estratégia usa o índice de força relativa (RSI) como principal indicador técnico para definir sinais de compra e venda e automatizar a negociação.

Princípio da estratégia

A estratégia baseia-se principalmente nos seguintes princípios:

  1. Se o RSI tiver atingido mais de 90% nos últimos 6 meses e caído para menos de 65%, um sinal de venda é gerado.

  2. Um sinal de compra é gerado se o RSI estiver abaixo de 50% nos últimos 6 meses e tiver uma reversão de mais de 2% a partir do mínimo.

A lógica da venda condicional é a seguinte:

如果(过去6个月RSI指数最大值>90% 且 当前RSI<65%)
   则卖出

A lógica de avaliação das condições é:

如果(过去6个月RSI指数最小值<50% 且 RSI指数从最低点反弹>2%)
  则买入

As regras de compra e venda acima são de um artigo do PlanB, um especialista em estratégias de quantificação que se dedica a replicar os resultados de seus estudos para que mais traders possam verificar a eficácia dessa estratégia de negociação.

Vantagens estratégicas

A estratégia de negociação tem as seguintes vantagens:

  1. O uso de um indicador RSI relativamente simples como único indicador técnico reduz a complexidade da estratégia.

  2. As regras de compra e venda são claras, fáceis de entender e fáceis de verificar.

  3. Os sinais de compra e venda são tomados em consideração com base na informação de queda e queda do mercado. Os sinais de venda são tomados em consideração com base nos pontos altos do indicador de longo prazo e os ajustamentos de curto prazo. Os sinais de compra são tomados em consideração com base nos pontos baixos do indicador de longo prazo e os rebotes de curto prazo.

  4. A estratégia é baseada no conhecido estudo PlanB, que serve como uma verificação independente das conclusões de seu artigo.

  5. Como uma estratégia para iniciantes, as regras são relativamente simples e fáceis de usar, o que facilita o desenvolvimento de habilidades de negociação quantitativa.

Risco estratégico

A estratégia de negociação também traz alguns riscos principais:

  1. Como uma estratégia baseada em um único indicador técnico RSI, não é capaz de lidar com situações de mercado mais complexas. O indicador RSI em si também pode produzir sinais enganosos.

  2. Os parâmetros fixos de compra e venda podem perder algumas oportunidades de negociação ou gerar atrasos nos sinais de negociação. Os parâmetros precisam ser otimizados para se adaptar a diferentes ciclos de mercado.

  3. A estratégia de seguir as conclusões do artigo do PlanB de forma muito simples, sem considerar a otimização de modelos independentes, pode levar a uma má eficácia de negociação em disco rígido.

  4. A regra de compra e venda é relativamente frouxa, sem a combinação de stop loss e stop-loss para garantir o lucro e controlar o risco. Isso pode causar grandes perdas em mercados reais.

Otimizar a estratégia pode reduzir o risco e melhorar o desempenho do banco real:

  1. Aumentar o julgamento de sub-indicadores para evitar a indução do RSI;
  2. Optimizar a configuração de parâmetros para adaptar-se a diferentes características de ciclo;
  3. Aumentar os mecanismos de prevenção de danos e controlar os riscos;
  4. Combinação de dados independentes para treinar parâmetros de estratégia e garantir a robustez dos parâmetros.

Direção de otimização da estratégia

Para melhorar o desempenho da estratégia no disco real, pode-se otimizar a partir das seguintes dimensões:

  1. Aumentar a avaliação de sub-indicadores: Dependendo apenas do indicador RSI, é fácil gerar sinais enganosos. Pode-se introduzir indicadores secundários, como KD, MACD, etc., para um julgamento integrado, aumentando a precisão do sinal.

  2. Optimização de parâmetros dinâmicosA introdução do módulo de otimização de parâmetros dinâmicos, que ajusta os parâmetros em tempo real, pode melhorar significativamente o desempenho da estratégia.

  3. Mecanismo de parada/paragemA estratégia atualmente não tem paradas de perda definidas. A adição de paradas de perda como paradas de rastreamento, bem como paradas móveis, podem controlar efetivamente as perdas individuais e bloquear os lucros.

  4. Treinamento de parâmetros independentes: Usar diretamente os parâmetros do artigo do PlanB, sem verificação independente. ■ Aplicar métodos como aprendizado de máquina para treinar o melhor conjunto de parâmetros com base em dados históricos.

  5. Otimização de combinação de cópiasA combinação de várias estratégias semelhantes simples pode aumentar a estabilidade e os ganhos globais e reduzir o risco de uma única estratégia.

Resumir

Esta estratégia segue o conceito de design do artigo clássico do PlanB, usando o indicador RSI para construir uma estratégia de negociação quantitativa mais simples. A vantagem da estratégia é que as regras são claras, fáceis de implementar e adequadas para o aprendizado de introdução à quantificação.

Código-fonte da estratégia
/*backtest
start: 2022-11-20 00:00:00
end: 2023-11-26 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © fillippone

//@version=4

strategy("PlanB Quant Investing 101", shorttitle="PlanB RSI Strategy", overlay=true,calc_on_every_tick=false,pyramiding=0, default_qty_type=strategy.cash,default_qty_value=1000, currency=currency.USD, initial_capital=1000,commission_type=strategy.commission.percent, commission_value=0.0)


r=rsi(close,14)

//SELL CONDITION
//RSI was above 90% last six months AND drops below 65%

//RSI above 90% last six month

selllevel = input(90)
maxrsi = highest(rsi(close,14),6)[1]

rsisell = maxrsi > selllevel 


//RSIdrops below 65%
drop = input(65)

rsidrop= r < drop

//sellsignal
sellsignal = rsisell and rsidrop 


//BUY CONDITION
//IF (RSI was below 50% last six months AND jumps +2% from the low) THEN buy, ELSE hold.

//RSI was below 50% last six months

buylevel = input(50)
minrsi = lowest(rsi(close,14),6)[1]

rsibuy = minrsi < buylevel 

//IF (RSI jumps +2% from the low) THEN buy, ELSE hold.


rsibounce= r > (minrsi + 2)

//buysignal=buyrsi AND rsidrop

//buysignal

buysignal = rsibuy and rsibounce 

//Strategy

strategy.entry("Buy Signal",strategy.long, when = buysignal)
strategy.entry("Sell Signal",strategy.short, when = sellsignal)