Estratégia quantitativa de curto prazo baseada em RSI e VWAP


Data de criação: 2024-01-19 14:21:15 última modificação: 2024-01-19 14:21:15
cópia: 0 Cliques: 982
1
focar em
1617
Seguidores

Estratégia quantitativa de curto prazo baseada em RSI e VWAP

Visão geral

Esta estratégia é chamada de estratégia de curto prazo RSI-VWAP. Utiliza o RSI e o VWAP como indicadores técnicos para definir um sinal de overhead e, em seguida, produzir uma decisão de compra e venda. A estratégia busca capturar o fenômeno de supercompra e supervenda do mercado em curto prazo, com o objetivo de obter lucros excedentes.

Princípio da estratégia

  1. O RSI é usado para determinar se o mercado está super-comprado ou super-vendido. Se o RSI for superior a 80 é uma zona super-comprada e inferior a 20 é uma zona super-vendida.
  2. O indicador RSI usa o VWAP em vez do preço de fechamento como fonte de dados. O VWAP reflete o preço médio de transação do dia.
  3. Quando o indicador RSI atravessa 20 acima da zona de superalimento, gera um sinal de compra. Quando o indicador RSI atravessa 80 abaixo da zona de superalimento, gera um sinal de venda.
  4. Esta estratégia é apenas sobrecarga, não sobrecarga.

Análise de vantagens

  1. O uso do VWAP como fonte de dados do RSI permite que o indicador RSI seja mais preciso no julgamento do mercado, evitando ser enganado por falsas rupturas.
  2. A redução da frequência de operações, que permite obter ganhos estáveis a longo prazo.
  3. O indicador RSI tem um parâmetro de 17, adequado para operações de linha curta.
  4. O uso de operações de linha curta, com menos transações esperadas, reduz os custos de transação e favorece a obtenção de maiores taxas de retorno.

Análise de Riscos

  1. Há um risco de excesso de adequação da estratégia quantitativa, e os resultados reais podem não coincidir com a avaliação.
  2. A única coisa que pode fazer é não aproveitar a oportunidade de cair no mercado a tempo.
  3. Os critérios de superaquecimento podem não ser adequados para todas as variedades e os parâmetros precisam ser ajustados para diferentes variedades.
  4. Qualquer indicador técnico pode produzir um sinal errado, e não é possível evitar completamente a ocorrência de perdas.

Pode-se reduzir o risco por meio de medidas como a flexibilização apropriada dos padrões de sobrecompra e sobrevenda, a confirmação de sinais em combinação com outros indicadores e o ajuste de intervalos de parâmetros.

Direção de otimização

  1. Teste o impacto de diferentes parâmetros na eficácia da estratégia, otimize o comprimento do RSI e superexplore o limiar de venda.
  2. Aumentar a estratégia de stop loss, bloquear parte do lucro por meio de stop loss móvel, stop loss de tempo, e reduzir a retirada.
  3. Filtragem de sinais em combinação com outros indicadores para melhorar a precisão do sinal.
  4. De acordo com as características de diferentes variedades, define intervalos de parâmetros independentes, para que a estratégia possa ser melhor adaptada a diferentes variedades.

Resumir

A estratégia, em geral, é uma estratégia de linha curta simples e prática. O uso do VWAP torna o cálculo do RSI mais preciso, reduzindo a frequência de operação. A estratégia é clara, fácil de entender e implementar, adequada para o início da negociação de quantificação.

