A estratégia consiste em seguir o preço máximo histórico de um título, comprando quando o preço retorna a um determinado percentual do preço máximo, e vendendo quando o preço retorna a um preço máximo histórico, e é uma estratégia de seguimento de tendência.
A estratégia primeiro registra o preço mais alto de um título desde 1o de janeiro de 2011 até hoje, definido como a variável “highestHigh”. Em seguida, ela traça uma linha horizontal para esse preço mais alto, “allTimeHigh”.
Durante a operação, julgue diariamente se o preço mais alto do dia é inovador, se for inovador, atualize a variável highestHigh e recriar a linha horizontal allTimeHigh.
A estratégia tem três linhas horizontais importantes:
buyzone=highestHigh*0.9: Nível de 90% no preço mais alto, representando uma forte oportunidade de reabsorção
buyzone2=highestHigh*0.8: Nível de 80% no preço mais alto, representando uma posição de retração mais atraente
sellzone=highestHigh*0,99: Nível de 99% no preço mais alto, representando a chance de uma reversão da tendência
Um sinal de compra é emitido quando o preço cai para a linha horizontal de 80% (buyzone 2); um sinal de venda é emitido quando o preço re-quebrar a linha horizontal de 99% (sellzone), o preço mais alto da história.
O principal critério para a estratégia é o rastreamento de máximos históricos e linhas horizontais de diferentes proporções, uma estratégia típica de acompanhamento de tendências.
A principal vantagem desta estratégia é a capacidade de capturar a tendência ascendente de longo prazo, para alcançar o efeito de compra e venda de baixo preço, aguardando a retirada e a entrada. As vantagens específicas são as seguintes:
A oportunidade de capturar a tendência ascendente de longo prazo das ações, com o rastreamento dos preços mais altos como uma base importante para determinar a tendência
A posição de 80% do preço de retração máximo representa o melhor índice de retorno do risco, garantindo espaço de lucro após a subida e limitando o risco de queda
99% dos máximos históricos como uma linha de parada para maximizar os lucros e controlar os riscos
Pode ser usado para testar se as ações estão entrando em oportunidades de alta estrutural, os máximos e máximos representam a força das empresas
Os parâmetros podem ser ajustados em tamanho de espaço e personalizados para diferentes ações
Portanto, a estratégia de maximizar os ganhos trazidos pela tendência de alta das ações, evitando o risco de ajustes de curto prazo, é uma estratégia de acompanhamento de tendências com boa relação de risco-ganho.
Os principais riscos dessa estratégia são a probabilidade de que os preços possam se tornar mais baixos após a compra e continuar a cair. Os principais riscos incluem:
Probabilidade de queda de preços após a compra, com risco de perdas
Os preços mais altos representam, na verdade, um pico em que os pontos mais quentes caem, o que pode ser insuficiente para continuar a subir.
Se os parâmetros são mal definidos, o ponto de parada é muito alto ou muito baixo e há diferentes problemas
A frequência de negociação pode ser baixa e pode ser influenciada por circunstâncias externas, como a tendência do mercado de ações.
A base de compra de ações é fraca, sem considerar os fundamentos e a avaliação das ações individuais
Os principais métodos de solução são: avaliar razoavelmente os fundamentos das ações para garantir a qualidade da seleção de ações; ajustar parâmetros como a proporção de compra, o ponto de parada para otimizar a estratégia; considerar a implementação de combinações com outras estratégias, etc.
A principal direção de otimização da estratégia é o ajuste de parâmetros, a seleção de regras de ações e a melhoria do método de parada de perdas.
Optimizar os indicadores técnicos de compra e parada, como considerar indicadores como KD, MACD e evitar altos
Melhorar as regras de seleção de ações, adicionando os fundamentos e os indicadores de avaliação para garantir a qualidade da seleção de ações
A proporção de parâmetros de ajuste dinâmico e a ligação ao disco principal garantem a racionalidade dos parâmetros
Configure o stop loss móvel ou o stop loss temporário, otimizando o modo e a localização do stop loss
Considere a integração com outras estratégias de fatores para formar modelos multifatoriais e aumentar a estabilidade
Adição de quantidade pode ser um indicador de discernimento, evitando a escolha de um período de alta de ações em um período de baixa posterior
Portanto, a direção de otimização da estratégia está principalmente na seleção de regras de ações, ajuste de parâmetros, melhoria do método de parada de perdas e, com base na tendência de rastreamento original, melhorar ainda mais a estabilidade e o risco de ajuste de receita.
Esta estratégia é uma estratégia típica de acompanhamento de tendências de alta e alta histórica. Ela pode efetivamente capturar a tendência ascendente de longo prazo das ações e obter uma melhor taxa de retorno de risco por meio de retração técnica. Mas, devido à falta de consideração dos fatores fundamentais, a estabilidade e a resistência ao risco são fracas.
/*backtest
start: 2023-01-21 00:00:00
end: 2024-01-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("All-time-high", "ATH", overlay=true, initial_capital=10000, default_qty_value=100, default_qty_type=strategy.percent_of_equity, pyramiding=1, commission_type=strategy.commission.cash_per_contract, commission_value=0.000)
// input
Athlw = input(title="All-time-high line widths", type=input.integer, defval=4, minval=0, maxval=4)
Athlc = input(title="All-time-high line color", type=input.color, defval=color.new(color.fuchsia,50))
years = input(title="Years back to search for an ATH", type=input.integer, defval=6,minval=0, maxval=100)
var float highestHigh = 0
// var line allTimeHigh = line.new(na, na, na, na, extend=extend.both, color=Athlc, width=Athlw)
if high > highestHigh
highestHigh := high
// if barstate.islast
// line.set_xy1(allTimeHigh, bar_index-1, highestHigh)
// line.set_xy2(allTimeHigh, bar_index, highestHigh)
plot(highestHigh)
buyzone=highestHigh*0.9
buyzone2=highestHigh*0.8
buyzone3=highestHigh*0.7
sellzone=highestHigh*0.99
plot(buyzone, color=color.red)
plot(buyzone2, color=color.white)
plot(buyzone3, color=color.green)
begin = timestamp(2011,1,1,0,0)
end = timestamp(2022,4,19,0,0)
longCondition = close<buyzone2
if (longCondition)
strategy.entry("Buy", strategy.long)
closeCondition = close>sellzone
if (closeCondition)
strategy.close("Buy", strategy.long)