A estratégia baseia-se em uma média móvel simples (SMA) e um indicador relativamente forte (RSI) e, quando o valor do RSI atravessa a linha de sinal de entrada definida e o preço de fechamento está abaixo do SMA, o espaço é aberto para rastrear o stop loss ou o RSI novamente acionar o stop loss de saída. A estratégia combina o acompanhamento da tendência e o indicador de sobrevenda e sobrevenda, com o objetivo de capturar oportunidades de reversão de linha curta.
Usando o SMA (o ciclo de 200) para determinar a direção da grande tendência, uma oportunidade de baixa ocorre quando o preço está abaixo do SMA.
Usando o RSI (ciclo 14) para julgar a sobrevenda e a sobrevenda. Quando o RSI passa 51, o vendedor mostra um aumento de força e pode entrar em posição vaga.
Depois de abrir uma posição de curto prazo, use o preço de fechamento mais baixo como ponto de parada de rastreamento. Se o RSI ultrapassar 54 ou 32 abaixo, o stop loss sairá do campo.
Existem três tipos de stop loss: stop loss de preço, stop loss de RSI e stop loss de lucro.
A combinação de acompanhamento de tendências e indicadores de sobrecompra e sobrevenda pode melhorar a precisão do tempo de entrada.
O rastreamento de stop loss permite proteger os lucros de acordo com as mudanças de preço em tempo real, evitando que o stop loss fique demasiado fixo.
O trigger bidirecional do RSI pode bloquear o lucro e evitar que um rebote excessivo cause perdas.
Utiliza indicadores simples e parâmetros fixos, adequado para operações de linha curta e média, fácil de dominar.
A configuração dos parâmetros SMA e RSI pode não ser adequada para todas as variedades e períodos e precisa ser otimizada.
O custo de transação, como os slippages e as comissões, não são levados em consideração, o que afeta os lucros reais.
Os sinais podem não ser confiáveis sem levar em conta outros fatores, como volume de transações e estrutura do mercado.
A tendência é que os preços dos produtos e serviços sejam mais baixos do que os preços dos produtos e serviços, o que significa que os preços dos produtos e serviços são mais baixos.
A paralisação é relativamente rígida e não pode responder a grandes variações de mercado.
Teste e otimize os parâmetros do ciclo SMA e do RSI para encontrar a melhor combinação de parâmetros.
Considere a inclusão de indicadores de volume de transação para evitar falsas rupturas em baixos volumes.
Pode-se testar uma combinação de outros indicadores, como MACD, faixa de Bryn, etc.
Aumentar os algoritmos de aprendizagem de máquina, utilizando treinamento de dados históricos, para melhorar a precisão do sinal.
Otimizar a forma de deter os prejuízos para torná-los mais flexíveis e adaptáveis às mudanças de comportamento.
Adesão ao mecanismo de gestão de riscos para controlar as perdas individuais.
A estratégia integra os benefícios dos dois indicadores SMA e RSI para filtrar algumas oportunidades de negociação de ruído. Sua lógica de negociação simples é fácil de implementar, mas ainda precisa ser testada e otimizada para parâmetros e regras, e auxiliada por meios de gerenciamento de risco, para operar com estabilidade a longo prazo. Além disso, a combinação com outros indicadores ou algoritmos também vale a pena ser explorada para aumentar ainda mais a estabilidade da estratégia.
/*backtest
start: 2022-10-01 00:00:00
end: 2023-10-07 00:00:00
period: 2d
basePeriod: 1d
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/
// © abdllhatn
//@version=5
// strategy("Alpha Short SMA and RSI Strategy", overlay=true, initial_capital=10000, default_qty_value=100)
// Inputs
sma_length = input(200, title="SMA Length")
rsi_length = input(14, title="RSI Length")
rsi_entry = input(51, title="RSI Entry Level")
rsi_stop = input(54, title="RSI Stop Level")
rsi_take_profit = input(32, title="RSI Take Profit Level")
// Indicators
sma_value = ta.sma(close, sma_length)
rsi_value = ta.rsi(close, rsi_length)
var float trailingStop = na
var float lastLow = na
// Conditions
shortCondition = ta.crossover(rsi_value, rsi_entry) and close < sma_value
if (shortCondition)
strategy.entry("Sell", strategy.short)
trailingStop := na
lastLow := na
if (strategy.position_size < 0)
if (na(lastLow) or close < lastLow)
lastLow := close
trailingStop := close
if not na(trailingStop) and close > trailingStop
strategy.close("Sell")
if (rsi_value >= rsi_stop)
strategy.close("Sell")
if (rsi_value <= rsi_take_profit)
strategy.close("Sell")
// Plot
plot(sma_value, color=color.red, linewidth=2)