A estratégia
A estratégia utiliza uma combinação de indicadores técnicos e parâmetros bem definidos para orientar os operadores através das flutuações do mercado.
A estratégia desencadeia uma entrada de posição curta quando a mudança porcentual global cruza acima de um valor de recuperação predefinido. Esta condição de cruzamento atua como um sinal robusto para identificar pontos de reversão potenciais durante as recuperações de preços. Os traders podem alavancar esse sinal para iniciar posições curtas, posicionando-se estrategicamente em antecipação de uma desaceleração.
Para proteger contra movimentos adversos do mercado, a estratégia incorpora um meticuloso sistema de gestão de riscos.
Uma vez que uma posição curta é inserida, os níveis de stop-loss e take-profit são calculados. O nível de stop-loss é determinado multiplicando o preço médio de entrada da posição pela porcentagem de stop-loss. O nível de take-profit é calculado multiplicando o preço médio de entrada pela porcentagem de take-profit. Estes níveis de gerenciamento de risco fornecem diretrizes claras sobre quando sair de uma posição, garantindo a proteção do capital e a realização de lucros.
A estratégia apresenta as seguintes vantagens:
Fornece regras claras de entrada e saída para decisões comerciais mais definitivas.
Identifica as oportunidades de reversão utilizando indicadores técnicos para melhorar a precisão das decisões.
Calcula de forma dinâmica os níveis de stop-loss e take-profit para um melhor controlo do risco.
A abordagem sistemática facilita o acompanhamento e a avaliação dos resultados.
Permite a otimização de parâmetros para adaptação a diferentes condições de mercado.
A estratégia comporta igualmente os seguintes riscos:
Os sinais de inversão podem dar sinais falsos, resultando em perdas.
As configurações inadequadas de stop-loss e take-profit podem conduzir a perdas excessivas ou a não realização de lucros completos.
Configurações incorretas de parâmetros podem levar a um mau desempenho.
As principais medidas de controlo dos riscos incluem:
Avaliar a fiabilidade do sinal para evitar falsos sinais.
Teste e otimize os parâmetros de stop loss e take profit.
Avaliar a robustez dos parâmetros em diferentes condições de mercado.
A estratégia pode ser otimizada em vários aspectos:
Teste mais indicadores técnicos para encontrar sinais de reversão mais fiáveis.
Utilize métodos de aprendizagem de máquina para otimizar dinamicamente os níveis de stop-loss e take-profit.
Incorporar a avaliação dos viés de mercado utilizando indicadores de sentimento, etc., para melhorar a precisão do sinal.
Otimizar o gerenciamento do dimensionamento de posição para rastreamento de tendências.
Avaliar as características dos estoques para selecionar os indicadores mais adequados para a estratégia.
A estratégia fornece aos traders uma ferramenta poderosa para buscar ativamente oportunidades ideais de reversão de curto prazo durante os rali de preços. Com uma estrutura robusta e decisões baseadas em análise meticulosa, a estratégia permite que os traders capitalizem proativamente as oportunidades de mercado. Ao mesmo tempo, a estratégia fornece parâmetros personalizáveis que permitem que os traders criem suas próprias estratégias de negociação. Através de testes e otimização rigorosos de parâmetros, os traders podem desbloquear todo o potencial de negociação da estratégia.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Sell the Rallies", overlay=true, initial_capital=212, commission_type=strategy.commission.percent, commission_value=0, pyramiding=2) // Backtest dates fromMonth = input(1, "From Month") fromDay = input(10, "From Day") fromYear = input(2020, "From Year") thruMonth = input(2, "Thru Month") thruDay = input(21, "Thru Day") thruYear = input(2024, "Thru Year") // Define window of time for backtest start = timestamp(fromYear, fromMonth, fromDay, 00, 00) finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) withinWindow() => true inp_lkb = input(1, "Lookback Period") // Calculate percentage change perc_change(lkb) => overall_change = ((close - ta.valuewhen(withinWindow(), close, lkb)) / ta.valuewhen(withinWindow(), close, lkb)) * 100 // Call the function overall = perc_change(inp_lkb) // Entry rally = input(2, "Rally") if ta.crossover(overall, rally) and withinWindow() strategy.entry("Short", strategy.short) // Exit stopLoss = input(2, "Stop Loss (%)") / 100 takeProfit = input(2, "Take Profit (%)") / 100 shortStopPrice = strategy.position_avg_price * (1 + stopLoss) shortTakeProfit = strategy.position_avg_price * (1 - takeProfit) strategy.exit("Exit", "Short", stop=shortStopPrice, limit=shortTakeProfit)