Estratégia do índice de força relativa

Autora:ChaoZhang, Data: 2023-09-08 16:10:13
Tags:

Este script é escrito em Pine Script para a plataforma TradingView e implementa uma simples estratégia RSI (Relative Strength Index) para negociar o par Litecoin (LTC) para USDT na exchange Binance usando um gráfico de 5 minutos.

A seguir, uma breve explicação desta estratégia:

Parâmetros:

  • Duração do RSI: 3, o que significa que calcula o RSI com base nos últimos 3 períodos.
  • Nível de sobrevenda do RSI: 47, o que significa que considera o mercado sobrevendo (uma potencial oportunidade de compra) quando o RSI cai abaixo de 47.
  • Nível de sobrecompra do RSI: 56, o que significa que considera o mercado sobrecomprado (uma potencial oportunidade de venda) quando o RSI sobe acima de 56.

Operações:

  • Se o RSI ultrapassar o nível de sobrevenda, a estratégia entra numa posição longa (compra).
  • Se o RSI cruzar abaixo do nível de sobrecompra, a estratégia entra numa posição curta (vende).

Este backtest em particular resultou num lucro de 391%, executado em mais de 2400 transacções, com uma taxa de rentabilidade de 42%, um drawdown de 14,6% e um rácio Sharpe de 0,65.

No entanto, é importante lembrar que o desempenho passado não garante resultados futuros.O autor também sugere que sejam adicionados filtros adicionais a esta estratégia para melhorar o seu desempenho.


/*backtest
start: 2022-09-01 00:00:00
end: 2023-08-14 05:20:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("QuantNomad - RSI Strategy - LTCUSDT - 5m", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)

length     = input(3)
overSold   = input(47)
overBought = input(56)

price = close

// 
// author: QuantNomad
// date: 2019-06-06
// RSI Strategy - LTCUSDT - 5m
// https://www.tradingview.com/u/QuantNomad/
// https://t.me/quantnomad
//

vrsi = rsi(price, length)

if (not na(vrsi))
    if (crossover(vrsi, overSold))
        strategy.entry("RsiLE", strategy.long, comment="RsiLE")
    if (crossunder(vrsi, overBought))
        strategy.entry("RsiSE", strategy.short, comment="RsiSE")

//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)

Mais.