Teste de estratégia de negociação de ações
Teste de estratégia de negociação de ações
Antes de responder mais, quero fazer um pequeno aviso de que sou co-fundador da Upstox, uma corretora de descontos e diretor da Trade Academy, onde ensinamos os usuários a negociar.
Eu não sou um programador. Eu nunca aprendi como programar (C ++, Java, python, etc.), e depois de um certo ponto, decidi conscientemente não aprender a programar. No entanto, eu gasto estratégias de backtesting de 2 a 3 horas por dia.
Como eu faço isso? Microsoft Excel.
Quando digo às pessoas que faço backtest no Excel, elas não conseguem acreditar. Por que eu usaria o Excel para desenvolver e backtest qualquer coisa quando isso pode ser feito por meio de programação?
Por causa do fluxo. Qualquer quantum lhe dirá que construir, fazer back-testing, refinar e desenvolver requer que você esteja em um ótimo estado de espírito. Estar em fluxo, na minha opinião, é o aspecto mais importante para construir uma estratégia com sucesso.
Como leva tempo para codificar uma estratégia no Excel, ela oferece tempo para pensar. Como você pode ver os números à sua frente, você pode visualizar a estratégia que está sendo construída. E como você pode ver as coisas visualmente, pode fazer alterações rapidamente para otimizar e revisar sua estratégia. Em outras palavras, o back-testing através do Excel permite que você seja ágil.
Concedido, a programação via Excel requer uma enorme quantidade de paciência. Depois de encontrar uma boa prova de conceito, você pode testar sua hipótese em um conjunto de dados muito maior por meio de uma rota algorítmica programática. Mas, dito isso, ainda sou um grande fã do Excel.
Em caso de dúvida, K. I.S. S. Mantenha isso simples, idiota!
Perguntas relacionadasMais respostas abaixo.
Tenho backtested milhares de estratégias de negociação, principalmente para o mercado Forex, mas acho que ainda é relevante para adicionar minha resposta aqui.
Primeiro, eu diria que o backtest é apenas uma peça de um quebra-cabeça. Não confie apenas em resultados de backtest. Você precisa executar centenas de backtests para randomizar o tamanho do spread e simular o slippage durante o backtest. Isto irá dizer-lhe como a sua estratégia se comporta quando a distribuição está em constante mudança e é maior do que a que normalmente obtém durante a negociação ao vivo.
Como você vê, é importante executar um spread com spread variável que foi registrado nos dados do histórico de ticks. Se você usar o spread fixo, os resultados do backtest podem não ser tão precisos.
Eu costumo usar o MetaTrader 4 para backtesting de estratégias únicas e StrategyQuant para backtest de milhares delas.
Então, quando se trata de MT4, eu sempre uso ferramentas adicionais, chamadas de Tick Data Suite, para obter um spread variável e 99% de qualidade de backtesting.
Você pode encontrar o meu detalhado passo a passo tutorial de backtesting MT4 aqui nesta página:
MT4 trabalha principalmente com pares de moedas Forex, mas você também pode negociar CFD em ações.
Além do software já sugerido por outros, não esqueça o seguinte:
Com as ações, é importante usar um banco de dados livre de sobrevivência (por exemplo, o Nasdaq100 de hoje é muito diferente do de 1999).
Qual é o número máximo de negociações perdedoras consecutivas?
Qual é o seu máximo draw-down e tempo para recuperação.
O efeito de derrapagem, juros (margem) e comissões.
Porcentagem de negociações perdidas.
Além disso, como exemplo, se você tiver 12 anos de dados históricos, aplique sua estratégia ao bloco intermediário de 4, se funcionar, repita o processo com os 4 primeiros e depois o último ou use apenas períodos aleatórios. Se funcionar, aplique-o novamente em um grupo diferente de ações em diferentes períodos de tempo. deve ser lucrativo em todos os casos. Se possível, todos esses testes devem ser feitos usando a análise de Montecarlo. É demorado, mas o software ajuda, além do seu dinheiro estar em risco.
Se você percebeu que eu nem sequer mencionei lucros, sistemas e psicologia quebram no lado negativo. especialmente psicologia.
Zerodha pi trading software tem opção embutida para codificar, backtest e levar uma estratégia ao vivo nos mercados acionários indianos.
Selecione o estoque para backtesting - aqui nós selecionamos o futuro do índice Nifty para o backtesting.
Codificação e Backtesting.
Agora você pode codificar as condições de negociação para compra, venda, saída de posição de compra e saída de posição de venda.
Por exemplo, aqui nós codificamos a estratégia da média móvel exponencial:
Condição de compra: Fechar & gt; EMA (fechar, 50), o que significa comprar quando o preço do fechamento das ações estiver acima de 50 dias, média móvel exponencial. Condição de venda: fechar & lt; EMA (fechar, 50), o que significa vender quando o preço da ação estiver abaixo de 50 dias, média móvel exponencial.
Agora insira o intervalo de tempo, nenhum dos dias para ser testado novamente e, em seguida, clique em Voltar teste.
Agora, o relatório de teste é gerado como mostrado na imagem abaixo. O relatório mostra o número de negociações, não de negociações lucrativas, lucro líquido, ganho máximo, taxa de risco-recompensa e etc.
O software pi está disponível a custo zero para os clientes da Zerodha. Abra uma conta com eles e tenha acesso à plataforma de negociação avançada.
Voltar Testar vídeo de demonstração.
Leve em conta as amplas tendências de mercado no período de tempo em que uma determinada estratégia foi testada. Por exemplo, se uma estratégia só foi testada novamente em 1999-2000, ela pode não se sair bem em um mercado em baixa. Muitas vezes é uma boa ideia fazer backtest durante um longo período de tempo que engloba vários tipos diferentes de condições de mercado.
Leve em conta o universo em que ocorreu o backtesting. Por exemplo, se um sistema amplo de mercado for testado com um universo constituído por ações de tecnologia, ele pode não se dar bem em setores diferentes. Como regra geral, se uma estratégia é direcionada a um gênero específico de estoque, limite o universo a esse gênero; mas, em todos os outros casos, mantenha um universo grande para fins de teste.
Medidas de volatilidade são extremamente importantes para considerar no desenvolvimento de um sistema de negociação. Isto é especialmente verdadeiro para as contas alavancadas, que são sujeitas a chamadas de margem se o seu patrimônio cai abaixo de um certo ponto. Os comerciantes devem procurar manter a volatilidade baixa, a fim de reduzir o risco e facilitar a transição dentro e fora de um determinado estoque.
O número médio de bares mantidos também é muito importante para assistir 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ê deva ignorar essa estatística. Se possível, aumentar o seu número médio de barras 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 lucros mais altos ou perdas maiores, enquanto a diminuição da exposição significa lucros menores ou perdas menores. No entanto, em geral, é uma boa ideia manter a exposição abaixo de 70%, a fim de reduzir o risco e facilitar a transição dentro e fora de um determinado estoque.
A estatística de ganho / perda médio, combinada com a taxa de ganhos por perdas, pode ser útil para determinar o tamanho ideal de posição e gerenciamento de dinheiro usando técnicas como o Critério Kelly. (Veja Administração de Dinheiro Usando 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 sua relação entre ganhos e perdas.
O retorno anualizado é importante porque é usado como uma ferramenta para avaliar os retornos de um sistema em relação a outros locais de investimento. É importante não só olhar para o retorno anualizado global, mas também para levar em conta o aumento ou diminuição do risco. Isso pode ser feito observando o retorno ajustado ao risco, que é responsável por vários fatores de risco. Antes de um sistema de negociação ser adotado, ele deve superar todos os outros espaços de investimento em risco igual ou menor.
A personalização de backtesting é extremamente importante. Muitos aplicativos de backtesting têm entradas para quantidades de comissão, tamanhos de lotes redondos (ou fracionários), tamanhos de ticks, requisitos de margem, taxas de juros, premissas de slippage, regras de dimensionamento de posição, regras de saída de barra idêntica, configurações de parada (trailing) e muito mais. Para obter os resultados de backtesting mais precisos, é importante ajustar essas configurações para imitar o broker que será usado quando o sistema for ativado.
O backtesting às vezes pode levar a algo conhecido como otimização excessiva. Essa é uma condição em que os resultados de desempenho são tão altamente ajustados ao passado que não são mais precisos no futuro. Geralmente, é uma boa ideia implementar regras que se apliquem a todas as ações, ou a um conjunto selecionado de ações específicas, e que não sejam otimizadas na medida em que as regras não sejam 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 tiveram bom desempenho no passado não se dão bem no presente. O desempenho passado não é indicativo de resultados futuros. Certifique-se de que o comércio de papel é um sistema que foi testado com sucesso antes de entrar em operação para garantir que a estratégia ainda se aplica na prática.
Divulgação Completa: Eu atualmente chefes de Operações em uma das maiores plataformas de Investimentos Quantitativos nos EUA (O Mercado de Sistemas de Negociação Algorítmica | Quantiacs) e então eu admitidamente tenho meus preconceitos mas me sinto minimamente qualificado para responder a essa pergunta porque nós desenvolvemos a única GUI para o fácil desenvolvimento e backtesting de algoritmos de negociação em Python. Você pode encontrar a ferramenta aqui: Quantiacs Web Toolkit.
É muito fácil criar e backtest algoritmos de negociação profissionais reais em apenas alguns minutos de graça. Outras opções existem, como quantopian e tradingview, no entanto, tanto quanto eu sei, Quantiacs é o único kit de ferramentas de desenvolvimento de algoritmo gráfico disponível gratuitamente python (para não mencionar nós oferecemos competições trimestrais regulares onde você pode realmente receber financiamento variando de US $ 500.000 para mais de US $ 1 m.
A programação necessária para codificar um algoritmo simples é muito mais simples do que você imagina em Python, Matlab, Easy-languages ou C #, etc. O Quantiacs facilitou o uso de uma ótima GUI para python, então experimente!
Backtesting: Interpretando o Passado.
O backtesting é um componente chave do desenvolvimento efetivo do sistema de negociação. Isso é realizado reconstruindo, com dados históricos, negociações que teriam ocorrido no passado usando regras definidas por uma determinada estratégia. O resultado oferece estatísticas que podem ser usadas para avaliar a eficácia da estratégia. Usando esses dados, os traders podem otimizar e melhorar suas estratégias, encontrar falhas técnicas ou teóricas e ganhar confiança em sua estratégia antes de aplicá-la aos mercados reais. A teoria subjacente é que qualquer estratégia que funcionou bem no passado provavelmente funcionará bem no futuro e, inversamente, qualquer estratégia que tenha desempenho fraco no passado provavelmente terá um desempenho ruim no futuro. Este artigo analisa quais aplicativos são usados para o backtest, que tipo de dados são obtidos e como usá-los!
Os dados e as ferramentas.
Lucro ou Prejuízo Líquido - ganho ou perda percentual líquido. Prazo - datas passadas em que o teste ocorreu. Universo - Ações que foram incluídas no backtest. Medidas de volatilidade - Máximo percentual de vantagens e desvantagens. Médias - Ganho médio percentual e perda média, barras médias mantidas. Exposição - Porcentagem de capital investido (ou exposto ao mercado). Rácios - rácio de ganhos / perdas. Retorno anualizado - Retorno percentual ao longo de um ano. Retorno ajustado ao risco - Retorno percentual em função do risco.
Normalmente, o software de backtesting terá duas telas importantes. O primeiro permite que o comerciante personalize as configurações para o backtesting. Essas personalizações incluem tudo, desde período de tempo até custos de comissão. Aqui está um exemplo de tal tela no AmiBroker:
A segunda tela é o relatório de resultados de backtesting real. É aqui que você pode encontrar todas as estatísticas mencionadas acima. Mais uma vez, aqui está um exemplo desta tela no AmiBroker:
Em geral, a maioria dos softwares de negociação contém elementos semelhantes. Alguns programas de software high-end também incluem funcionalidades adicionais para executar dimensionamento automático de posição, otimização e outros recursos mais avançados.
Os 10 mandamentos.
Leve em conta as amplas tendências de mercado no período de tempo em que uma determinada estratégia foi testada. Por exemplo, se uma estratégia só foi testada novamente em 1999-2000, ela pode não se sair bem em um mercado em baixa. Muitas vezes é uma boa ideia fazer backtest durante um longo período de tempo que engloba vários tipos diferentes de condições de mercado. Leve em conta o universo em que ocorreu o backtesting. Por exemplo, se um sistema amplo de mercado for testado com um universo constituído por ações de tecnologia, ele pode não se dar bem em setores diferentes. Como regra geral, se uma estratégia é direcionada a um gênero específico de estoque, limite o universo a esse gênero; mas, em todos os outros casos, mantenha um universo grande para fins de teste. Medidas de volatilidade são extremamente importantes para considerar no desenvolvimento de um sistema de negociação. Isto é especialmente verdadeiro para as contas alavancadas, que são sujeitas a chamadas de margem se o seu patrimônio cai abaixo de um certo ponto. Os comerciantes devem procurar manter a volatilidade baixa, a fim de reduzir o risco e facilitar a transição dentro e fora de um determinado estoque. O número médio de bares mantidos também é muito importante para assistir 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ê deva ignorar essa estatística. Se possível, aumentar o seu número médio de barras 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 lucros mais altos ou perdas maiores, enquanto a diminuição da exposição significa lucros menores ou perdas menores. No entanto, em geral, é uma boa ideia manter a exposição abaixo de 70%, a fim de reduzir o risco e facilitar a transição dentro e fora de um determinado estoque. A estatística de ganho / perda médio, combinada com a taxa de ganhos por perdas, pode ser útil para determinar o tamanho ideal de posição e gerenciamento de dinheiro usando técnicas como o Critério Kelly. (Veja Administração de Dinheiro Usando 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 sua relação entre ganhos e perdas. O retorno anualizado é importante porque é usado como uma ferramenta para avaliar os retornos de um sistema em relação a outros locais de investimento. É importante não só olhar para o retorno anualizado global, mas também para levar em conta o aumento ou diminuição do risco. Isso pode ser feito observando o retorno ajustado ao risco, que é responsável por vários fatores de risco. Antes de um sistema de negociação ser adotado, ele deve superar todos os outros espaços de investimento em risco igual ou menor. A personalização de backtesting é extremamente importante. Muitos aplicativos de backtesting têm entradas para quantidades de comissão, tamanhos de lotes redondos (ou fracionários), tamanhos de ticks, requisitos de margem, taxas de juros, premissas de slippage, regras de dimensionamento de posição, regras de saída de barra idêntica, configurações de parada (trailing) e muito mais. Para obter os resultados de backtesting mais precisos, é importante ajustar essas configurações para imitar o broker que será usado quando o sistema for ativado. O backtesting às vezes pode levar a algo conhecido como otimização excessiva. Essa é uma condição em que os resultados de desempenho são tão altamente ajustados ao passado que não são mais precisos no futuro. Geralmente, é uma boa ideia implementar regras que se apliquem a todas as ações, ou a um conjunto selecionado de ações específicas, e que não sejam otimizadas na medida em que as regras não sejam 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 tiveram bom desempenho no passado não se dão bem no presente. O desempenho passado não é indicativo de resultados futuros. Certifique-se de que o comércio de papel é um sistema que foi testado com sucesso antes de entrar em operação para garantir que a estratégia ainda se aplica na prática.
O backtesting é um dos aspectos mais importantes do desenvolvimento de um sistema de negociação. Se criado e interpretado corretamente, ele pode ajudar os traders a otimizar e melhorar suas estratégias, encontrar falhas técnicas ou teóricas, bem como ganhar confiança em sua estratégia antes de aplicá-la aos mercados do mundo real.
Backtesting
O que é 'backtesting'
Backtesting é o processo de testar uma estratégia de negociação em dados históricos relevantes para garantir sua viabilidade antes que o negociador arrisque qualquer capital real. Um trader pode simular a negociação de uma estratégia durante um período de tempo apropriado e analisar os resultados para os níveis de lucratividade e risco.
QUEBRANDO "backtesting"
Uma quantidade significativa do volume negociado no mercado financeiro atual é feita por traders que usam algum tipo de automação de computadores. Isso é especialmente verdadeiro para estratégias de negociação baseadas em análises técnicas. O backtesting é parte integrante do desenvolvimento de um sistema de negociação automatizado.
Backtesting significativo.
Quando feito corretamente, o backtesting pode ser uma ferramenta inestimável para a tomada de decisões sobre a utilização de uma estratégia de negociação. O período de tempo de amostra no qual um backtest é realizado é crítico. A duração do período de tempo da amostra deve ser suficientemente longa para incluir períodos de condições de mercado variáveis, incluindo tendências de alta, tendências de baixa e negociação com limite de intervalo. Realizar um teste em apenas um tipo de condição de mercado pode gerar resultados únicos que podem não funcionar bem em outras condições de mercado, o que pode levar a conclusões falsas.
O tamanho da amostra no número de negociações nos resultados do teste também é crucial. Se o número da amostra de negociações for muito pequeno, o teste pode não ser estatisticamente significativo. Uma amostra com muitos negócios durante um período muito longo pode produzir resultados otimizados nos quais um número esmagador de negociações vencedoras se aglutina em torno de uma condição ou tendência de mercado específica que é favorável à estratégia. Isso também pode levar um comerciante a tirar conclusões enganosas.
Mantendo a realidade.
Um backtest deve refletir a realidade na melhor medida possível. Os custos de negociação que, de outra forma, poderiam ser considerados insignificantes pelos comerciantes, quando analisados individualmente, podem ter um impacto significativo quando o custo agregado é calculado ao longo de todo o período de backtesting. Esses custos incluem comissões, spreads e derrapagens, e eles poderiam determinar a diferença entre se uma estratégia de negociação é lucrativa ou não. A maioria dos pacotes de software de backtesting inclui métodos para contabilizar esses custos.
Talvez a métrica mais importante associada ao backtesting seja o nível de robustez da estratégia. Isso é realizado comparando os resultados de um teste de retorno otimizado em um período de tempo de amostra específico (chamado de amostra) com os resultados de um backtest com a mesma estratégia e configurações em um período de tempo de amostra diferente (referido como out - de amostra). Se os resultados forem igualmente lucrativos, a estratégia pode ser considerada válida e robusta, e está pronta para ser implementada em mercados em tempo real. Se a estratégia falhar em comparações fora da amostra, então a estratégia precisa de mais desenvolvimento, ou deve ser abandonada por completo.
Backtesting de estratégia.
O backtesting de estratégia é uma ferramenta essencial para ver se sua estratégia funciona ou não. O software de backtesting simula sua estratégia em dados históricos e fornece um relatório de backtesting, que permite conduzir uma análise adequada do sistema de negociação. A versão de 64 bits permite que você carregue a quantidade de dados necessária para o backtesting mais preciso. Para obter informações técnicas sobre esse recurso, consulte a página Wiki relacionada.
Precisão é a chave.
MultiCharts é uma solução criada especificamente para o desenvolvimento de estratégias e backtesting. Nossa filosofia é que o backtesting de estratégia deve ser tão realista quanto a tecnologia moderna permitir. O Multicharts de 64 bits possibilita lidar com uma enorme quantidade de dados Tick-by-Tick para um backtesting preciso.
Backtesting realista.
Mesmo que nenhuma aproximação possa ser 100% perfeita, fizemos tudo para recriar com precisão condições de mercado passadas e execução de ordens para negociação de estratégia. Mecanismos de backtesting típicos têm muitas suposições e atalhos, que resultam em testes irreais e resultados não confiáveis. O MultiCharts é uma plataforma de negociação no nível institucional que minimiza as premissas e considera vários fatores.
Tecnologia avançada.
O backtesting de estratégia geralmente requer muitos dados e softwares capazes de processá-los. Multi-threading é usado quando você processa otimização de estratégia em MultiCharts. Ele espalha várias tarefas em diferentes núcleos, para que eles sejam concluídos muito mais rapidamente. A versão de 64 bits do MultiCharts permite que você carregue até anos e anos de dados de ticks para movimentos detalhados de preços.
Fácil de ler.
Você pode alterar o modo como seus sinais aparecem no gráfico, em apenas alguns cliques. Os pedidos de saída podem ser conectados por uma linha visível a todos os pedidos de entrada relacionados - a linha será verde se o negócio for lucrativo, vermelho, se não for. Se você não gosta dessas cores ou de qualquer outro aspecto visual, pode alterá-las facilmente.
Escolha sua moeda para backtesting.
A moeda base permite calcular o lucro e a perda durante o backtesting da estratégia com uma moeda especificada para pares de Forex ou símbolos não americanos. Se você backtest sua estratégia em um símbolo que é baseado em uma moeda diferente da sua conta do corretor, então você pode querer aplicar uma conversão de moeda. Para tornar os resultados o mais próximos possível da perfeição, usamos as taxas de câmbio reais para cada dia. Todas as conversões de moeda ocorrem nos bastidores para facilitar a sua negociação. Usamos nossos servidores para solicitar dados em segundo plano e realizar os cálculos necessários.
Todos os fatores essenciais contidos dentro
Nosso software de backtesting considera os seguintes fatores essenciais: liquidez, mudanças de preço tick-by-tick, diferenças de preços ask-bid-trade, comissão, slippage, capital inicial, taxa de juros e tamanho do negócio.
Levando em conta a liquidez.
Quando o mecanismo do MultiCharts faz o backtest de uma estratégia, ele reconhece que nem todas as ordens de limite serão preenchidas devido à falta de liquidez. Por esse motivo, você tem a opção de preencher pedidos quando uma meta de preço é atingida ou quando ela é excedida por um determinado número de pontos (pips). Mais informações estão na nossa página Wiki.
Perguntar, licitar e negociar preços.
O backtesting leva em conta que a compra real acontece a preços de venda, venda real a preços de compra. Isso torna a nossa simulação de backtesting o mais realista possível. Backtesting de estratégia precisa pode dar ao usuário uma emulação mais realista. Para fazer backtest de estratégias de alta frequência, como a arbitragem estatística, o usuário pode precisar levar em conta os dados históricos de compra / venda, além dos dados históricos de comércio.
Simulação tick-by-tick.
O Magnifier Bar é essencial para aumentar a precisão durante o backtesting. Os MultiCharts podem construir barras maiores a partir de componentes menores - barras de segundo e minuto fora dos ticks, barras de hora e dia fora de minutos. Você pode recriar movimentos exatos de preços dentro de cada barra usando o Magnifier Bar. Por exemplo, o Magnifier de Bar pode carregar de forma invisível os minutos que compõem a hora, e a estratégia será backtested minuto a minuto. Saiba mais detalhes técnicos aqui.
Estratégias para a prática imediata.
O mecanismo de backtesting da MultiCharts até emula ordens de mercado, stop, limite, stop limit e one-cancels-other (OCO). Destino de lucro, stop-loss e trailing stops também são recursos de backtesting padrão. Além disso, o MultiCharts vem com mais de 80 estratégias EasyLanguage, para que você possa praticar o backtesting.
OwnData e todos os produtos MCFX foram descontinuados. Por favor, encontre a substituição do MCFX aqui. Bitcoin para gráficos de dólares em TradingView.
Como avaliar, fazer backtest e validar uma estratégia de negociação.
Ultimamente tenho trabalhado com backtesting várias estratégias que invente ou ache de sites como TradingView. Eu vou te guiar pelo processo de como eu:
Identifique uma estratégia possível Encontre uma variedade de ações para executar um backtest estruturado Realize o próprio backtest real.
No final dessas três etapas, posso identificar o grau de sucesso da estratégia e se devo usá-la para negociação ao vivo e (aproximadamente) o quanto eu poderia esperar em um determinado período de tempo com base em determinado número de negociações.
Identificando a estratégia.
Eu identifiquei essa estratégia montada por Chris Moody no TradingView. É chamado de Williams VIX Fix e é baseado nos escritos de Larry Williams em torno de um cálculo Vix sintético. Se você quiser saber mais sobre o VIX, a Wikipédia é um ótimo lugar para começar.
Depois de fazer alguns backtests visuais em várias moedas, desenvolvi um sistema de negociação simples que queria testar. As regras deste sistema são simples:
Insira uma negociação longa para todos os sinais de entrada agressivos ou filtrados gerados pelo sistema, a menos que o RSI Estocástico esteja próximo ou acima de 80 (o RSI Estocástico é um indicador disponível gratuitamente no TradingView e em várias outras plataformas de gráficos financeiros). o RSI está acima de 80 e a linha K cruza a linha D Se ocorrerem vários sinais, adicione à posição atual supondo que as condições no # 1 acima sejam atendidas (por exemplo, se houver duas entradas filtradas em dias concorrentes, uma compraria o mesmo # de ações no dia 2 como no dia 1)
Eu não levei em conta o Money Management pelas regras, pois elas variam para cada operador individual.
Encontrar ações para o backtest.
Eu usei o mapa do FinViz e a Unicorn Bay para encontrar uma variedade de moedas no backtest. Meus critérios para selecionar moedas são os seguintes:
Teste moedas através de setores e indústrias (para evitar, por exemplo, testes de estoques tecnológicos durante anos que as ações de tecnologia viram um boom) Teste pelo menos duas moedas altamente diferentes e não correlacionadas para ver como a estratégia funciona contra conjuntos de dados muito diferentes.
As moedas que decidi fazer backtest foram:
Além disso, testei dois títulos altamente não correlacionados, identificados na página Most / Least Correlated Assets da Unicorn Bay:
Executando o backtest.
Então eu executei através do TradingSim, um simulador de negociação onde você pode praticar estratégias reais usando uma conta simulada. Usando este software, você pode abrir posições em ações usando uma conta falsa e negociar como se fossem ações reais. O único inconveniente é que o backtest é de apenas 2 anos.
Eu continuei a executar o backtest de cada ação ao longo dos 2 anos completos com uma conta falsa de $ 10.000. Para cada comércio, eu coloquei.
20% do capital em risco (que não é necessariamente o que você faria no mundo real, mas eu queria ampliar os resultados neste caso). Os resultados foram promissores. Durante um período de 2 anos, cada ação fez um retorno à saúde. As negociações individuais são listadas aqui.
Mais testes no backtesting.
Embora esses resultados iniciais fossem promissores, dois anos de backtesting realmente não foram suficientes. A fim de testar ainda mais o estresse, eu codifiquei uma estratégia no TradingView com base nas regras do meu sistema de negociação. Você pode encontrar o sistema aqui. Você pode ver e modificá-lo, se desejar, no TradingView.
Os dados da TradingView remontam muito mais (pelo menos até 1968 para muitas ações), então testei novamente cada uma das 13 ações usando a mesma conta virtual de $ 10.000 para ver se elas tinham lucro.
Apenas 1 dos 13 pares não saiu lucrativo (GS - Goldman Sachs). Decidi descobrir por que isso acontecia, e se havia algum padrão que pudesse ser entendido sobre quaisquer ações que talvez não fossem úteis para usar essa estratégia.
Eu usei o screener do TradingView para testar a estratégia em uma variedade de ações de baixa volatilidade, e encontrei um número de candidatos que parecem adequados para testes futuros devido ao seu alto fator de lucro. Uma lista crescente de ações que exibem alto potencial de lucro com essa estratégia é visível aqui. Abaixo estão alguns screenshots de algumas das performances de ações do backtested.
Mais uma vez, nada disso significa dizer que simplesmente colocar todo o seu dinheiro na AAPL em 2004 e simplesmente segurar não é uma ótima estratégia. Você pode fazer isso, assim como ter lucros previsíveis, mesmo com quedas de mercado como em 2001 e 2008 e, através de uma composição, ganhar dinheiro decente com estratégias como essa.
Encaminhe e teste várias ações usando Robinhood e mostre resultados positivos, depois aumente as contribuições de capital Codifique a estratégia / algoritmo para cima em Quantopian e ganhe suporte / capital para negociar essa estratégia Encontre / desenvolva outras estratégias que sejam adequadas para negociação.
Isenção de responsabilidade: Tudo isso é especulativo e não é considerado um conselho de investimento definitivo. Eu não sou responsável por quaisquer lucros ou perdas que alguém experimente usando essa estratégia, seja em formato parcial ou completo. Eu não sou um profissional de investimento ou corretor. Por favor, faça uma pesquisa mais aprofundada antes de usar qualquer uma das estratégias descritas neste post.
O crédito pela estratégia Williams VIX FIX vai para Chris Moody.
Estratégia usada no TradingView disponível aqui.
Lista de cotações de ações que mostram excelentes retornos e curvas de patrimônio disponíveis aqui.
Ao aplaudir mais ou menos, você pode nos indicar quais histórias realmente se destacam.
Timothy Jaeger.
Experiente UX Designer, Trader (Opções, Ações, Forex), HODLer (Crypto), Futurista. Interessado em coisas e coisas.
Trading System Special: Testando sua estratégia.
Você é um chique francês. O sommelier recomenda três vinhos de Bordeaux, cada um grande jogo para o seu jantar. "Me dê o do meio", você diz sem pensar muito. Afinal, eles são vermelhos, mais ou menos do mesmo preço, e terão um sabor mais ou menos parecido com o vinho. Quem se importa, certo?
Uma rápida palheta de vinho não o fará nem quebrará. Mas se você escolher uma estratégia de negociação como essa, poderá ter algumas surpresas financeiras amargas. Por exemplo, considere três estratégias, cada uma com um retorno de 10% no ano anterior. Todos envolviam compra e venda de ações e uso de análise técnica, bem como o uso de stop losses. Mas eles não estavam nem perto do mesmo. Porque todos os três poderiam ter tido riscos diferentes e chegado a esse retorno de 10% ao longo de diferentes caminhos.
Talvez um ganhasse menos de 1% de retorno por mês, todos os meses do ano. Talvez outro tenha aumentado 40% até algumas semanas antes, e depois devolveu a maior parte do lucro muito rapidamente. E talvez o último tenha oscilado 10% a cada mês, e agora você está vendo a oscilação de até 10% antes da próxima queda de 10%. Não seria bom antecipar e planejar possíveis variações com dados reais e não com um monte de adivinhações antes de se comprometer com uma estratégia? Há sim.
Tomando Ações: Redemoinho, Cheiro, Sip.
Três métricas podem ajudá-lo a ver os vários caminhos possíveis e a fazer escolhas mais informadas.
2. Ganhar comércios / perder comércios.
Não há garantias, mas o uso dessas métricas é outra forma inteligente de testar estratégias antes de se comprometer com dólares reais e fazer os garçons se acostumarem com grandes dicas. Vamos nos apoiar no thinkorswim ® e em uma planilha para testar as estratégias.
PASSO 1: Mine os dados.
1. Primeiro, abra sua plataforma thinkorswim e vá para a guia Gráficos. Clique no botão / ícone Estudos no canto superior direito. Em seguida, selecione Editar estudos para obter a caixa "Editar estudos e estratégias".
2. Clique na guia Estratégias no canto superior esquerdo da caixa. Você verá os estudos técnicos pré-programados que você pode fazer backtest. (Veja a Figura 1.)
Usar a ferramenta de teste de estratégia do thinkorswim leva você a metade do caminho para determinar se uma estratégia tem o que você está procurando. Apenas para fins ilusórios.
3. Para este artigo, carregue “Bollinger-BandsLE” e “BollingerBandsSE” clicando duas vezes em seus nomes e pressionando o botão Aplicar no canto inferior direito. Você deve ver sinais de compra e venda que seguem as regras estabelecidas nos estudos da Bollinger Band.
4. Consulte a Figura 2 e passe o cursor diretamente sobre um sinal de compra ou venda no gráfico e clique com o botão direito do mouse. Você deve ver "Mostrar relatório" no menu suspenso.
FIGURA 2: TESTE A ESTRATÉGIA. Depois de traçar a estratégia em um gráfico, a próxima etapa é enviar os dados para uma planilha para aumentar o tamanho dos itens com mais cuidado, com algumas métricas "diretas". Apenas para fins ilustrativos.
5. A caixa "Relatório de estratégia" exibe os sinais de compra e venda dessa estratégia junto com as informações de desempenho que usaremos nas métricas a seguir.
6. Você também verá um número "Total P / L" para essa estratégia. É claro que não há garantia de que seu desempenho passado trará os mesmos resultados futuros, mas se a P / L for positiva, alguns usarão essa estratégia para sinalizar negociações ao vivo com dinheiro real. Nesse ponto, clique no botão "Exportar arquivo" no canto inferior direito para despejar os dados dessa estratégia em uma planilha para análise detalhada.
Além disso, você não pode ver muitas informações sobre uma estratégia apenas observando seu P / L total. Mas, neste ponto, retire seu programa de planilhas favorito para analisar as três métricas a seguir.
PASSO 2: trabalhe na planilha.
Depois de exportar os dados da Etapa 1 para sua planilha favorita, você está pronto para lidar com as métricas.
METRIC 1: MAX DRAWDOWN.
Perder dinheiro em uma negociação é como um vinho que azedou. Desagradável e estridente na melhor das hipóteses. Mas o que é realmente horrível é obter um bom lucro, depois dar tudo de volta e mais.
A redução máxima é o termo que descreve a perda do valor máximo da sua conta para o menor valor subsequente. Por exemplo, sua conta começa em US $ 10.000 e uma estratégia de negociação gera US $ 4.000. Isso leva o valor da sua conta para US $ 14.000. Mas a estratégia de negociação tem algumas negociações perdedoras que equivalem a US $ 8.000. Isso leva sua conta de US $ 14.000 a US $ 6.000. Essa queda de $ 8.000 é o seu rebaixamento, e o rebaixamento máximo é a perda de valor do pico para o vale.
Geralmente, rebaixamentos máximos menores são melhores que rebaixamentos máximos maiores. Quanto maior o rebaixamento máximo, mais drasticamente o valor da sua conta pode mudar.
Para reduzir o rebaixamento, você pode considerar experimentar preços de stop loss mais próximos ou metas de lucro que reduziriam perdas e obteriam lucros mais rapidamente. Fazer isso, no entanto, também pode reduzir o retorno.
COMO ACHAR: para localizar o empate máximo de uma estratégia, exporte o arquivo de dados que criamos em uma planilha. Calcule um total em execução para a coluna Trade P / L, que mostrará o impacto de cada novo trade. Procure o maior valor desse total em execução e, em seguida, o valor mais baixo depois disso. A diferença é o rebaixamento máximo da estratégia.
MÉTRICA 2: COMÉRCIOS VENCEDORES / COMERCIAIS PERDIDOS.
Pense no P / L de duas séries de cinco negociações. A primeira série tem & plus; $ 100, & plus; $ 100, & plus; $ 100, & plus; $ 100, - $ 300, para um total de & plus; $ 100 (menos custos de transação). A segunda série tem - $ 50, - $ 50, - $ 50, - $ 50, e mais; $ 300, para um total de & plus; $ 100 (menos custos de transação). O lucro total das duas séries de negociações é o mesmo. Mas eles chegam lá de forma diferente.
A primeira série tem quatro transações lucrativas e uma grande negociação perdida. A segunda série tem quatro negociações perdedoras menores e uma grande negociação vencedora. Com a segunda série, você pode enfrentar muitas negociações perdidas, o que consome seu capital comercial, até que você consiga um mercado vencedor grande o suficiente para compensar as perdas. E se esse vencedor não vier por muito tempo?
A primeira série, por outro lado, é mais gerenciável. É claro que você não quer que um grande perdedor acabe com seus lucros. Mas você pode analisar a estratégia para ver se algo pode ser melhorado para evitar uma grande perda. Pode ser mais fácil resolver um problema de estratégia com alguns grandes comércios perdedores, do que um com muitos comércios perdedores e poucos vencedores. Por exemplo, adicionar um stop loss à estratégia pode reduzir a magnitude das perdas.
COMO ENCONTRAR: Para comparar a vitória a negociações perdidas, conte os números positivos e negativos na coluna Trade P / L da planilha que você criou da Métrica 1. Considere a proporção de vencedores para perdedores, ou a proporção entre vencedores e total de negociações .
MÉTRICA 3: RELAÇÃO DE SHARPE.
Criado pelo ganhador do prêmio Nobel, William Sharpe, o índice de Sharpe é usado por gerentes financeiros profissionais para avaliar fundos, porque permite que eles comparem estratégias com um único número. O índice de Sharpe pega o retorno da estratégia, subtrai a taxa livre de risco e a divide pelo desvio padrão dos retornos da estratégia. Um maior índice de Sharpe pode ser melhor do que um menor índice de Sharpe. Quando os retornos são altos e seu desvio padrão (ou seja, risco) é baixo, o índice de Sharpe é alto. Então, duas estratégias podem ter o mesmo retorno. Mas se a estratégia A tem um desvio padrão de retornos (risco) que é metade do desvio padrão dos retornos para a estratégia B, a estratégia A terá um índice de Sharpe duas vezes maior.
Sharpe permite comparar duas estratégias, com risco ajustado. Em outras palavras, para um nível igual de risco, quanto mais retorno uma estratégia oferece? Um índice elevado de Sharpe pode significar que os retornos foram relativamente estáveis - eles não flutuaram muito em relação ao nível médio. Isso também pode significar que os rebaixamentos foram menores, e a proporção de vencer para perder negócios foi maior.
COMO ENCONTRÁ-LO
Para calcular um índice de Sharpe simples para uma estratégia na mesma planilha, consulte a barra lateral abaixo (“Como criar um índice de Sharpe”), para obter detalhes sobre cada uma das quatro etapas a seguir.
1. Divida o número de Trade P / L pelo preço das ações da transação de abertura para obter o retorno da transação.
2. Calcule os retornos comerciais médios somando todos os retornos e dividindo pelo número de negócios.
3. Em seguida, calcule o desvio padrão dos retornos.
4. Para obter o índice de Sharpe, divida a média pelo desvio padrão.
Depois de obter as três métricas - redução máxima, negociações vencedoras / perdedoras e índice de Sharpe -, você terá uma imagem mais completa. Agora, cada um desses números tem limitações, portanto, olhar para todos eles oferece uma visão mais completa da estratégia. E um número não é necessariamente melhor que o outro. Então você não quer mudar a estratégia para melhorar uma métrica à custa dos outros.
Como criar um índice de Sharpe.
1. Para calcular o retorno em uma negociação, se o número P / L da negociação for, digamos, célula H9 e o preço de negociação da ação estiver na célula F8, digite a fórmula = H9 / (F8 * 100) em uma célula vazia à direita dos dados. A razão pela qual você multiplica o preço de negociação por 100 é que você deseja dividir o P / L pelo custo total do negócio. Multiplicando o preço da ação em 100, você recebe o custo de 100 ações. [Nota: Teoricamente, você subtrairia a taxa livre de risco ao longo da vida do negócio, mas com taxas de juros tão baixas quanto são agora, vamos pular essa etapa por uma questão de simplicidade.] Faça isso para todos os Negócios Número P / L, com o retorno das células de negociação na mesma coluna.
2. Para calcular o retorno médio por negociação, some os números de retorno e divida pelo número de seus P / Ls de Comércio. Você pode usar uma fórmula = média (K8: K30) se todos os números de retorno estiverem na coluna K, das células 8 a 30.
3. O desvio padrão dos retornos mede até que ponto os retornos individuais variam do retorno médio. Você deriva (você tem uma mistura de vozes neste gráfico) e subtraindo o retorno médio de cada um dos retornos individuais. Em seguida, eleve a diferença (multiplique a diferença por si só) para tornar todos os números positivos. Em seguida, some todas as diferenças quadradas e divida essa soma pelo número de P / Ls de negociação. Finalmente, pegue a raiz quadrada da média das diferenças quadradas para obter o desvio padrão. A fórmula seria = stdev (K8: K30) em uma planilha.
4. Para obter o índice de Sharpe, divida o retorno médio pelo desvio padrão dos retornos. Se o retorno médio estava na célula K32 e o desvio padrão estava na célula K34, digite = K32 / K34 para ver o índice de Sharpe.
Dentro deste problema:
Pergunte ao Suit: Blending Watch e uma plataforma de negociação Hot Mobile.
Scripts legais: crie uma ferramenta de dinâmica de ações com uma torção.
DENTRO DESTA EDIÇÃO # 26:
Ouro para melhor revista impressa em geral.
Sociedade de Comunicações Financeiras.
Melhor Site Dirigido por Conteúdo.
para Ticker Tape.
Prêmios de Marketing de Conteúdo.
A Ticker Tape oferece novos insights sobre estratégias de investimento para investidores - estejam eles rastreando um estoque individual ou assistindo a um grande índice de mercado, como o S & P 500 (SPX), o Dow 30 (DJX) ou o Nasdaq 100 (NDX ). Nós nos aprofundamos em diversos tópicos, incluindo negociação de opções, futuros de títulos, investimento em aposentadoria, 529 planos de poupança para a faculdade, volatilidade do mercado de ações, ferramentas de pesquisa para investidores e muito mais.
Backtesting é a avaliação de uma determinada estratégia de negociação usando dados históricos. Os resultados apresentados são hipotéticos, eles não ocorreram de fato e podem não levar em consideração todas as taxas de transação ou impostos que você incorreria em uma transação real.
A volatilidade do mercado, o volume e a disponibilidade do sistema podem atrasar o acesso à conta e as execuções comerciais.
O desempenho passado de uma segurança ou estratégia não garante resultados futuros ou sucesso.
As opções não são adequadas para todos os investidores, pois os riscos especiais inerentes à negociação de opções podem expor os investidores a perdas potencialmente rápidas e substanciais. Negociação de opções sujeita a revisão e aprovação da TD Ameritrade. Por favor, leia Características e Riscos das Opções Padronizadas antes de investir em opções.
A documentação de suporte para quaisquer reivindicações, comparações, estatísticas ou outros dados técnicos será fornecida mediante solicitação.
A informação não tem a intenção de ser um conselho de investimento ou interpretada como uma recomendação ou endosso de qualquer investimento ou estratégia de investimento em particular, e é apenas para fins ilustrativos. Certifique-se de entender todos os riscos envolvidos em cada estratégia, incluindo custos de comissão, antes de tentar fazer qualquer negociação. Os clientes devem considerar todos os fatores de risco relevantes, incluindo suas próprias situações financeiras pessoais, antes de negociar.
TD Ameritrade, Inc., membro FINRA / SIPC. A TD Ameritrade é uma marca registrada de propriedade conjunta da TD Ameritrade IP Company, Inc. e do The Toronto-Dominion Bank. © 2018 TD Ameritrade.
No comments:
Post a Comment