Código-fonte da estratégia
/*backtest
start: 2023-12-19 00:00:00
end: 2024-01-18 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/
// © Xaviz

//#####©ÉÉÉɶN###############################################
//####*..´´´´´´,,,»ëN########################################
//###ë..´´´´´´,,,,,,''%©#####################################
//###'´´´´´´,,,,,,,'''''?¶###################################
//##o´´´´´´,,,,,,,''''''''*©#################################
//##'´´´´´,,,,,,,'''''''^^^~±################################
//#±´´´´´,,,,,,,''''''''^í/;~*©####æ%;í»~~~~;==I±N###########
//#»´´´´,,,,,,'''''''''^;////;»¶X/í~~/~~~;=~~~~~~~~*¶########
//#'´´´,,,,,,''''''''^^;////;%I^~/~~/~~~=~~~;=?;~~~~;?ë######
//©´´,,,,,,,''''''''^^~/////X~/~~/~~/~~»í~~=~~~~~~~~~~^;É####
//¶´,,,,,,,''''''''^^^;///;%;~/~~;í~~»~í?~?~~~?I/~~~~?*=íÑ###
//N,,,,,,,'''''''^^^^^///;;o/~~;;~~;£=»í»;IX/=~~~~~~^^^^'*æ##
//#í,,,,,''''''''^^^^^;;;;;o~»~~~~íX//~/»~;í?IíI»~~^/*?'''=N#
//#%,,,'''''''''^^^^^^í;;;;£;~~~//»I»/£X/X/»í*&~~~^^^^'^*~'É#
//#©,,''''''''^^^^^^^^~;;;;&/~/////*X;í;o*í»~=*?*===^'''''*£#
//##&''''''''^^^^^^^^^^~;;;;X=í~~~»;;;/~;í»~»±;^^^^^';=''''É#
//##N^''''''^^^^^^^^^^~~~;;;;/£;~~/»~~»~~///o~~^^^^''''?^',æ#
//###Ñ''''^^^^^^^^^^^~~~~~;;;;;í*X*í»;~~IX?~~^^^^/?'''''=,=##
//####X'''^^^^^^^^^^~~~~~~~~;;íííííí~~í*=~~~~Ií^'''=''''^»©##
//#####£^^^^^^^^^^^~~~~~~~~~~~íííííí~~~~~*~^^^;/''''='',,N###
//######æ~^^^^^^^^~~~~~~~~~~~~~~íííí~~~~~^*^^^'=''''?',,§####
//########&^^^^^^~~~~~~~~~~~~~~~~~~~~~~~^^=^^''=''''?,íN#####
//#########N?^^~~~~~~~~~~~~~~~~~~~~~~~~^^^=^''^?''';í@#######
//###########N*~~~~~~~~~~~~~~~~~~~~~~~^^^*'''^='''/É#########
//##############@;~~~~~~~~~~~~~~~~~~~^^~='''~?'';É###########
//#################É=~~~~~~~~~~~~~~^^^*~'''*~?§##############
//#####################N§£I/~~~~~~»*?~»o§æN##################

//@version=4
strategy("RSI-VWAP INDICATOR", overlay=false)

// ================================================================================================================================================================================
// RSI VWAP INDICATOR
// ================================================================================================================================================================================

// Initial inputs
Act_RSI_VWAP = input(true, "RSI VOLUME WEIGHTED AVERAGE PRICE")
RSI_VWAP_length = input(17, "RSI-VWAP LENGTH")
RSI_VWAP_overSold = input(19, "RSI-VWAP OVERSOLD", type=input.float)
RSI_VWAP_overBought = input(80, "RSI-VWAP OVERBOUGHT", type=input.float)

// RSI with VWAP as source
RSI_VWAP = rsi(vwap(close), RSI_VWAP_length)

// Plotting, overlay=false
r=plot(RSI_VWAP, color = RSI_VWAP > RSI_VWAP_overBought ? color.red : RSI_VWAP < RSI_VWAP_overSold ? color.lime : color.blue, title="rsi", linewidth=2, style=plot.style_line)
h1=plot(RSI_VWAP_overBought, color = color.gray, style=plot.style_stepline)
h2=plot(RSI_VWAP_overSold, color = color.gray, style=plot.style_stepline)
fill(r,h1, color = RSI_VWAP > RSI_VWAP_overBought ? color.red : na, transp = 60)
fill(r,h2, color = RSI_VWAP < RSI_VWAP_overSold ? color.lime : na, transp = 60)

// Long only Backtest
strategy.entry("Long", strategy.long, when = (crossover(RSI_VWAP, RSI_VWAP_overSold)))
strategy.close("Long", when = (crossunder(RSI_VWAP, RSI_VWAP_overBought)))