Estratégia de reversão de stop-loss de breakout


Data de criação: 2024-02-05 14:56:16 última modificação: 2024-02-05 14:56:16
cópia: 0 Cliques: 645
1
focar em
1617
Seguidores

Estratégia de reversão de stop-loss de breakout

Visão geral

A estratégia é uma estratégia de negociação quantitativa de longo e curto prazo baseada na teoria da ruptura. Ela julga se uma ruptura ocorreu por meio do cálculo do preço de fechamento mais alto nos últimos 100 dias de negociação. Se o preço de fechamento no dia mais recente exceder o preço de fechamento mais alto nos 100 dias anteriores, um sinal de compra é emitido.

Princípio da estratégia

A lógica central da estratégia é baseada na teoria da brecha da brecha na análise técnica. A teoria da brecha acredita que quando o preço ultrapassa o máximo ou o mínimo do período anterior, o mercado representa uma reversão e pode entrar em uma nova tendência de alta ou baixa.

Especificamente, a estratégia é executada chamando a função embutida do Pine Scriptta.highest()Calcule o preço de fechamento máximo dos últimos 100 bares. Em seguida, compare se o preço de fechamento da linha K atual é maior do que o preço de fechamento máximo. Se o preço de fechamento ultrapassar o preço de fechamento máximo de 100 dias, uma ruptura ocorre na direção superior, gerando um sinal de compra.

Depois de entrar em uma posição multi-cabeça, a estratégia define uma condição de parada de perda de liquidação.ta.barssince()A função estatisticamente entra no número de barras após fazer mais, e quando o número de barras é superior a 25, a parada de perda forçada é neutralizada.

A lógica de entrada da estratégia pode ser resumida como:

  1. Calcule o preço máximo de fechamento nos últimos 100 dias de negociação
  2. Comparar se o preço de fechamento atual da linha K é superior ao preço de fechamento máximo
  3. Se acima de, gerar um sinal de compra, entrar em multidirecional
  4. Cessação forçada de liquidação após 25 dias de negociação

Análise de vantagens

A maior vantagem da estratégia é capturar os pontos de inflexão da tendência de preços, com uma alta taxa de sucesso de negociação de tendência. Além disso, a configuração de lógica de stop loss também pode controlar eficazmente as perdas individuais.

As vantagens concretas podem ser resumidas como:

1. Transações com alta taxa de sucesso

A teoria da ruptura diz que o preço ultrapassa a região de preço-chave, representando a entrada de uma nova tendência. A estratégia foi projetada com base nesta teoria, portanto, há uma maior probabilidade de capturar o momento da reversão de preço, realizando uma negociação de tendência.

2. Riscos controlados e mecanismos de suspensão de perdas

A estratégia estabelece um mecanismo de parada de perda de 25 dias de negociação, que pode controlar a perda individual em um determinado intervalo, evitar a ocorrência de grandes perdas e manter o risco geral controlado.

3. Adequado para posições de linha média e longa

O tempo de detenção da estratégia é de 25 dias de negociação por defeito, cerca de 1 mês. Este é um intervalo de tempo de detenção mais adequado para a estratégia de linha média-longa, que não causa whipsaw em curto prazo e não aumenta o risco de uma posição de longo prazo.

4. Menos parâmetros, fácil de otimizar

Os principais parâmetros da estratégia são apenas o período da janela de ruptura e o tempo de detenção, os parâmetros são menos fáceis de testar e otimizar para encontrar o parâmetro otimizado, e o custo de operação do disco rígido é baixo.

5. Intercambiabilidade entre variedades

A estratégia não usa indicadores exclusivos de uma variedade específica, e sua lógica de negociação se aplica a várias variedades, como índices de ações, divisas, commodities e criptomoedas, podendo alternar entre diferentes variedades de acordo com as condições do mercado, aumentando a adaptabilidade da estratégia.

Análise de Riscos

Apesar dos benefícios mencionados, a estratégia também apresenta alguns riscos na prática, como:

1. Risco de ser enganado

