Estratégia de negociação de RSI de dois andares

Autora:ChaoZhang, Data: 2024-01-30 15:21:47
Tags:

img

Resumo

A estratégia de negociação RSI Double Decker é uma estratégia quantitativa de negociação baseada no Relative Strength Index (RSI). Esta estratégia utiliza RSI rápido e lento como sinais de negociação para alcançar a confirmação dupla e visa melhorar a qualidade do sinal e filtrar sinais falsos.

Estratégia lógica

Esta estratégia emprega dois RSI com períodos diferentes como os principais indicadores de negociação. O RSI rápido tem um período de 5 dias e é usado para capturar situações de sobrecompra e sobrevenda de curto prazo. O RSI lento tem um período de 14 dias e é usado para determinar a tendência de médio a longo prazo e os principais níveis de suporte / resistência.

As regras específicas de negociação são:

  1. Quando o RSI rápido cruza acima de 70 e o RSI lento está acima de 50, vá longo. Quando o RSI rápido cruza abaixo de 30 e o RSI lento está abaixo de 50, vá curto.

  2. O stop loss para posições longas é quando o RSI rápido cruza abaixo de 55.

Ao combinar RSI rápido e lento, esta estratégia alcança complementaridade entre diferentes prazos e pode identificar efetivamente condições de sobrecompra/supervenda, confirmando a tendência de médio a longo prazo, gerando assim sinais de negociação de alta qualidade.

Análise das vantagens

A maior vantagem da estratégia Double Decker RSI é que ela pode efetivamente filtrar sinais falsos e melhorar a qualidade do sinal, reduzindo assim as negociações desnecessárias e reduzindo a frequência de negociação.

  1. A combinação de RSI rápido e lento identifica pontos de sobrecompra/supervenda de curto, médio e longo prazo, melhorando a precisão do sinal.

  2. O mecanismo de filtro duplo RSI reduz efetivamente o ruído e evita ficar preso.

  3. A baixa frequência de negociação ajuda a reduzir os custos de transação e a perda de deslizamento.

  4. O mecanismo de stop loss controla a perda única e o drawdown máximo.

Análise de riscos

A estratégia RSI de dois andares comporta também certos riscos, principalmente dos seguintes aspectos:

  1. A própria natureza retardada do RSI pode causar atrasos nas transacções.

  2. O mecanismo de duplo filtro pode perder algumas oportunidades comerciais.

  3. Não pode evitar completamente os riscos sistémicos em condições de mercado extremas.

Os seguintes métodos podem ser utilizados para mitigar os riscos acima referidos:

  1. Ajustar adequadamente os parâmetros do RSI rápido para aumentar a sensibilidade.

  2. Otimizar as condições de entrada e stop loss para equilibrar o risco e o retorno.

  3. Utilização em combinação com sistemas de seguimento de tendências, algoritmos de aprendizagem de máquina, etc.

Orientações de otimização

A estratégia RSI Double Decker ainda pode ser melhorada, principalmente nas seguintes direcções:

  1. Optimização dinâmica dos parâmetros do RSI para ajustá-los automaticamente com base nas condições do mercado.

  2. Adicionar um módulo de controlo de risco baseado na volatilidade.

  3. Incorporar sinais alternativos como mineração de texto, dados sociais, etc.

  4. Usar modelos de aprendizagem de máquina para ajudar a filtrar sinais.

Através das otimizações acima referidas, a rentabilidade, a robustez e a adaptabilidade da estratégia podem ser ainda melhoradas.

Conclusão

Em geral, a estratégia Double Decker RSI é uma estratégia quantitativa de negociação muito prática. Combina rastreamento de tendências, identificação de sobrecompra / sobrevenda e mecanismos de filtragem dupla para formar um sistema de negociação relativamente completo. Esta estratégia tem um desempenho notável no controle do risco e na redução da frequência de negociação, tornando-a adequada para a detenção de médio a longo prazo. Com otimização e iteração contínuas, a estratégia Double Decker RSI tem o potencial de se tornar um componente importante das estratégias quantitativas de próxima geração.


/*backtest
start: 2023-12-30 00:00:00
end: 2024-01-29 00:00:00
period: 1h
basePeriod: 15m
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/
// © Ankit_Quant
//@version=4

// ********************************************************************************************************
// This was coded live during webinar on Backtesting in Tradingview 
// That was held on 16-Jan-21
// Aim of this strategy is to code a Double Decker RSI Strategy - Rules of Strategy are given in Description
// *********************************************************************************************************

// Identifier of strategy or an indicator (study())
strategy(title="Strategy- Double Decker RSI",shorttitle='Strategy - Double Decker RSI',overlay=true)

// ********************
// INPUTS
// ********************
// RSI Lookback Periods
slowRSI=input(defval=14,title='Slow RSI Period',type=input.integer)
fastRSI=input(defval=5,title='Fast RSI Period',type=input.integer)

// Time Period Backtesting Input
start_year=input(defval=2000,title='Backtest Start Year',type=input.integer)
end_year=input(defval=2021,title='Backtest End Year',type=input.integer)

//Specific Years to Test Starategy
timeFilter=true


// Trade Conditions and signals
long = rsi(close,fastRSI)>70 and rsi(close,slowRSI)>50
short = rsi(close,fastRSI)<40 and rsi(close,slowRSI)<50
long_exit=rsi(close,fastRSI)<55
short_exit=rsi(close,fastRSI)>45

//positionSize - 1 Unit (also default setting)
positionSize=1

// Trade Firing - Entries and Exits 
if(timeFilter)
    if(long and strategy.position_size<=0)
        strategy.entry(id='Long',long=strategy.long,qty=positionSize)
    if(short and strategy.position_size>=0)
        strategy.entry(id="Short",long=strategy.short,qty=positionSize)
    if(long_exit and strategy.position_size>0)
        strategy.close_all(comment='Ex')
    if(short_exit and strategy.position_size<0)
        strategy.close_all(comment='Ex')


// Plot on Charts the Buy Sell Labels
plotshape(strategy.position_size<1 and long,style=shape.labelup,location=location.belowbar,color=color.green,size=size.tiny,text='Long',textcolor=color.white)
plotshape(strategy.position_size>-1 and short,style=shape.labeldown,location=location.abovebar,color=color.red,size=size.tiny,text='Short',textcolor=color.white)
plotshape(strategy.position_size<0 and short_exit?1:0,style=shape.labelup,location=location.belowbar,color=color.maroon,size=size.tiny,text='ExShort',textcolor=color.white)
plotshape(strategy.position_size>0 and long_exit?1:0,style=shape.labeldown,location=location.abovebar,color=color.olive,size=size.tiny,text='ExLong',textcolor=color.white)



Mais.