Saturday 12 August 2017

Como Backtest Seu Trading Sistema


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 coalesce 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 abandonado completamente. Testar suas idéias de negociação Uma das coisas mais úteis que você pode fazer na janela de análise é a de back - Teste sua estratégia comercial em dados históricos. Isso pode lhe dar uma visão valiosa em pontos fortes e fracos de seu sistema antes de investir dinheiro real. Este recurso único AmiBroker é pode economizar muito dinheiro para você. Escrevendo suas regras de negociação Primeiro você precisa ter regras objetivas (ou mecânicas) para entrar e sair do mercado. Este passo é a base da sua estratégia e você precisa pensar sobre isso sozinho, já que o sistema deve corresponder a sua tolerância ao risco, tamanho de carteira, técnicas de gerenciamento de dinheiro e muitos outros fatores individuais. Depois de ter suas próprias regras para negociação você deve escrevê-los como comprar e vender regras em AmiBroker Formula Lanugage (mais curto e tampa se você quiser testar também negociação curta). Neste capítulo vamos considerar muito básico de média móvel cruzar o sistema. O sistema compraria contratos de ações quando o preço próximo sobe acima da média móvel exponencial de 45 dias e venderá contratos de ações quando o preço próximo cair abaixo da média móvel exponencial de 45 dias. A média móvel exponencial pode ser calculada em AFL usando sua função embutida EMA. Tudo o que você precisa fazer é especificar a matriz de entrada eo período de média, de modo que a média móvel exponencial de 45 dias dos preços de fechamento pode ser obtida pela seguinte declaração: O identificador de fechamento refere-se à matriz incorporada que mantém os preços de fechamento do símbolo atualmente analisado . Para testar se o preço de fechamento cruza acima da média móvel exponencial, usaremos função cruzada interna: buy cross (close, ema (close, 45)) A declaração acima define uma regra de negociação de compra. Dá quot1quot ou quottruequot quando o preço próximo cruza acima do ema (próximo, 45). Então podemos escrever a regra de venda que daria quot1quot quando acontecer a situação oposta - fechar preço cruza abaixo ema (close, 45): sell cross (ema (close, 45), close) Por favor, note que estamos usando a mesma função cross, A ordem inversa dos argumentos. A fórmula completa para negócios longos será parecida com a seguinte: cross (close, ema (close, 45)) cross (ema, close, close) NOTA: Para criar uma nova fórmula, abra o Formula Editor usando o Analysis-gtFormula Editor , Digite a fórmula e escolha Tools-gtSend no menu Análise no editor de fórmulas Para testar novamente o seu sistema, basta clicar no botão Teste de retrocesso na janela Análise automática. Certifique-se de ter digitado a fórmula que contém, pelo menos, comprar e vender regras comerciais (como mostrado acima). Quando a fórmula está correta, a AmiBroker começa a analisar seus símbolos de acordo com suas regras de negociação e gera uma lista de negócios simulados. Todo o processo é muito rápido - você pode testar milhares de símbolos em questão de minutos. A janela de progresso mostrará o tempo de conclusão estimado. Se quiser interromper o processo, basta clicar no botão Cancelar na janela de progresso. Quando o processo estiver concluído, a lista de negócios simulados é mostrada na parte inferior da janela de análise Automática. (O painel Resultados). Você pode examinar quando os sinais de compra e venda ocorreram apenas clicando duas vezes no comércio no painel Resultados. Isso lhe dará sinais brutos ou não filtrados para cada bar quando as condições de compra e venda forem atendidas. Se você quiser ver apenas setas de comércio único (abertura e fechamento do comércio atualmente selecionado), você deve clicar duas vezes na linha enquanto mantém pressionada a tecla SHIFT. Alternativamente, você pode escolher o tipo de exibição selecionando o item apropriado no menu de contexto que aparece quando você clica no painel de resultados com o botão direito do mouse. Além da lista de resultados, você pode obter estatísticas muito detalhadas sobre o desempenho de seu sistema clicando no botão Relatório. Para saber mais sobre as estatísticas do relatório, consulte a descrição da janela do relatório. Alterando suas configurações de teste de volta O motor de teste de volta em AmiBroker usa alguns valores predefinidos para executar sua tarefa, incluindo o tamanho da carteira, periodicidade (dailyweeklymonthly), quantidade de comissão, taxa de juros, perda máxima e metas alvo de lucro, tipo de comércios, campos de preço e assim em. Todas essas configurações podem ser alteradas pelo usuário usando a janela de configurações. Depois de alterar as configurações, lembre-se de executar novamente o teste de volta se desejar que os resultados estejam em sincronia com as configurações. Por exemplo, para testar as barras semanais em vez de diariamente, basta clicar no botão Configurações, selecione Semanalmente na caixa de combinação Periodicidade e clique em OK. Em seguida, execute a análise clicando em Voltar ao teste. Nomes de variáveis ​​reservadas A tabela a seguir mostra os nomes das variáveis ​​reservadas usadas pelo Automatic Analyzer. O significado e exemplos sobre como usá-los são apresentados mais adiante neste capítulo. Permite a quantidade de dólar de controle ou porcentagem de carteira que é investido no comércio (veja explicações abaixo) Análise Automática (novo em 3.9) Até agora nós discutimos bastante simples uso do testador de volta. AmiBroker, no entanto, suporta métodos muito mais sofisticados e conceitos que serão discutidos mais adiante neste capítulo. Observe que o usuário iniciante deve primeiro jogar um pouco com os tópicos mais fáceis descritos acima antes de prosseguir. Assim, quando você estiver pronto, por favor, dê uma olhada nos seguintes recursos recentemente introduzidos do back-tester: a) host AFL script para escritores fórmula avançada b) suporte melhorado para operações curtas c) a maneira de controlar o preço de execução de ordem a partir do Script d) vários tipos de paradas no back tester e) dimensionamento da posição f) tamanho do lote redondo e tamanho do carrapato g) conta de margem h) backtesting futuros AFL scripting host é um tópico avançado que é abordado em um documento separado disponível aqui e eu não vou discutir Documento. Recursos restantes são muito mais fáceis de entender. Nas versões anteriores do AmiBroker, se você quisesse back-testar sistema usando longas e curtas transações, você só poderia simular stop-and-reverse estratégia. Quando a posição longa foi fechada, uma nova posição curta foi aberta immediatelly. Foi porque comprar e vender variáveis ​​reservadas foram utilizados para ambos os tipos de comércios. Agora (com a versão 3.59 ou superior) existem variáveis ​​reservadas separadas para abrir e fechar negócios longos e curtos: buy - quottruequot ou 1 value abre trading long trade - quottruequot ou 1 value fecha trade short curto - quottruequot ou 1 value abre short trade cover - quottruequot ou 1 valor fecha comércio curto Som, a fim de back-test operações de curto você precisa atribuir curto e cobrir variáveis. Se você usar sistema stop-and-reverse (sempre no mercado) simplesmente atribuir vender a curto e comprar para cobrir curto vender cobertura comprar Isto simula o modo pré-3.59 versões trabalhadas. Mas agora AmiBroker permite que você tenha regras de negociação separadas para ir muito tempo e para ir curto, como mostrado neste exemplo simples: longas negociações entrada e saída regras: comprar cross (cci (), 100) vender cross (100, cci ()) curto (Cci (), -100) Observe que neste exemplo se CCI está entre -100 e 100 você está fora do mercado. Controle de preço de mercado AmiBroker agora fornece 4 novas variáveis ​​reservadas para especificar o preço ao qual as ordens de compra, venda, curto e de cobertura são executadas. Esses arrays têm os seguintes nomes: buyprice, sellprice, shortprice e coverprice. A principal aplicação dessas variáveis ​​é controlar o preço do comércio: BuyPrice IIF (dayofweek () 1, HIGH, CLOSE) na segunda-feira comprar em alta, caso contrário, comprar em close Então você pode escrever o seguinte para simular real stop-orders: BuyStop. A fórmula para comprar stop nível SellStop. A fórmula para o nível do batente da venda se em qualquer altura durante o dia os preços se levantam acima do nível do buystop (highgtbuystop) a ordem de compra ocorre (no buystop ou baixo o que for mais elevado) Compre a cruz (alta, BuyStop) se durante o dia os preços caem abaixo do nível do sellprice (Sellstop baixa), certifique-se de preço de compra não inferior a Baixo preço de SellPrice (SellStop, alta) certifique-se Preço de venda não maior do que Alto Observe que AmiBroker predefinições de preço de compra, sellprice, shortprice e coverprice com os valores definidos na janela de configurações de teste do sistema (mostrado abaixo), então você pode, mas não precisa defini-los em sua fórmula. Se você não os define AmiBroker funciona como nas versões antigas. Durante o back-testing, o AmiBroker verificará se os valores que você atribuiu ao buyprice, sellprice, shortprice, coverprice se encaixam no intervalo alto-baixo da determinada barra. Se não, o AmiBroker irá ajustá-lo a um preço alto (se o preço for maior do que alto) ou ao preço baixo (se o preço for menor do que baixo). Como você pode ver na foto acima, novas configurações para As paradas de destino de lucro estão disponíveis na janela de configurações do teste do sistema. As paradas de objetivo de lucro são executadas quando o preço alto para um determinado dia excede o nível de parada que pode ser dado como uma porcentagem ou um aumento de ponto do preço de compra. Por padrão, as paradas são executadas ao preço que você define como matriz de preço de venda (para negócios longos) ou matriz de preço de cobertura (para negócios curtos). Esse comportamento pode ser alterado usando QuotExit no stopquot recurso. QuotExit at stopquot feature Se você marcar quotExit at stopquot box nas configurações, as paradas serão executadas no nível de parada exata, ou seja, se você definir o objetivo de lucro stop em 10 sua parada eo preço de compra foi 50 stop order será executado em 55, mesmo se Sua matriz de preço de venda contém valor diferente (por exemplo preço de fechamento de 56). Perda máxima pára de trabalhar de forma semelhante - eles são executados quando o preço baixo para um determinado dia cai abaixo do nível de parada que pode ser dada como uma porcentagem ou ponto de aumento a partir do preço de compra Este tipo de parar é usado para proteger os lucros como ele Acompanha o seu comércio de modo que cada vez que um valor de posição atinge um novo máximo, o stop de arrasto é colocado em um nível mais alto. Quando o lucro cai abaixo do nível de parada final, a posição é fechada. Este mecanismo é ilustrado na imagem abaixo (10 stop de arrasto é mostrado): um exemplo de implementação de baixo nível de lucro-alvo parar em AFL: Buy Cross (MACD (), Signal ()) para (i 0 i BarCount i) If (priceatbuy 0 Buy i) priceatbuy BuyPrice i if (priceatbuy gt 0 SellPrice i gt 1.1 priceatbuy) Sell i 1 SellPrice i 1.1 preçoatbuy priceatbuy 0 else Sell i 0 Este é um novo recurso na versão 3.9. Posição de dimensionamento no backtester é implementado por meio de nova variável reservada PositionSize ltsize arraygt Agora você pode controlar o montante em dólar ou percentual de carteira que é investido no número de comércio positivo definir (dólar) montante que é investido no comércio por exemplo: PositionSize 1000 investir 1000 em todos os números negativos de comércio -100 ..- 1 define porcentagem: -100 dá 100 do tamanho atual da carteira, -33 dá 33 do capital disponível, por exemplo: PositionSize -50 sempre investir apenas metade do exemplo atual de dimensionamento dinâmico de ações: PositionSize - 100 RSI () como RSI varia de 0..100 isso resultará em posição dependendo dos valores RSI - gt valores baixos de RSI resultará em maior percentagem investido Se menos de 100 de dinheiro disponível é investido, em seguida, o montante remanescente ganha taxa de juros Como definido nas configurações. Há também uma nova caixa de seleção na janela de configurações AA: quotAllow tamanho da posição shrinkingquot - isso controla como backtester manipula a situação quando o tamanho da posição solicitada (através da variável PositionSize) excede o dinheiro disponível: quando este sinalizador é marcado a posição é inserida com o tamanho shinked para Disponível se não estiver selecionado, a posição não será inserida. Para ver os tamanhos de posição reais, use um novo modo de relatório na janela de configurações AA: quotLista comercial com preços e pos. Sizequot Para o fim, aqui está um exemplo da técnica de dimensionamento de posição baseada em Tharps ATR codificada na AFL: Comprar ltyour comprar fórmula heregt Vender 0 vender apenas por parar TrailStopAmount 2 ATR (20) Capital 100000 IMPORTANTE: Defini-lo também nas Configurações: Inicial A técnica pode ser resumida da seguinte forma: O capital total por símbolo é de 100.000, estabelecemos o nível de risco em 1 do patrimônio líquido total. O valor total do capital por símbolo é de 100.000, e nós definimos o nível de risco em 1 do patrimônio líquido total (RiskTrailStopAmount). Nível de risco é definido da seguinte forma: se uma parada de arrasto em um estoque 50 é, digamos, 45 (o valor de dois ATRs contra a posição), a perda 5 é dividido em 1000 de risco para dar 200 ações para comprar. Assim, o risco de perda é 1000, mas o risco de alocação é de 200 ações x 50share ou 10.000. Então, estamos alocando 10 do capital próprio para a compra, mas apenas arriscando 1000. (Excerto editado da lista de discussão AmiBroker) Tamanho do lote e tamanho do carrapato Vários instrumentos são negociados com vários quottrading unitsquot ou quotblocksquot. Por exemplo, você pode comprar número fracionário de unidades de fundo mútuo, mas você não pode comprar o número fracionário de ações. Às vezes você tem que comprar em 10s ou 100s lotes. AmiBroker agora permite que você especifique o tamanho do bloco no nível global e por símbolo. Você pode definir o tamanho do lote redondo por símbolo na página Symbol-gtInformation (figura 3). O valor de zero significa que o símbolo não tem tamanho de lote redondo especial e usará quotDefault round lot sizequot (configuração global) da página de configurações de análise automática (figura 1). Se o tamanho padrão também é definido como zero, isso significa que o número fracionário de contratos de ações é permitido. Você também pode controlar o tamanho do lote redondo diretamente de sua fórmula AFL usando RoundLotSize variável reservada, por exemplo: Esta configuração controla o movimento de preço mínimo do símbolo dado. Você pode defini-lo no nível global e por símbolo. Tal como acontece com o tamanho do lote redondo, pode definir o tamanho do carimbo por símbolo na página Symbol-gtInformation (figura 3). O valor de zero instrui o AmiBroker a usar quotdefault tick sizequot definido na página Configurações (figura 1) da janela Automatic Analysis. Se o tamanho padrão do alerta também estiver definido como zero, significa que não há movimento de preço mínimo. Você pode definir e recuperar o tamanho do carrapato também da fórmula AFL usando a variável reservada TickSize, por exemplo: Note que a configuração do tamanho do carrapato afeta somente os comércios fechados pelas paradas internas e ou ApplyStop (). O backtester assume que os dados de preço seguem os requisitos de tamanho de tick e não altera os arrays de preço fornecidos pelo usuário. Portanto, especificar o tamanho do alerta só faz sentido se você estiver usando as paradas internas para que os pontos de saída sejam gerados em níveis de preços quotallowedquot em vez de calculados. Por exemplo, no Japão - você não pode ter partes fracionárias de ienes para que você deve definir ticksize global para 1, assim built-in pára comércios de saída em níveis inteiros. Configuração da margem da conta define o requisito de margem percentual para toda a conta. O valor padrão da margem da conta é 100. Isso significa que você tem que fornecer 100 fundos para entrar no comércio e esta é a maneira como backtester trabalhou em versões anteriores. Mas agora você pode simular uma conta de margem. Quando você compra na margem você está simplesmente emprestado dinheiro de seu corretor para comprar ações. Com os regulamentos atuais você pode colocar até 50 do preço de compra do estoque que você deseja comprar e emprestar a outra metade de seu corretor. Para simular isso basta digitar 50 no campo Margem da conta (veja a figura 1). Se o seu patrimônio intial é definido como 10000 seu poder de compra será então 20000 e você será capaz de entrar em posições maiores. Observe que essa configuração define a margem para a conta inteira e NÃO está relacionada a negociação de futuros. Em outras palavras, você pode negociar ações na conta de margem. QuotRegistro inverso força a saída para as configurações do Backtester. Quando está ON (a configuração padrão) - backtester funciona como nas versões anteriores e fecha já positon aberto se novo sinal de entrada no sentido inverso é encontrado. Se este interruptor estiver DESLIGADO - mesmo que ocorra sinal inverso, o backtester mantém o comércio aberto e não fecha a posição até que o sinal de saída regular (venda ou cobertura) seja gerado. Em outras palavras, quando este interruptor é OFF backtester ignora sinais curtos durante longos comércios e ignora Buy sinais durante curtas operações. QuotAver a mesma saída de barra (barra única) opção quot para as Configurações Quando está ON (as configurações padrão) - entrada e saída na mesma barra é permitida (como nas versões anteriores) se estiver OFF - a saída pode acontecer a partir de Apenas a barra seguinte (isto aplica-se a sinais regulares, existe uma definição separada para as saídas geradas pelo ApplyStop). Mudar para OFF permite reproduzir o comportamento do MS backtester que não é capaz de lidar com saídas no mesmo dia. QuotActivate pára imediatamentequot Esta definição resolve o problema de testar sistemas que entram em comércios no mercado aberto. Nas versões anteriores a 4.09, o backtester supôs que você estava entrando em negociações no mercado próximo, de modo que as paradas embutidas foram ativadas a partir do dia seguinte. O problema foi quando você de fato definido preço aberto como o preço de entrada de comércio - então mesmo dia flutuações de preços não desencadear as paradas. Houve algumas soluções publicadas baseadas no código AFL, mas agora você não precisa usá-los. Simplesmente se você trocar em aberto você deve marcar quotActivate pára imediatamentequot (imagem 1). Você pode perguntar por que não basta verificar o buyprice ou shortprice matriz se é igual ao preço aberto. Infelizmente este não funcionará. Por que simplesmente porque há dias de doji quando o preço aberto iguala o close e então o backtester nunca saberá se o comércio foi entrado no mercado aberto ou próximo. Então nós realmente precisamos de uma configuração separada. QuotUtilizar QuickAFLquotQuickAFL (tm) é um recurso que permite um cálculo AFL mais rápido sob certas condições. Inicialmente (desde 2003) estava disponível apenas para indicadores, a partir da versão 5.14 está disponível na Análise Automática também. Inicialmente, a idéia era permitir redraws mais rápidos de gráfico através do cálculo da fórmula AFL apenas para aquela parte que é visível no gráfico. De forma semelhante, janela de análise automática pode usar subconjunto de cotações disponíveis para calcular AFL, se selecionado 8220range8221 parâmetro é menor do que 8220Todos os quotationsquot. Explicação detalhada sobre como QuickAFL funciona e como controlá-lo, é fornecida neste artigo da Base de Dados de Conhecimento: amibrokerkb20080703quickafl Observe que essa opção funciona não somente no backtester, mas também em otimizações, explorações e varreduras. 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 gerenciamento de dinheiro de volta permite testar vários modelos de gerenciamento 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 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 negócios 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 de comércio 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: Adquira 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 capacidades de teste de volta incluído 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 para a 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 colocar-se 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 Analisador de Desempenho de Negociação 8211 ultimatetradingsystemstpa Aprenda o seu software de teste de volta escolhido por 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