Friday, 14 July 2017

Desenvolvimento De Sistemas Robustos De Negociação


Projetando uma Estratégia de Negociação Mecânica Robusta: Uma Melhor Prática em Negociação de Brett: Esta publicação de melhores práticas vem de nós de Edward Heming, que é o autor do blog de negócios Lord Tedders. Ele discute alguns aspectos do desenvolvimento de uma estratégia de negociação mecânica confiável e também abrange os prós e contras da negociação mecânica. Note-se que Henry Carstens também disponibilizou uma série de artigos sobre o tema do desenvolvimento de sistemas de negociação. O que mais gosto do artigo do Lord Tedders é a visão de que pesquisar idéias do sistema é uma ótima maneira de obter uma idéia do mercado. Por essa razão, pode até beneficiar o comerciante discricionário. Aqueles que desejam obter alguns dos benefícios do teste do sistema sem os desafios da programação podem olhar para o programa Odds Maker desenvolvido por Trade Ideas ou podem seguir os conselhos de Bonnie Lee Hill e utilizar a plataforma de teste do menu suspenso disponível através do Ensign Software. Com essas ferramentas, é mais fácil do que nunca determinar se suas idéias estão fornecendo uma vantagem de desempenho. Obrigado a Edward pela postagem perspicaz. Uma das perguntas que muitas vezes me perguntam sobre o design da estratégia é o que você define uma robusta estratégia de negociação mecânica8221. Para entender como construir uma estratégia mecânica robusta, é importante entender o que é uma estratégia mecânica robusta. Uma estratégia mecânica é simplesmente um fluxo de decisão quantificado que leva um robô 8220trading8221 ou o próprio comerciante para determinar o tamanho, as entradas, as saídas e as paradas da posição, tudo em uma forma completamente desligada 8211, por outras palavras, se você possui um sistema mecânico de trabalho, sua entrada é Não é necessário (ou, se assim for, em um grau muito limitado). Além disso, para uma estratégia mecânica ser robusta, deve capitalizar uma borda 8220trading8221. Isso pode ser qualquer coisa de uma vantagem estatística (tendência) para uma borda de execução (arbitragem). Além disso, esta estratégia deve manter-se durante um longo período de negócios historicamente (pelo menos várias centenas) e deve manter-se em futuras negociações (que podem ser simuladas). Um sistema mecânico tem várias vantagens que os comerciantes discricionários não, como a capacidade de realizar análises quantitativas e de mineração de dados rapidamente e em períodos históricos prolongados. Além disso, os sistemas mecânicos podem aliviar alguns dos problemas emocionais que acompanham a negociação discricionária, especialmente entre os novos comerciantes. No entanto, é importante reconhecer que o comércio mecânico também possui várias desvantagens. O primeiro é que você deve ser capaz de quantificar cada decisão de negociação que o sistema fará, em segundo lugar, o sistema mecânico terá que ser periodicamente ajustado (assim como um comerciante discricionário ajusta seus métodos) quer por adaptação, otimização ou diversificação inerente . Por último, os sistemas mecânicos só funcionam se alguém colocar a enorme quantidade de tempo e esforço necessários para programar, testar, depurar e ajustá-lo continuamente. Para projetar qualquer estratégia mecânica, é importante considerar três coisas antes de mais: 1) seu objetivo para esse sistema, 2) seu mercado, 3) seu prazo. Uma vez que você determinou isso, é fácil encontrar a sua metodologia essencial porque existem apenas 4 formas de negociar qualquer mercado: 1) negociação de tendências, 2) negociação de momentum, 3) reversão à negociação média, 4) e negociação fundamental. Depois de determinar seu objetivo, mercado, prazo e método, você está pronto para tentar juntar sua primeira estratégia. Muitos de vocês provavelmente estão pensando neste ponto, e, se eu não souber qualquer coisa dessa coisa8221. Se você já é um comerciante discricionário experiente isso não deve ser excessivamente difícil. No entanto, se você não possui experiência extensa, você terá que encontrar um método que funcione. Este método pode ser tão simples como uma média móvel de longo prazo para tão complicado como uma rede contínua de rede neural colaborativa que é geneticamente re-otimizada diariamente. A melhor maneira para o comerciante inexperiente construir um novo sistema é testar idéias. Isso pode ser feito de duas maneiras 8211 visualmente ou programaticamente. Para alguém sem experiência de programação extensa, o melhor seria começar com o que eu chamo de 8220candle pelo teste de volta da vela. Isso é realizado tomando uma idéia (como um crossover médio móvel) e testando-o com dados históricos sobre o mercado e o período de tempo, movendo seus gráficos para frente do passado para o futuro e negociando a forma como o sistema seria 8211 sem conhecimento futuro Dos mercados. Esse método é como testei as minhas primeiras 8220estrategies8221, quatro das quais ainda continuo a negociar hoje (incluindo duas que foram projetadas por Phil McGrew, que testei usando esse método e ainda hoje comércio). No entanto, eu tive que testar quase cinquenta ou sessenta idéias para chegar às dez estratégias que funcionam e, finalmente, refinar o processo até encontrar quatro desses dez sistemas que eu achei negociáveis. Para dar-lhe um exemplo de como esse processo é demorado, testei essas dez estratégias muitas vezes olhando mais de 2 anos de barras de 15 minutos e 8220executando 8221 centenas de negócios. Passei quase 700 horas reais fazendo esse teste (e I8217m muito rápido com um gráfico e excel). Parece muito trabalho certo Bem, foi, mas também me deu uma sensação para esses mercados que é quase tão bom como ter trocado esses mercados em tempo real. Depois de fazer isso por algum tempo, senti que tinha que haver uma maneira mais eficaz de testar idéias. E há 8211 testes programáticos. Os testes programáticos novamente podem ser muito fáceis de usar, uma cruzamento médio móvel simples é uma coisa simples para programar em quase qualquer linguagem de programação. No entanto, as dificuldades que podem destruir o comerciante programador inicial são quase infinitas. Muitos pacotes de negociação populares não rastreiam seu tiquetaque de posição de equidade por marca, em vez disso, é rastreado por bar (e se você estiver negociando barras diárias você pode imaginar os problemas). Além disso, as idéias que eu tinha testado extensivamente à mão às vezes eram difíceis de programar. Tive tantas experiências onde eu citei um conceito crítico (até mesmo um pouco) e isso acabou dando resultados drasticamente diferentes do que os meus testes de mão. Sem o conhecimento de que era o código que estava incorreto, eu poderia ter descartado falsamente muitas idéias comerciais que de fato eram válidas. Além disso, neste nível de negociação programática é muito importante considerar fatores de minimização de insumos (graus de liberdade) e de insumos flexíveis. Um exemplo disso seria utilizar uma parada de 3 ATR em vez de uma parada de 60 pips, de modo que, à medida que os preços e a volatilidade do mercado flutuam, a sua parada não está sendo retirada por causa do ruído aleatório. Outras formas que você pode melhorar a robustez da sua estratégia incluem a utilização de preenchimentos e comissões realistas e garantir que suas ordens de limite realmente tenham sido preenchidas (isso não é tão fácil de testar em alguns softwares quanto deveria). A otimização é outra ferramenta útil a considerar neste momento em sua carreira de teste de estratégia. Esta é uma espada poderosa, mas de dois gumes. A utilização de algoritmos genéticos e técnicas similares de 8220hill climbing8221 são uma maneira comum de garantir que sua otimização não lhe dê uma única anomalia de pontos, mas sim que existem valores de entrada similares em torno de suas entradas que fornecem gráficos de equidade similares. O teste avançar é outra ferramenta útil que pode ajudá-lo a alcançar resultados realistas e ver se uma estratégia teria sido bem sucedida em dados que não foram otimizados (semelhante ao futuro). Indo mais no comércio programático, depois de ter experimentado muitas armadilhas, sinto que deveria ser capaz de testar mais de uma idéia por vez. Na verdade, idealmente gostaria de testar muitas idéias, em múltiplos prazos e múltiplos mercados. Neste momento, esse é o trabalho que estou envolvido na concepção e sinto que isso me ajudará a analisar os mercados com rapidez e precisão que levará o meu negócio ao próximo nível. Esta é a arena dos melhores designers de estratégia, onde a mineração de dados estatísticos, análise de mercado, análise de cronograma, análise técnica, análise fundamental e gerenciamento de dinheiro são combinados com testes evolutivos realistas em um único pacote. Como você pode ver, testes programáticos avançados e negociação é uma arena complexa. Eu mesmo ainda estou aprendendo e de modo algum me considero um especialista. A boa notícia é que a criação e implementação de estratégias mecânicas robustas e bem-sucedidas podem ser feitas de forma tão simples ou tão complexa quanto você escolher. Afinal, as estratégias muito simples testadas e projetadas com vela por teste de vela ainda são uma pedra angular da minha metodologia de negociação. De Brett: Observe o conselho de Edwards: comece pequeno, mantenha-o factível e, em seguida, construa suas habilidades. Suas melhores idéias virão de uma observação intensiva, mas algumas das melhores idéias são as mais simples e diretas. Eu recentemente postei uma chamada para comerciantes e programadores que gostariam de colaborar, isso poderia ser uma maneira promissora de começar Brett Steenbarger, Ph. D. Autor de The Psychology of Trading (Wiley, 2003), Melhorando o desempenho do comerciante (Wiley, 2006) e The Daily Trading Coach (Wiley, 2009) com interesse em usar padrões históricos nos mercados para encontrar uma vantagem comercial. Também estou interessado no aprimoramento do desempenho entre os comerciantes, com base em pesquisas de artistas experientes em vários campos. Eu tirei uma licença dos blogs a partir de maio de 2010 devido ao meu papel em um fundo global de hedge macro. Blogging retomou em fevereiro de 2014, juntamente com publicações regulares para Twitter e StockTwits (Steenbab). Ver o meu perfil completo Inscrever-se para o Twitter Trader Blog ArchiveGuia para o desenvolvimento do sistema de negociação A evolução contínua do software de análise técnica simplificou a criação de sistemas de negociação automatizados por computador. Alguns sistemas apenas geram os sinais para o comerciante seguir, enquanto outros colocam os negócios no mercado em nome do comerciante. No entanto, ser capaz de programar sua plataforma de negociação favorita é apenas o começo. Você deve ter uma estrutura para testar suas teorias de negociação para ter certeza de que os backtests lucrativos não são apenas por causa da sorte, mas são os resultados da modelagem robusta de um comportamento de mercado. Esta série de artigos apresentará uma abordagem simplificada para desenvolver um sistema de negociação para o mercado cambial de varejo. A ferramenta de desenvolvimento do sistema wersquoll usará o MetaTrader 4 (MT4), embora as idéias e o processo apresentados se apliquem a uma ampla gama de plataformas de software. A metodologia abordará conceitos gerais direcionados ao comerciante do sistema inicial. Quando tomamos atalhos por conveniência, a Wersquoll encaminha o leitor a recursos adicionais para obter informações mais detalhadas. Existem cinco fases distintas no desenvolvimento do sistema de negociação: Fase 1: o desenvolvimento do modelo de mercado e o sistema automatizado básico mdash o sistema automatizado básico implementa esse modelo, mas não incorpora perdas de parada ou metas de lucro. O sistema básico é para o único propósito de coletar dados para análise estatística utilizada nas fases de desenvolvimento posterior. Fase 2: Gerenciamento de risco mdash a perda de parada inicial (ISL). Usando os dados coletados na Fase 1 e com base na análise estatística desses dados, adicionamos uma ISL à estratégia de negociação. Utilizamos a otimização para encontrar um parâmetro de paragem que corresponda às nossas necessidades. Usaremos análise walk-forward para testar esta versão do sistema. Fase 3: Gerenciamento de lucro mdash o objetivo de lucro (PT). Como na Fase 2, usaremos a análise estatística de nossos dados para incorporar um objetivo de lucro no sistema. Mais uma vez, usaremos a otimização para encontrar um alvo de lucro apropriado e, em seguida, usaremos a análise progressiva para testar esta versão do sistema. Fase 4: Gerenciamento de dinheiro mdash o algoritmo de tamanho de comércio (TSA). Esta fase não depende dos dados coletados na Fase 1. Em vez disso, incorporaremos o método de tamanho de comércio de fração fixa popular para determinar quantos lotes são alocados para cada comércio. A literatura de comércio popular está repleta de conselhos para restringir o risco por comércio dentro de um intervalo de 1 a 3 de equidade da conta. Vamos executar nossa otimização usando essas porcentagens e, mais uma vez, usar a análise walk-forward para testar esta versão do sistema. Em conjunto, as fases 2 a 4 compreendem o gerenciamento do comércio, mas há um passo mais crítico: Fase 5: análise de Monte Carlo muitos comerciantes param após a Fase 4. No entanto, nossos testes não estão completos naquele momento e o sistema não está pronto para Implantação (supondo que seja lucrativo). Apesar da nossa análise progressiva, não podemos ter certeza de que nossos resultados não são por causa da sorte. Em outras palavras, nosso modelo pode não descrever o comportamento do mercado, resultados com resultados precisos podem se ter beneficiado de um ambiente de mercado cuja ação de preço acabou por coincidir com nossa lógica. A análise de Monte Carlo ajudará a determinar se o nosso modelo foi bem sucedido devido à sorte (aleatoriedade) ou à sua capacidade de identificar e explorar um padrão de mercado real. Este artigo abordará os artigos subsequentes da Fase 1, abrangerão as Fases 2 a 5. Sobre o Autor Neil Rosenthal é um dentista aposentado que negocia sua própria conta. Ele também é um programador de computador experiente. Ele pode ser alcançado na medida em que está autorizado.

No comments:

Post a Comment