A estratégia não tem um mecanismo de parada móvel ou de rastreamento de parada. Se a tendência de entrada não for formada, ou se a ruptura for, na verdade, uma falsa ruptura, então é fácil ser colocada no ponto de parada. Este é o maior risco da estratégia.

2. Parâmetros que podem precisar de otimização

O parâmetro padrão não é necessariamente o parâmetro otimizado, e o processo de disco rígido pode exigir a busca de configurações de parâmetros adequadas a uma variedade específica e ao ambiente de mercado por meio de métodos de otimização, o que aumenta a quantidade de trabalho de ajuste e acompanhamento da estratégia.

3. Eficácia e relevância para o mercado

A estratégia depende excessivamente da tendência, tem um mau desempenho no mercado de liquidação e é pouco adaptável a diferentes modelos de mercado. Se houver um mercado de turbulência, é frequentemente ajustado ou acionado, e os ganhos e perdas podem ser instáveis.

Direção de otimização

Para que a estratégia possa ter um desempenho mais estável no disco, pode ser otimizada e melhorada nos seguintes aspectos:

1. Aumento do mecanismo de travamento móvel

Adicionar uma lógica de rastreamento de stop-loss, de acordo com o tamanho do lucro no papel de posição, configurar um ponto de stop-loss móvel para o rastreamento, limitando assim o máximo de perdas em cada transação a um determinado intervalo. Isso pode reduzir consideravelmente o risco individual.

2. Ajustar os parâmetros de acordo com as condições do mercado

Pode-se definir um intervalo ou uma lista de valores para os dois principais parâmetros da estratégia (breakout window e tempo de posse), definindo dinamicamente o valor dos parâmetros de acordo com a força relativa do mercado (por exemplo, através do cálculo do uso do indicador ATR), o que permite otimizar ainda mais os parâmetros.

3. Regras de juízo de tendências

A redução máxima do risco em caso de incerteza de tendência ou falsa ruptura. Pode ser combinado com os resultados da análise de tendência prévia (como o julgamento visual ou análise quantitativa), e depois participar de negociações quando a análise determina uma tendência mais clara.

4. Testes em diferentes variedades e condições de mercado

Testar parâmetros e regras de estratégia de otimização em várias variedades (como índices de ações, mercadorias, divisas e criptomoedas, etc.) e em vários intervalos de negociação (como linha de sol, 60 minutos, etc.), adaptando-se a um ambiente de mercado mais amplo, aumentando a estabilidade.

Resumir

A estratégia de reviravolta de parada de prejuízo é simples de usar, tem uma forte capacidade de julgamento e apreensão de tendências, pode configurar efetivamente posições em aberto e manter o lucro. Analisamos o código, identificamos os pontos fortes e de risco da estratégia e damos recomendações para melhorar ainda mais a estabilidade e a praticidade da estratégia. Depois de otimização e melhoria, acreditamos que a estratégia pode ser um excelente modelo básico para investimento quantitativo.

Código-fonte da estratégia
/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © All_Verklempt

//@version=5
strategy("Breakout Strategy", overlay=true)

// Input variable for breakout period
breakoutPeriod = input.int(100, title="Breakout Period", minval=1)

// Calculate the highest close of the past breakout period
highestClose = ta.highest(close, breakoutPeriod)

// Input variables for start and end dates
startYear = input.int(2022, title="Start Year", minval=1900)
startMonth = input.int(1, title="Start Month", minval=1, maxval=12)
startDay = input.int(1, title="Start Day", minval=1, maxval=31)

endYear = input.int(2023, title="End Year", minval=1900)
endMonth = input.int(12, title="End Month", minval=1, maxval=12)
endDay = input.int(31, title="End Day", minval=1, maxval=31)

// Convert start and end dates to timestamp
startDate = timestamp(startYear, startMonth, startDay, 00, 00)
endDate = timestamp(endYear, endMonth, endDay, 23, 59)

// Entry condition: Breakout and higher close within the specified date range
enterLong = close > highestClose[1] and close > close[1]

// Exit condition: Close the long position after twenty-five bars
exitLong = ta.barssince(enterLong) >= 25

// Strategy logic
if (enterLong)
    strategy.entry("Long", strategy.long)

if (exitLong)
    strategy.close("Long")