A Importância das Estratégias de Negociação de Backtesting
O backtesting é um componente chave para o desenvolvimento eficaz de sistemas de negociação. É realizado reconstruindo, com dados históricos, negociações que teriam ocorrido no passado usando regras definidas por uma dada estratégia. O resultado oferece estatísticas para avaliar a eficácia da estratégia.
A teoria subjacente é que qualquer estratégia que funcionou bem no passado provavelmente funcionará bem no futuro e, inversamente, qualquer estratégia que funcionou mal no passado provavelmente terá um desempenho ruim no futuro. Este artigo analisa quais aplicativos são usados no backtesting, que tipo de dados são obtidos e como colocá-los em uso.
Como fazer o backtest de uma estratégia de negociação usando dados e ferramentas
O backtesting pode fornecer muitos comentários estatísticos valiosos sobre um determinado sistema. Algumas estatísticas universais de backtesting incluem:
- Lucro ou perda líquida : porcentagem líquida ganha ou perdida
- Medidas de volatilidade : porcentagem máxima de vantagem e desvantagem
- Médias: Ganho médio percentual e perda média, barras médias retidas
- Exposição : Porcentagem do capital investido (ou exposto ao mercado)
- Rácios: Rácio de ganhos para perdas
- Retorno anualizado : percentual de retorno ao longo de um ano
- Retorno ajustado ao risco : percentual de retorno em função do risco
Software de backtesting
Normalmente, o software de backtesting terá duas telas importantes. O primeiro permite que o AmiBroker :
A segunda tela é o relatório de resultados do backtesting real. É aqui que você pode encontrar as estatísticas mencionadas acima. Novamente, aqui está um exemplo desta tela no AmiBroker:
Em geral, a maioria dos dimensionamento automático de posição, otimização e outros recursos mais avançados.
10 regras para estratégias de negociação de backtesting
Há muitos fatores a serem observados quando os traders estão testando as estratégias de negociação. Aqui está uma lista das coisas mais importantes a serem lembradas durante o backtesting:
- Leve em consideração as tendências gerais do mercado no período de tempo em que uma determinada estratégia foi testada. Por exemplo, se uma estratégia foi testada apenas de 1999 a 2000, ela pode não se sair bem em um mercado baixista. Freqüentemente, é uma boa ideia fazer o backtest por um longo período de tempo, abrangendo vários tipos diferentes de condições de mercado.
- Leve em consideração o universo em que ocorreu o backtesting. Por exemplo, se um amplo sistema de mercado for testado com um universo consistindo de ações de tecnologia, ele pode não ter um bom desempenho em diferentes setores. Como regra geral, se uma estratégia é direcionada a um gênero específico de estoque, limite o universo a esse gênero; em todos os outros casos, mantenha um grande universo para fins de teste.
- As medidas de volatilidade são extremamente importantes a serem consideradas no desenvolvimento de um alavancadas, que estão sujeitas a chamadas de margem se seu patrimônio cair abaixo de um certo ponto. Os comerciantes devem procurar manter a volatilidade baixa para reduzir o risco e permitir uma transição mais fácil de entrada e saída de uma determinada ação.
- O número médio de barras mantidas também é muito importante para observar ao desenvolver um sistema de negociação. Embora a maioria dos softwares de backtesting inclua custos de comissão nos cálculos finais, isso não significa que você deve ignorar essa estatística. Se possível, aumentar o número médio de barras retidas pode reduzir os custos de comissão e melhorar seu retorno geral.
- A exposição é uma faca de dois gumes. O aumento da exposição pode levar a maiores lucros ou maiores perdas, enquanto a diminuição da exposição significa menores lucros ou menores perdas. Em geral, é uma boa ideia manter a exposição abaixo de 70% para reduzir o risco e permitir uma transição mais fácil para entrar e sair de um determinado estoque.
- A estatística de ganho / perda média, combinada com a proporção de ganhos para perdas, pode ser útil para determinar o tamanho da posição ideal e gerenciamento de dinheiro usando técnicas como o Critério de Kelly. Os comerciantes podem assumir posições maiores e reduzir os custos de comissão, aumentando seus ganhos médios e aumentando a proporção de ganhos para perdas.
- O retorno anualizado é usado como uma ferramenta para comparar os retornos de um sistema com outros locais de investimento. É importante não apenas observar o retorno anualizado geral, mas também levar em consideração o risco aumentado ou diminuído. Isso pode ser feito observando o retorno ajustado ao risco, que leva em consideração vários fatores de risco. Antes de um sistema de negociação ser adotado, ele deve superar todos os outros locais de investimento com risco igual ou menor.
- A personalização do backtesting é extremamente importante. Muitos aplicativos de backtesting têm entrada para valores de comissão, tamanhos de lote arredondados (ou fracionários), tamanhos de escala, requisitos de margem, taxas de juros, suposições de deslizamento, regras de dimensionamento de posição, regras de saída na mesma barra, configurações de parada (trailing) e muito mais Para obter os resultados de backtesting mais precisos, é importante ajustar essas configurações para imitar o corretor a ser usado quando o sistema entrar em operação.
- O backtesting às vezes pode levar a algo conhecido como superotimização. Esta é uma condição em que os resultados de desempenho são ajustados tão alto para o passado que não são mais tão precisos no futuro. Geralmente, é uma boa ideia implementar regras que se apliquem a todos os estoques, ou a um conjunto selecionado de estoques-alvo, e não sejam otimizados a ponto de as regras não serem mais compreensíveis pelo criador.
- O backtesting nem sempre é a maneira mais precisa de avaliar a eficácia de um determinado sistema de negociação. Às vezes, as estratégias que funcionaram bem no passado não funcionam bem no presente. O desempenho passado não é indicativo de resultados futuros. Certifique-se de trocar no papel um sistema que foi testado com sucesso antes de entrar em operação para ter certeza de que a estratégia ainda se aplica na prática.
The Bottom Line
O backtesting é um dos aspectos mais importantes do desenvolvimento de um sistema de negociação. Se criado e interpretado corretamente, pode ajudar os traders a otimizar e melhorar suas estratégias, encontrar quaisquer falhas técnicas ou teóricas, bem como ganhar confiança em sua estratégia antes de aplicá-la nos mercados do mundo real.