Estratégia de negociação quantitativa com stop-profit fixo e stop-loss de saída


Data de criação: 2024-02-18 09:53:48 última modificação: 2024-02-18 09:53:48
cópia: 1 Cliques: 631
1
focar em
1617
Seguidores

Estratégia de negociação quantitativa com stop-profit fixo e stop-loss de saída

Visão geral

Esta estratégia é chamada de estratégia de negociação quantitativa de entrada e saída de parada fixa. A principal idéia da estratégia é executar uma entrada de posição longa no período de negociação do primeiro dia da semana se o preço de liquidação estiver abaixo da média móvel de Hull de 115 ciclos.

Princípio da estratégia

A estratégia foi projetada com base nos sinais indicadores da média móvel de Hull e nas regras de negociação periódica.

Em primeiro lugar, no período de negociação de segunda-feira, para determinar se o preço de fechamento está abaixo da média móvel de Hull de 115 ciclos, se as condições estiverem preenchidas, a operação de entrada de posição longa. A média móvel de Hull, em comparação com a média móvel normal, pode responder mais rapidamente às mudanças de preço e é mais sensível à identificação de tendências, portanto, o sinal do indicador pode melhorar a precisão do tempo de entrada.

Em segundo lugar, é incondicionalmente executar a saída de posição no horário de negociação da quarta-feira. Com esta forma de operação periódica, pode evitar ser afetado por eventos inesperados e reduzir a probabilidade de retirada. Ao mesmo tempo, é configurado um ponto de parada e perda de proporção fixa para controlar o risco e o lucro de cada transação.

Finalmente, devido ao menor intervalo de tempo e maior frequência de negociação de cada transação, pode-se ajustar a posição até certo ponto, reduzindo o risco de uma única transação.

Análise de vantagens

A estratégia tem as seguintes vantagens:

  1. Usando a média móvel de Hull como um indicador de sinal de entrada, pode aumentar a precisão da escolha do momento de entrada, capturando oportunidades de tendência.

  2. O uso de uma saída periódica pode evitar o risco de comportamento irracional e reduzir a probabilidade de retração.

  3. A configuração de um ponto de parada e perda fixo permite um bom controle do risco-benefício de uma única transação.

  4. A frequência de negociação é mais alta, o que ajuda a ajustar a posição e reduz o risco de negociações individuais.

  5. As regras da estratégia são simples e claras, fáceis de entender e implementar, adequadas para a algoritmização de transações quantitativas.

Análise de Riscos

A estratégia também apresenta alguns riscos, incluindo:

  1. O mercado pode ter um longo período de liquidação, o que aumenta a probabilidade de ser preso após a entrada.

  2. A configuração do ponto de parada fixo não é suficientemente flexível, podendo ocorrer parada prematura ou parada tardia.

  3. Se ocorrerem eventos importantes e inesperados, o modo de partida periódico pode trazer grandes perdas.

  4. A frequência de transações aumenta os custos de transação e os efeitos do slippage.

  5. Configurações de parâmetros (como o comprimento do ciclo de cálculo, etc.) podem afetar o desempenho da estratégia.

Para reduzir os riscos acima mencionados, considerem-se as seguintes medidas de otimização:

  1. Antes de entrar, julgue o padrão do mercado e evite entrar na liquidação.

  2. Configure um stop loss de deslizamento dinâmico ou considere a predefinição de vários pontos de stop loss fixos.

  3. Suspender a negociação antes e depois de eventos importantes, evitando momentos de forte volatilidade.

  4. Reduzir adequadamente a frequência das transações, reduzindo os custos das transações e os efeitos dos pontos de deslizamento.

  5. Optimizar a configuração dos parâmetros, realizar testes de estabilidade e tornar a estratégia mais estável.

Direção de otimização

A estratégia ainda tem espaço para ser melhorada, principalmente nos seguintes aspectos:

  1. Otimizar dinamicamente os parâmetros das médias móveis usando métodos como o aprendizado de máquina para tornar o sinal do indicador mais preciso.

  2. Tente combinar vários indicadores para criar regras de entrada e saída mais complexas.

  3. O mecanismo de stop-loss é projetado para se adaptar a diferentes períodos de tempo e condições de mercado.

  4. Integrar o modelo de gestão de risco para uma melhor gestão de fundos.

  5. Projetar módulos de recuperação de pontos de interrupção para que a estratégia possa concluir com sucesso eventos importantes, como a demolição de ações.

  6. Adicionar módulo de verificação de disco real para testar o desempenho da estratégia no disco real.

A integração e otimização de métodos como aprendizado de máquina, combinação de indicadores, stop-loss adaptativo e gerenciamento de riscos permitem uma maior estabilidade e lucratividade da estratégia. A inclusão de mecanismos de verificação em tempo real é um meio importante para aperfeiçoar ainda mais a estratégia. Estas são as principais direções para otimizar a estratégia no futuro.

Resumir

A estratégia foi concebida com base na entrada de sinais de indicadores de média móvel do Hull e na saída de ciclos fixos, com vantagens como precisão de sinais de indicadores e baixa probabilidade de retração, além de controlar o stop loss de uma única transação. No entanto, a estratégia também tem problemas como o uso de paradas e configurações de stop loss irracionais.

Código-fonte da estratégia
/*backtest
start: 2024-01-18 00:00:00
end: 2024-02-17 00:00:00
period: 2h
basePeriod: 15m
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/
// © gnatskiller

//@version=5
strategy("Strategia HMA + LUN/MER", overlay=true)

// Inputs: stoploss %, takeProfit %
stopLossPercentage = input.float(defval=0.8, title='StopLoss %', minval=0.1, step=0.2) / 100
takeProfit = input.float(defval=1.5, title='Take Profit %', minval=0.3, step=0.2) / 100

// Calculate HMA 115
hma115 = ta.hma(close, 115)

// Exit and Entry Conditions - Check current day, session time, and price below HMA 115
isLong = dayofweek == dayofweek.monday  and not na(time(timeframe.period, "1000-1101")) and close < hma115
isExit = dayofweek == dayofweek.wednesday and not na(time(timeframe.period, "1000-1101"))

// Calculate Stoploss and Take Profit values
SL = strategy.position_avg_price * (1 - stopLossPercentage)
TP = strategy.position_avg_price * (1 + takeProfit)

// Strategy Enter, and exit when conditions are met
if isLong
    strategy.entry("Enter Long", strategy.long)
if strategy.position_size > 0 
    if isExit
        strategy.close("Enter Long", comment="Exit")
        strategy.exit("Exit", "Exit", stop=SL, limit=TP)

// Plot Stoploss and TakeProfit lines
plot(strategy.position_size > 0 ? SL : na, style=plot.style_linebr, color=color.red, linewidth=2, title="StopLoss")
plot(strategy.position_size > 0 ? TP : na, style=plot.style_linebr, color=color.green, linewidth=2, title="TakeProfit")

// Plot HMA 115
plot(hma115, color=color.blue, title="HMA 115")