
Esta estratégia utiliza três indicadores: o índice de força relativa (RSI), a linha de tendência super (SuperTrend) e a amplitude real média (ATR) para construir uma estratégia de negociação quantitativa abrangente e prática.
O RSI é um poderoso indicador de oscilação, que mede a velocidade e intensidade da mudança de preço para determinar se o mercado está superando ou superando. Quando o RSI está abaixo da zona de sobrevenda, é um sinal de sobrevenda. Quando ele está acima da zona de sobrevenda, é um sinal de sobrevenda.
O SuperTrend é um indicador de acompanhamento de tendências que pode ser usado para identificar a direção da tendência atual. Quando o preço está acima da linha SuperTrend, ele está em uma tendência ascendente; quando o preço está abaixo da linha SuperTrend, ele está em uma tendência descendente.
O ATR é usado para medir a volatilidade do mercado e o nível de risco. Quanto mais alto o ATR, mais violento o mercado é, ao contrário, relativamente estável. Esta estratégia usa o ATR para definir o ponto de parada e a taxa de ganho-perda.
Faça mais sinais:Faça mais quando o RSI da linha rápida está abaixo do RSI da linha lenta e o preço está acima da linha SuperTrend;
Faça o sinal de saída:Quando a linha rápida RSI está acima da linha lenta RSI e o preço está abaixo da linha SuperTrend, faça um short;
Parar de perder e sair:Quando se detém um lote, se o RSI da linha rápida for maior que o RSI da linha lenta ou o preço for menor que a linha SuperTrend, a parada de perda é retirada do lote; quando se detém um lote vazio, se o RSI da linha rápida for menor que o RSI da linha lenta ou o preço for maior que a linha SuperTrend, a parada de perda é retirada do lote.
Seguimento de tendências: o SuperTrend permite identificar claramente a direção das tendências.
Confirmação de dinâmica: o RSI garante que as negociações estão em consonância com o sentimento atual do mercado;
Adaptação à oscilação: O stop loss pode ser ajustado dinamicamente com base no ATR, para se adaptar às mudanças do mercado.
Risco de desajuste de tendências: perdas ocorrem quando a probabilidade de ocorrência de uma SuperTrend não coincide com a direção da tendência real. A taxa de erro pode ser reduzida com a otimização de parâmetros.
Risco de accionar o stop-loss: o stop-loss se aproximar demais pode ser batido, a distância do stop-loss deve ser razoavelmente ajustada.
Risco de parâmetros inadequados: A configuração inadequada dos parâmetros RSI afetará a escolha do momento de negociação. Deve-se fazer uma retrospectiva suficiente para determinar os parâmetros adequados.
A estabilidade do sistema, em combinação com outros indicadores de filtragem;
Optimizar o conjunto de parâmetros do RSI com base na máxima retração;
O algoritmo de iluminação busca o melhor parâmetro de SuperTrend.
A estratégia integra indicadores de tendência, dinâmica e volatilidade, criando uma estratégia de negociação quantitativa com claridade de sinais de negociação, flexibilidade de configuração de parâmetros e controle de risco. Com o teste e a otimização contínuos, espera-se obter ganhos extras estáveis.
/*backtest
start: 2022-11-27 00:00:00
end: 2023-12-03 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("RSI, SuperTrend, and ATR Strategy", overlay=true)
// Define input parameters
rsiLength1 = input(14, title="RSI Length 1")
rsiLength2 = input(21, title="RSI Length 2")
supertrendMultiplier = input(1.5, title="SuperTrend Multiplier")
// Calculate indicators
rsi1 = ta.rsi(close, rsiLength1)
rsi2 = ta.rsi(close, rsiLength2)
supertrend = ta.atr(14) * supertrendMultiplier
// Define trading conditions
rsiLongCondition = rsi1 > rsi2
rsiShortCondition = rsi1 < rsi2
supertrendLongCondition = close > supertrend
supertrendShortCondition = close < supertrend
// Execute trades
if (rsiLongCondition and supertrendLongCondition)
strategy.entry("Long", strategy.long)
if (rsiShortCondition and supertrendShortCondition)
strategy.entry("Short", strategy.short)
if (strategy.position_size > 0 and (rsiShortCondition or supertrendShortCondition))
strategy.close("Long")
if (strategy.position_size < 0 and (rsiLongCondition or supertrendLongCondition))
strategy.close("Short")
// Plot indicators on the chart
plot(rsi1, color=color.orange, title="RSI 1")
plot(rsi2, color=color.yellow, title="RSI 2")
plot(supertrend, color=color.blue, title="SuperTrend")