Estratégia de seleção adaptativa de período de tempo de backtesting baseada na sobreposição de duas médias móveis.
Visão Geral
A ideia central deste estratégia é implementar um quadro que permita selecionar flexivelmente o período de tempo do backtest, dando ao utilizador a capacidade de definir automática ou manualmente as datas de início e fim do backtest de acordo com diferentes necessidades.
A estratégia oferece quatro formas de seleção do intervalo de datas através de parâmetros de entrada: utilizar todo o histórico de dados, os últimos dias especificados, as últimas semanas especificadas ou especificar manualmente um intervalo de datas. A estratégia define dinamicamente a janela de backtest com base no intervalo de datas selecionado, enquanto a lógica de negociação permanece inalterada, permitindo assim comparar as diferenças de desempenho da estratégia em diferentes janelas temporais.
Princípio da Estratégia
A estratégia é composta por um módulo de seleção do intervalo de datas do backtest e um módulo de estratégia de negociação com dupla Média Móvel (MA).
Módulo de Seleção do Intervalo de Datas do Backtest
- Oferece quatro formas de seleção do intervalo de datas: todo o histórico (ALL), últimos dias especificados (DAYS), últimas semanas especificadas (WEEKS), intervalo de datas definido manualmente (MANUAL).
- Com base no intervalo selecionado, define dinamicamente as datas de início e fim do backtest através da conversão de timestamps.
- Utiliza a função de condição temporal
window()para filtrar os candles, realizando o backtest apenas dentro do intervalo de datas selecionado.
Módulo de Estratégia de Negociação com Dupla MA
- O período da MA rápida é
fastMA, predefinido como 14; o período da MA lenta éslowMA, predefinido como 28. - Quando a MA rápida cruza para cima a MA lenta, abre-se uma posição longa; quando a MA rápida cruza para baixo a MA lenta, fecha-se a posição.
- Desenha as curvas das MAs rápida e lenta.
Análise das Vantagens da Estratégia
- Permite selecionar flexivelmente diferentes intervalos de tempo para backtest, sem limitações, satisfazendo diversas necessidades experimentais.
- Permite testar o efeito de diferentes parâmetros de período dentro do mesmo intervalo temporal, com resultados comparáveis.
- A modificação da lógica de negociação é simples, podendo ser usada como quadro para outras estratégias.
- A estratégia de dupla MA é simples e fácil de entender, ideal para iniciantes.
Análise dos Riscos e Soluções
- A estratégia de dupla MA é relativamente grosseira, apresentando o problema de compras e vendas frequentes. Pode-se considerar a adição de mecanismos como stop loss para otimização.
- A definição manual do intervalo de datas requer cuidado para evitar a utilização de datas incorretas. Podem ser exibidas mensagens de aviso.
- Um backtest com todo o histórico demasiado longo pode aumentar o período de teste. Pode-se considerar a adição de slippage ou comissões para reduzir a frequência de negociações.
Direções para Otimização da Estratégia
- Adicionar lógica de stop loss para reduzir o risco de perdas.
- Incluir filtragem de pool de ações, selecionando ações com maior correlação com o índice para melhorar a estabilidade.
- Adicionar um filtro de sinais de negociação, eliminando sinais instáveis dentro de um determinado período, reduzindo negociações desnecessárias.
- Testar o desempenho de ações correlacionadas a diferentes índices de classificação para encontrar as melhores variedades.
Resumo
Esta estratégia, enquanto quadro genérico para intervalos de datas de backtest, tem como vantagens a flexibilidade e personalização, podendo satisfazer diferentes necessidades de teste dos utilizadores. Combinada com a lógica de negociação simples e eficaz da dupla MA, permite validar e comparar rapidamente a estratégia. Posteriormente, pode ser otimizada através da adição de filtros, lógica de stop loss, etc., aproximando-se cada vez mais da aplicação em mercado real. No geral, este quadro de estratégia possui boa extensibilidade e valor de referência.
- 1

