Estratégia de avanço de dois estágios


Data de criação: 2023-11-02 15:58:29 última modificação: 2023-11-02 15:58:29
cópia: 0 Cliques: 566
1
focar em
1621
Seguidores

Estratégia de avanço de dois estágios

Visão geral

A estratégia baseia-se em decisões de negociação de alta e baixa do preço de abertura de 5 minutos, usando um breakout de dois níveis para definir diferentes condições de disparo, com o objetivo de capturar grandes mudanças de preço em uma tendência de choque.

Princípio da estratégia

A estratégia baseia-se no preço de abertura da linha K em 2 horas e 5 minutos por dia, calcula a porcentagem de aceleração e queda da linha K em 5 minutos no momento, e toma a decisão de compra ou venda correspondente quando a aceleração e queda ultrapassam o intervalo definido para o primeiro estágio. Ao mesmo tempo, define o stop loss e o stop loss para sair da posição.

Se o stop-loss for acionado, quando a tendência de queda continuar a se expandir e ultrapassar a condição de ação do intervalo de fase dois, a ordem anterior será cancelada, usando uma nova ordem de compra ou venda abaixo do intervalo de fase dois e continuando a seguir o stop-loss e o stop-loss.

A configuração de um intervalo de dois níveis permite filtrar parte do ruído em situações de turbulência, permitindo a negociação somente em situações de mudanças de preço significativas. A ativação de um intervalo de segundo nível reduz os casos em que o stop loss é acionado com demasiada frequência.

Vantagens estratégicas

  • O uso de dois intervalos para definir diferentes condições de gatilho pode filtrar efetivamente o ruído dos mercados de turbulência, permitindo negociar apenas quando há mudanças mais significativas
  • A ativação do segundo estágio do intervalo pode ser eficaz para evitar que o bloqueio seja acionado com demasiada frequência
  • Com base no preço de abertura calculado para o período de alta e baixa, pode-se aproveitar a tendência após a abertura do novo dia de negociação
  • A lógica da estratégia é simples, clara e fácil de entender.

Riscos e soluções

  • Em situações de grandes turbulências, pode haver frequentes aberturas de posições e saídas com prejuízos, aumento dos custos de transação.
  • O segundo estágio é muito grande e pode perder melhores oportunidades de negociação.
  • A configuração de intervalos é pequena demais e pode aumentar o número de transações desnecessárias

Resposta:

  • Optimizar os parâmetros de intervalo para encontrar o melhor equilíbrio
  • Aumentar o limite de transações diárias para evitar transações excessivamente frequentes
  • Combinação de julgamento de tendências com parâmetros mais radicais quando as tendências são evidentes

Direção de otimização

  • Otimizar os valores de dois intervalos de fase para encontrar a melhor combinação de parâmetros
  • Estudar as diferenças de parâmetros de diferentes variedades e períodos de tempo
  • Combinação de indicadores de tendência com parâmetros mais radicais quando a tendência é visível
  • Aumentar o número de transações diárias para evitar o excesso de transações
  • Otimização do ponto de parada para um melhor risco-retorno

Resumir

A estratégia de capturar os movimentos de preços através de duas etapas de ruptura de intervalo, filtração eficaz de ruído em situações de turbulência. O conceito da estratégia é simples e claro, através de parâmetros de otimização pode obter melhores efeitos. O próximo passo pode ser considerado em combinação com indicadores de julgamento de tendência, para exercer vantagem estratégica em situações de tendência.

Código-fonte da estratégia
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Auto Entry Bot", overlay=true)

// Define input for the stop loss and take profit levels
stopLossPips = input.int(200, title="Stop Loss Pips", minval=1)
takeProfitPips = input.int(400, title="Take Profit Pips", minval=1)

// Calculate the percentage change from the 5-minute opening candle at 2:00 AM
var float openPrice = na
if (hour == 2 and minute == 0)
    openPrice := open
percentageChange = (close - openPrice) / openPrice * 100

// Track the cumulative percentage change
var float cumulativeChange = 0

// Define input for the percentage change trigger
triggerPercentage1 = input.float(0.25, title="Percentage Change Trigger (%)", minval=0.01, step=0.01)
triggerPercentage2 = input.float(0.35, title="Additional Trigger Percentage (%)", minval=0.01, step=0.01)

// Check for price change trigger
if (percentageChange >= triggerPercentage1)
    // Sell signal
    strategy.entry("Sell", strategy.short)
    strategy.exit("ExitSell", loss=stopLossPips, profit=takeProfitPips)
    cumulativeChange := 0  // Reset cumulative change after a trade

if (percentageChange <= -triggerPercentage1)
    // Buy signal
    strategy.entry("Buy", strategy.long)
    strategy.exit("ExitBuy", loss=stopLossPips, profit=takeProfitPips)
    cumulativeChange := 0  // Reset cumulative change after a trade

// If the price keeps hitting stop loss, activate the second trigger
if (strategy.position_size < 0 and percentageChange <= -triggerPercentage2)
    strategy.cancel("Sell")  // Cancel previous sell order
    strategy.entry("Sell2", strategy.short)
    strategy.exit("ExitSell2", loss=stopLossPips, profit=takeProfitPips)
    cumulativeChange := 0  // Reset cumulative change after a trade

if (strategy.position_size > 0 and percentageChange >= triggerPercentage2)
    strategy.cancel("Buy")  // Cancel previous buy order
    strategy.entry("Buy2", strategy.long)
    strategy.exit("ExitBuy2", loss=stopLossPips, profit=takeProfitPips)
    cumulativeChange := 0  // Reset cumulative change after a trade