Monday 25 September 2017

Backtesting stock trading sistemas


Backtesting O que é Backtesting Backtesting é o processo de testar uma estratégia comercial em dados históricos relevantes para garantir sua viabilidade antes que o comerciante arrisque qualquer capital real. Um comerciante pode simular a negociação de uma estratégia durante um período de tempo adequado e analisar os resultados para os níveis de rentabilidade e risco. BREAKING DOWN Backtesting Se os resultados satisfazem os critérios necessários que são aceitáveis ​​para o comerciante, a estratégia pode ser implementada com algum grau de confiança de que resultará em lucros. Se os resultados forem menos favoráveis, a estratégia pode ser modificada, ajustada e otimizada para alcançar os resultados desejados, ou pode ser completamente descartada. Uma quantidade significativa do volume negociado no mercado financeiro de hoje é feito por comerciantes que usam algum tipo de automação de computador. Isto é especialmente verdadeiro para estratégias de negociação com base em análise técnica. Backtesting é uma parte integrante do desenvolvimento de um sistema automatizado de negociação. Backtesting Significado Quando feito corretamente, backtesting pode ser uma ferramenta inestimável para tomar decisões sobre se deve utilizar uma estratégia de negociação. O período de tempo de amostra em que um backtest é realizado é crítico. A duração do período de tempo de amostragem 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 de intervalo limitado. Realizar um teste em apenas um tipo de condição de mercado pode produzir 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 negócios nos resultados do teste também é crucial. Se o número de amostras de ofícios é muito pequeno, o teste pode não ser estatisticamente significativo. Uma amostra com muitas transações durante um período muito longo pode produzir resultados otimizados em que um número esmagador de trades vencedores coalescer em torno de uma condição de mercado específico ou tendência que é favorável para a estratégia. Isso também pode causar um comerciante para tirar conclusões enganosas. Mantê-lo real Um backtest deve refletir a realidade na medida do possível. Os custos de negociação que de outra forma poderiam ser considerados negligenciáveis ​​pelos comerciantes quando analisados ​​individualmente podem ter um impacto significativo quando o custo agregado é calculado durante todo o período de backtesting. Estes custos incluem comissões, spreads e derrapagens, e eles poderiam determinar a diferença entre se uma estratégia de negociação é rentável 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. Isto é conseguido comparando os resultados de um teste de volta otimizado em um período de tempo de amostra específico (referido como in-sample) 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 - Da amostra). Se os resultados são igualmente rentáveis, então 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. Teste de teste: interpretando o passado Backtesting é um componente chave do desenvolvimento do sistema de comércio eficaz. É realizado reconstruindo, com dados históricos, os negócios 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 comerciantes podem otimizar e melhorar suas estratégias, encontrar quaisquer falhas técnicas ou teóricas, e ganhar confiança em sua estratégia antes de aplicá-lo aos mercados reais. A teoria subjacente é que qualquer estratégia que funcionou bem no passado é susceptível de funcionar bem no futuro e, inversamente, qualquer estratégia que teve um desempenho ruim no passado é susceptível de funcionar mal no futuro. Este artigo dá uma olhada no que os aplicativos são usados ​​para backtest, que tipo de dados são obtidos, e como colocá-lo para usar Os dados e as ferramentas Backtesting pode fornecer abundância de estatística valiosa comentários sobre um determinado sistema. Algumas estatísticas de backtesting universal incluem: Lucro líquido ou perda - 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 - Percentagem máxima de subida e descida. Médias - Percentagem de ganho médio e perda média, média de barras mantidas. Exposição - Percentual de capital investido (ou exposto ao mercado). Razões - Relação vitórias-perdas. Retorno anualizado - Retorno percentual ao longo de um ano. Retorno ajustado ao risco - Retorno percentual em função do risco. Normalmente, backtesting software terá duas telas que são importantes. A primeira permite que o profissional personalize as configurações para backtesting. Essas personalizações incluem tudo, desde o período de tempo até os custos de comissão. Aqui está um exemplo de tal tela no AmiBroker: A segunda tela é o relatório de resultados de backtesting real. Isto é onde você pode encontrar todas as estatísticas mencionadas acima. Novamente, aqui está um exemplo desta tela no AmiBroker: Em geral, a maioria dos softwares comerciais contém elementos semelhantes. Alguns programas de software high-end também incluem funcionalidades adicionais para realizar o dimensionamento automático da posição, otimização e outros recursos mais avançados. Os 10 mandamentos Há muitos fatores que os comerciantes prestam atenção quando eles estão backtesting estratégias de negociação. Aqui está uma lista das 10 coisas mais importantes a lembrar enquanto backtesting: Tome em conta as tendências do mercado amplo no período em que uma determinada estratégia foi testada. Por exemplo, se uma estratégia só foi testada de 1999 a 2000, pode não estar bem em um mercado de baixa. É muitas vezes uma boa idéia para backtest durante um período de tempo longo que engloba vários tipos diferentes de condições de mercado. Leve em conta o universo no qual o backtesting ocorreu. Por exemplo, se um sistema de mercado amplo é testado com um universo consistindo de ações de tecnologia, pode deixar de fazer bem em diferentes setores. Como regra geral, se uma estratégia é direcionada para um gênero específico de estoque, limitar o universo a esse gênero, mas, em todos os outros casos, manter um grande universo para fins de teste. Medidas de volatilidade são extremamente importantes a considerar no desenvolvimento de um sistema de comércio. Isto é especialmente verdadeiro para as contas alavancadas, que são submetidas a chamadas de margem se a sua equidade desce abaixo de um certo ponto. Os comerciantes devem procurar manter a volatilidade baixa, a fim de reduzir o risco e permitir uma transição mais fácil dentro e fora de um determinado estoque. O número médio de barras mantidas também é muito importante para assistir ao desenvolver um sistema de negociação. Embora a maioria dos backtesting software inclui custos de comissão nos cálculos finais, isso não significa que você deve ignorar esta estatística. Se possível, aumentar o número médio de barras mantidas pode reduzir os custos de comissão e melhorar seu retorno geral. A exposição é uma espada de dois gumes. Exposição aumentada pode conduzir aos lucros mais elevados ou aos perdas mais elevados, quando a exposição diminuída significa lucros mais baixos ou perdas mais baixas. No entanto, em geral, é uma boa idéia para manter a exposição abaixo de 70, a fim de reduzir o risco e permitir uma transição mais fácil dentro e fora de um determinado estoque. A estatística média de perda de ganho, combinada com a relação ganhos-perdas, pode ser útil para determinar o dimensionamento de posição ótimo e a administração de dinheiro usando técnicas como o Critério de Kelly. (Veja Money Management Usando o Critério 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 ganhos-para-perdas. Retorno anualizado é importante porque é usado como uma ferramenta para comparar os retornos de sistemas contra outros locais de investimento. É importante não só olhar para o retorno global anualizado, mas também para ter em conta o risco aumentado ou diminuído. Isso pode ser feito olhando para o retorno ajustado ao risco, que explica vários fatores de risco. Antes de um sistema de negociação ser adotado, ele deve superar todos os outros locais de investimento em igual ou menos risco. Backtesting personalização é extremamente importante. Muitas aplicações de backtesting têm entrada para valores de comissão, tamanhos de lote redondos (ou fracionários), tamanhos de carrapatos, requisitos de margem, taxas de juros, pressupostos de deslizamento, regras de dimensionamento de posição, regras de saída da mesma barra e configurações de parada. Para obter os resultados de backtesting mais precisos, é importante ajustar essas configurações para imitar o corretor que será usado quando o sistema for ativado. Backtesting às vezes pode levar a algo conhecido como super-otimização. Esta é uma condição onde os resultados de desempenho são ajustados tão altamente ao passado que eles não são mais precisos no futuro. Geralmente, é uma boa idéia implementar regras que se apliquem a todas as ações ou a um conjunto selecionado de ações segmentadas e não sejam otimizadas na medida em que as regras não sejam mais compreensíveis pelo criador. Backtesting nem sempre é a maneira mais precisa para avaliar a eficácia de um determinado sistema de comércio. Às vezes, as estratégias que funcionaram bem no passado não conseguem fazer bem no presente. O desempenho passado não é indicativo de resultados futuros. Certifique-se de comércio de papel de um sistema que foi testado com sucesso antes de ir ao vivo para ter certeza de que a estratégia ainda se aplica na prática. Conclusão Backtesting é um dos aspectos mais importantes do desenvolvimento de um sistema comercial. Se criado e interpretado corretamente, pode ajudar comerciantes a aperfeiçoar e melhorar suas estratégias, encontrar todas as falhas técnicas ou teóricas, assim como ganhar a confiança em sua estratégia antes de aplicá-la aos mercados reais. Recursos Tradecision (tradecision) - High-end Desenvolvimento do Sistema de Negociação AmiBroker (amibroker) - Desenvolvimento do Sistema de Negociação de Orçamento. Um tipo de estrutura de remuneração que os gestores de fundos de hedge normalmente empregam em que parte da remuneração é baseado no desempenho. Uma proteção contra a perda de renda que resultaria se o segurado faleceu. O beneficiário nomeado recebe o. Uma medida da relação entre uma mudança na quantidade demandada de um bem particular e uma mudança em seu preço. Preço. O valor de mercado total do dólar de todas as partes em circulação de uma companhia. A capitalização de mercado é calculada pela multiplicação. Frexit curto para quotFrancês exitquot é um spin-off francês do termo Brexit, que surgiu quando o Reino Unido votou. Uma ordem colocada com um corretor que combina as características de ordem de parada com as de uma ordem de limite. Uma ordem stop-limit will.9. Back Testing A arte de testar de volta Como eu já mencionei antes, uma das coisas que eu realmente amo sobre a negociação é que, ao contrário de qualquer outro negócio, você pode testar completamente o seu modelo de negócio (plano de negociação) sem arriscar dinheiro real. Na negociação, este processo de avaliação é chamado de volta testing. Back testes é a área agora mais negligenciada pelos comerciantes. Ive falou sobre a importância da psicologia e gestão de dinheiro em capítulos anteriores e por isso tem um monte de outros treinadores de negociação. Tanto assim, há agora um bevy da informação e da consciência ao redor. Você só tem que navegar na net para ver o quanto foco é colocado sobre estas áreas como deve haver. Mas toda esta atenção parece ser à custa de back testing. Como resultado da negociação de volta de teste, eu acho, tornou-se agora a nova área menos compreendida e apreciada de negociação. Por que o teste de volta é tão importante? O teste de troca de volta é mais importante porque ele afeta diretamente as entradas e saídas, o gerenciamento de dinheiro e a psicologia das seguintes maneiras. O teste de entradas e saídas permite testar todo o desempenho do sistema usando dados históricos. Com essa informação, você pode fazer os ajustes necessários para produzir os resultados que você está procurando. O teste de gestão de dinheiro de volta permite testar vários modelos de gestão de dinheiro para ver qual funciona melhor com seu sistema. Psicologia, como discutido anteriormente no livro, a compreensão de seus sistemas de pontos fortes e fracos, mesmo que eles estão apenas no papel vai melhorar a sua confiança comercial. Isso terá um efeito indizível sobre o seu desempenho quando você começar a negociar de verdade. Seja qual for o critério de análise técnica que você usa para negociar com as médias móveis, castiçais, fugas de volatilidade, retrocessos Fibonacci ou qualquer outro sistema de comércio você vai precisar de volta testá-lo completamente, a fim de remover qualquer dúvida possível sobre sua capacidade. Sem negociação de volta testes, surge uma falta de confiança e, normalmente, força os comerciantes a questionar seus próprios sistemas de negociação. Eles cedem à tentação de modificar seu plano de negociação, muitas vezes com consequências devastadoras. Esta tentação normalmente vem de uma seqüência de negociações perdedoras ou uma oportunidade de substituir seu sistema de comércio com um novo indicador whiz-bang que é a última moda falada em fóruns de bate-papo. Qualquer coisa que parece bom demais para ser verdade vai atrair a atenção de um comerciante que não está satisfeito com seu sistema comercial, simplesmente porque ela não testou adequadamente o seu sistema em primeiro lugar. Ela não acumulou a necessária confiança necessária para trocar com sucesso o sistema que desenvolveu. A minha estratégia de negociação será rentável Esta é a pergunta mais frequente no mundo do comércio. O autor Mark Jurik teve um ir em respondê-lo em seu livro Negociação Computadorizada, como mostrado na Caixa 9.1. Fonte: Jurik, M 1999, Negociação Computadorizada: Maximizando o Dia de Negociação e Lucros de Noite, New York Institute of Finance, Nova York. Mas o que é negociação de volta testando exatamente Trading backtesting é o processo de testar uma estratégia comercial usando dados históricos, em vez de testá-lo em tempo real com dinheiro real. As métricas obtidas a partir do teste podem ser usadas como uma indicação de quão bem a estratégia teria executado se tivesse sido aplicada a trades anteriores. Interpretando esses resultados, em seguida, fornece ao comerciante com métricas suficientes para avaliar o potencial do sistema de comércio. Logicamente, sabemos que os resultados deste tipo de teste não será capaz de prever retornos futuros com precisão pontual, no entanto, ele pode fornecer um indicador sobre se você deve mesmo perseguir um sistema comercial ou não. O que é mais, se você decidir ir em frente e trocar o sistema, ele vai lhe dar guias sobre o que esperar. Mas a questão permanece: como você pode testar um desempenho de sistemas de negociação ao longo do tempo? Existem apenas duas maneiras de fazer isso manualmente ou com software de computador. Para ser honesto, o software de computador é a única opção real. Eu tentei ambos os métodos de teste e testes manuais não é apenas demorado, mas muito difícil de replicar e testar de forma eficaz. Os benefícios derivados do software de backtesting de negociação não podem ser superestimados. Ele vai lhe poupar tempo e proporcionar uma oportunidade infinita para afinar e testar seu sistema. Um pequeno investimento em capital para comprar software de teste de volta boa potencialmente você vai economizar milhares no mercado é um investimento muito sábio, se você está pensando em projetar um sistema comercial bem sucedido e mecânico. Mecânica back testing Por favor, entenda, desde que o seu sistema de negociação mecânica trabalha exclusivamente com dados de preços (aberto, alto, baixo, fechar, volume), você será capaz de usar software de teste de volta. Por exemplo, digamos que você crie um sistema de negociação mecânico com a seguinte regra de entrada: Regra: Compre uma garantia quando a média móvel de 10 dias do preço de fechamento ultrapassar a média móvel de 30 dias do preço de fechamento. Esta regra pode ser testada muito facilmente sobre os dados históricos. Por outro lado, a regra do sinal de compra pode ser um pouco mais complexa, como: Regra: Compre uma garantia quando a média móvel de 10 dias do preço de fechamento ultrapassar a média móvel de 30 dias do preço de fechamento ea relação PE 75 ou inferior ao seu valor três meses antes. Esta regra introduz dados que muitas vezes não são fornecidos ou mantidos em um banco de dados de informações de preços. Para testar com sucesso o teste, isso envolveria a obtenção de dados históricos de uma segurança, bem como a relação preço / lucro (razão PE). Tipicamente, os dados históricos de um grupo de ações incluirão apenas os índices aberto, alto, baixo, fechado e de volume Para cada período. Devido a esta limitação, muitos sistemas de negociação mecânica são projetados em torno de indicadores puramente preço técnico. Infelizmente, a maioria dos mecânicos sistema de negociação com base em dados fundamentais está além do escopo de investidores de varejo devido à falta de dados históricos disponíveis para realizar um teste de negociação completa de volta. Software de teste de volta Felizmente, nestes dias, muitos pacotes gráficos têm software de teste de volta construído dentro Se você seguiu o processo de seleção de um pacote de gráficos no capítulo anterior, você deve ter encontrado um com back testando capacidades incluídas ou encontrado um que é compatível Com outro pacote off-the-shelf. Para aqueles de vocês que decidiram comprar o MetaStock no capítulo 8, o TradeSim 8211 ultimate-trading-systemstradesim é provavelmente o simulador de mercado mais realista e verdadeiro que eu encontrei. Ele pode rapidamente testar e avaliar um sistema de negociação, seja uma única segurança ou um portfólio de múltiplas seguranças. Eu acredito que tading o teste traseiro é a única maneira de remover a auto-dúvida. Depois de ter estabelecido que você tem um sistema de comércio confiável e robusto só então você vai ser confiante na negociação dele. Da mesma forma que o seu software de gráficos, certifique-se de conhecer o seu pacote de volta à frente. Você não será capaz de tirar o melhor proveito dela, a menos que você entenda completamente como ele funciona eo que você pode fazer com ele. Soluções alternativas Infelizmente, tenho visto muitos clientes nunca bastante obtê-lo no que diz respeito ao teste de volta. Para muitos, software de teste de volta é simplesmente demasiado técnico. Se você cair nessa categoria, não desista. É um passo crítico no processo de design do sistema. Para os menos técnicos, eu encontrei uma solução chamada Trading Performance Analyzer ultimate-trading-systemstpa. É fácil de usar e perfeito para analisar seu sistema antes de negociá-lo em tempo real. Nota importante: Se você se encontrar testando e re-testing na esperança de tropeçar através dessa bala de prata, lembre-se, você nunca vai criar um sistema comercial que tem uma taxa de 100 sucesso. Muitos tentaram (eu incluído) e todo mundo falhou. Você deve estar à procura de um bom sistema de negociação com drawdown mínimo e um bom risco para recompensa ratio. Many sistemas de negociação têm mais negociações perdedoras do que ganhar e ainda assim eles fazem dinheiro. Como o gerenciamento de dinheiro. (Ver capítulo 6.) A peça final no quebra-cabeças de design de sistema é pegar o sistema de negociação que você projetou nos capítulos anteriores e testá-lo. Ao testar seus sistemas você acabou de se colocar entre os top 1 dos comerciantes, garantindo seu sucesso. Parabéns Comprar um pacote de teste de negociação de volta: TradeSim 8211 ultimate-trading-systemstradesim Trading Performance Analyzer 8211 ultimatetradingsystemstpa Aprenda o seu software de teste de volta escolhido dentro e por fora. Back testar seu sistema recém-projetado, incluindo sua entrada, saídas e regras de gestão de dinheiro. Você verificou Portfolio123 Por 50 dólares por mês você tela para variáveis ​​técnicas e fundamentais, backtest-lo, fazer verificações de robustez (entradas aleatórias centenas de vezes para garantir que você não é cereja escolhendo os resultados) e testes de simulação com comprar e vender regras separadas , Deslizamento, universos feitos sob encomenda, blá, blá, blá. Você pode usá-lo por 45 dias como um teste gratuito se você usar o código HKURTIS ao se inscrever para testá-lo. Antes Portfolio123 eu pensei que somente Zacks Research Wizard era uma alternativa de baixo custo 8211, mas centenas de dólares para a versão aguada, viés de sobrevivência e outros problemas 8211 não, obrigado. IMO seu software de grau institucional para cerca de 120 o custo. Jesuraj 7 de março de 2012 às 5:07 am Oi Dave, eu aconteceu de ler este excelente aritcle. Em Metastock, eu gostaria de reservar lucro para apenas metade da minha posição e eu não poderia encontrar uma maneira de fazer isso. Você poderia por favor me avise se tal teste é possível em Metastock. Obrigado e respeito Jesuraj

No comments:

Post a Comment