Tendência RSI-MA Seguindo a estratégia

Autora:ChaoZhang, Data: 2023-12-11 16:14:07
Tags:

img

Resumo

Esta estratégia é chamada de RSI-MA Trend Following Strategy. A ideia é usar tanto o indicador RSI quanto as linhas MA para julgar as tendências de preços e gerar sinais de negociação. Os sinais de negociação são gerados quando o indicador RSI excede os limiares superior e inferior pré-definidos, enquanto as linhas MA são usadas para filtrar sinais falsos, emitindo sinais apenas quando os preços continuam a subir ou cair. Isso permite manter um potencial de lucro decente enquanto efetivamente filtra movimentos de preços fora da faixa.

Estratégia lógica

Os principais componentes desta estratégia são o indicador RSI e as linhas MA. O RSI é usado para identificar os níveis de sobrecompra e sobrevenda, enquanto o MA é usado para determinar a direção da tendência.

  1. Calcule o valor do indicador RSI e defina o limiar superior em 90 e o limiar inferior em 10. Uma leitura do RSI acima de 90 significa um sinal de sobrecompra, enquanto uma leitura abaixo de 10 significa um sinal de sobrevenda.

  2. Calcule a linha MA de um determinado período (por exemplo, 4 dias). Quando os preços estão aumentando continuamente, a linha MA inclina para cima. Quando os preços estão caindo continuamente, a linha MA inclina para baixo.

  3. Quando o RSI exceder 90 e a linha MA inclinar para cima, vá curto.

  4. Estabelecer um stop loss num número fixo de pontos por contrato e obter um lucro numa percentagem fixa por contrato.

Análise das vantagens

Esta estratégia combina os filtros duplos do indicador RSI e das linhas MA, que podem efetivamente filtrar sinais falsos sob movimentos de preço de faixa. Enquanto isso, as configurações do RSI evitam sinais atrasados e mantêm um potencial de lucro decente. Usar o MA para determinar a direcionalidade da tendência impede a negociação contra a tendência. Além disso, a estratégia tem parâmetros simples que são fáceis de compreender e otimizar.

Análise de riscos

Os principais riscos desta estratégia incluem:

  1. Os eventos repentinos que causam picos acentuados dos preços podem não ser refletidos em tempo útil nas leituras do RSI e do MA, levando a perdas maiores.

  2. No caso dos mercados de intervalo, o RSI e o MA podem emitir frequentemente sinais, resultando em negociações excessivamente frequentes que aumentam os custos de transação e o deslizamento.

  3. Configurações de parâmetros inadequadas também podem afetar o desempenho da estratégia. Por exemplo, os limiares superiores/inferiores do RSI definidos muito largos levam a atrasos no sinal, enquanto os limiares definidos muito estreitos levam a sinais muito frequentes.

Orientações de otimização

Os domínios para uma melhor otimização incluem:

  1. Testar e otimizar parâmetros em diferentes produtos e prazos para encontrar as combinações ótimas de parâmetros.

  2. Incorporar outros indicadores ao lado do RSI/MA, tais como KDJ, BOLL, etc., para definir filtros de sinal mais rigorosos e reduzir os falsos sinais.

  3. Construir mecanismos adaptativos de stop loss/take profit baseados na volatilidade e no ATR para ajustar dinamicamente os níveis de preços.

  4. Adicionar algoritmos de aprendizagem de máquina para ajustar automaticamente parâmetros com base nas condições de mercado em mudança, realizando otimização de parâmetros dinâmicos.

Conclusão

No geral, esta estratégia RSI-MA é bastante simples e prática, combinando elementos de tendência seguindo e análise de sobrecompra/supervenda.


/*backtest
start: 2023-11-10 00:00:00
end: 2023-12-10 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
//This strategy is best used with the Chrome Extension AutoView for automating TradingView alerts.
//You can get the AutoView extension for FREE using the following link
//https://chrome.google.com/webstore/detail/autoview/okdhadoplaoehmeldlpakhpekjcpljmb?utm_source=chrome-app-launcher-info-dialog
strategy("4All", shorttitle="Strategy", overlay=false)

src = close
len = input(4, minval=1, title="Length")

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, color=purple)
band1 = hline(90)
band0 = hline(10)
fill(band1, band0, color=purple, transp=90)

rsin = input(5)
sn = 100 - rsin
ln = 0 + rsin

short = crossover(rsi, sn)
long = crossunder(rsi, ln)

strategy.entry("long", strategy.long, when=long)
strategy.entry("short", strategy.short, when=short)

TP = input(15) * 10
SL = input(23) * 10
TS = input(0) * 10
CQ = 100

TPP = (TP > 0) ? TP : na
SLP = (SL > 0) ? SL : na
TSP = (TS > 0) ? TS : na

strategy.exit("Close Long", "long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)
strategy.exit("Close Short", "short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)

Mais.