Como Construir Sistema De Negociação Algorítmica


O kernel desta postagem originou-se como uma resposta excessivamente longa a uma pergunta que me foi apresentada no Google. Então, como é que você parou de fazer esse negócio automatizado algorítmico? Parece que você teve experiência suficiente para ser um comerciante algorítmico bem-sucedido. Passei a melhor parte de seis anos, de aproximadamente 1999 a 2004 e novamente em 2008, buscando as fortunas quiméricas do comércio algorítmico automatizado e, enquanto eu nunca atingi a terra prometida de um sistema de comércio bem sucedido, ao longo do caminho aprendi um Muito sobre mim, o mundo e como escrever um código robusto e de alto desempenho. A jornada em si merece sua própria postagem, ou possivelmente várias, já que foi uma aventura estranha, mas para começar esse assunto, começámos a começar porque eu finalmente mudei para a web e as startups. 1. Uma operação de negociação automatizada leva muito capital comercial e operacional (para não mencionar taxas de compensação extremamente baixas, que são extremamente difíceis de negociar) para inicializar facilmente por conta própria. Não é impossível, mas é definitivamente muito menos intensivo em recursos para tentar ganhar dinheiro com a construção de aplicativos da web ou móveis. 2. Toda vez que eu colabora com um comerciante em um empreendimento comercial automatizado, suas estratégias de negociação e idéias acabaram por não funcionar, apesar do fato de terem sido previamente bem-sucedidas (muitas vezes bem sucedidas) como comerciantes de piso ou tela. Isso geralmente significava que eu passara um ano ou mais do meu tempo codificando uma plataforma de negociação de última geração que não era nada. 3. Não estou totalmente convencido de que é tudo o que é possível vencer o mercado de forma consistente, muito menos usando algoritmos, muito menos usando algoritmos de autoaprendizagem (AKA data mining). Na minha perspectiva, comprar algo que algumas pessoas estariam dispostos a pagar parece ser um problema muito mais difícil de resolver. Dito isto, acho que pode ser possível vencer o mercado de forma algorítmica se você tivesse todas as peças certas no lugar, o truque é apenas descobrir o que essas peças podem ser. 4. Se você passar anos trabalhando em um projeto de negociação automatizado (geralmente em segredo total) e não funciona no final, pode ser difícil aproveitar essa experiência para qualquer outra coisa. Por outro lado, se você trabalha em um projeto móvel na web e no podcast do blog tweet sobre toda a experiência (o que todos sabem que você deveria fazer), o efeito colateral é que você terá uma reputação pública que poderá levar a todos os tipos de inesperados Oportunidades. Isto é o que eu chamo de aumentar a sua área de superfície de sorte. 5. Ao construir aplicações web e móveis, você está pelo menos tentando criar valor para o mundo e não apenas para você. Isso pode parecer um ponto menor, mas se o seu empreendimento comercial não tiver sucesso financeiro, você não pode nem voltar para o - bem, pelo menos eu fiz muitas pessoas felizes, mais produtivas, etc. Além disso, a emoção de ter um Um grande número de pessoas usa seu software é algo que você nunca experimentará dentro dos limites de uma operação de negociação automatizada. 6. O comércio é extremamente estressante, mesmo que seja a própria máquina que esteja fazendo o comércio. Na verdade, leio um estudo científico há pouco que descobriu que uma troca perdedora é duas vezes mais psicologicamente drenante que o comércio vencedor equivalente é psicologicamente reforçando, o que basicamente significa que você geralmente estará operando em um déficit psicológico no final de cada Dia De Trabalho. Eu sei que muitos fundadores de inicialização gostam de falar sobre como as startups são difíceis e sobre o incrível passeio de montanha-russa que é a vida inicial (o que é verdade), mas recebi notícias para você, não se compara à moagem, O estrondo da negociação e, francamente, não há como viver. 7. (Por favor, veja adendo) Eu fiz um monte de coisa comercial e, embora seja um jogo divertido e viciante com certeza, achei que os comerciantes geralmente não são meu tipo de pessoas. A razão para isso, penso, é que, para a maioria dos comerciantes, é praticamente tudo sobre o dinheiro, e sempre que qualquer coisa é tudo ou principalmente sobre o dinheiro, ele acaba sem alma. Esta realidade acaba por ser um pouco deprimente se você reflete por muito tempo e acho que é por isso que a maioria dos comerciantes não é tão auto-reflexivo. Dito isto, não tenho tanta certeza de que isso se aplique aos comerciantes algorítmicos, porque dos poucos que conheci, eles tendem a amar o desafio técnico tanto ou mais que a busca da fortuna (o que não é diferente dos fundadores técnicos iniciantes). 8. O mundo do comércio algorítmico é tão secreto que raramente você consegue conhecer alguém, e muito menos tem a oportunidade de discutir técnicas, algoritmos ou experiências. Como resultado, há pouca ou nenhuma comunidade para se envolver, e no caso de você não ter descoberto essa verdade, fazer parte de uma comunidade é uma grande parte do que torna a vida divertida. Isenção de responsabilidade: se eu fizer uma fortuna pessoal das startups da Web, ainda há uma parte de mim que gostaria de dar à negociação algorítmica uma última tentativa. Lá, eu disse. ) Adenda: Eu decidi que o que eu escrevi no ponto 7 sobre os comerciantes não sendo meu tipo de pessoas e não sendo tão auto-reflexivo, são ambas declarações falsas. Sim, tive uma experiência ruim com alguns comerciantes ao longo dos anos, mas fazer uma generalização como essa era apenas preguiçoso e injusto. Para todos os comerciantes que possam estar lendo isso, aceite minhas desculpas. Meu nome é Jason Roberts e moro em Pasadena, CA, onde sou um empresário em série. Codificador independente e co-anfitrião do podcast de inicialização tecnológica TechZing. Leia mais. Como cientista da computação, você está na posição perfeita para começar a negociação algorítmica. Isso foi algo que testemunhamos em primeira mão na Quantiacs 1. onde cientistas e engenheiros conseguem saltar diretamente para negociação automatizada sem qualquer experiência prévia. Em outras palavras, as costeletas de programação são o principal ingrediente necessário para começar. Para obter uma compreensão geral do que os desafios esperam depois de durar a criação de um sistema de negociação algorítmico, confira esta publicação do Quora. Construir um sistema de negociação desde o início exigirá algum conhecimento de fundo, uma plataforma de negociação, dados de mercado e acesso ao mercado. Embora não seja um requisito, a escolha de uma única plataforma de negociação que forneça a maioria desses recursos o ajudará a acelerar rapidamente. Dito isto, as habilidades que você desenvolverá serão transferíveis para qualquer linguagem de programação e praticamente qualquer plataforma. Acredite ou não, construir estratégias de negociação automatizadas não se baseia em ser um especialista em mercado. No entanto, aprender mecânica de mercado básica irá ajudá-lo a descobrir estratégias comerciais lucrativas. Opções, Futuros e Outros Derivados por John C. Hull - Grande primeiro livro para entrar em financiamento quantitativo, e abordando-o do lado da Matemática. Negociação quantitativa por Ernie Chan - Ernie Chan fornece o melhor livro introdutório para negociação quantitativa e orienta você no processo de criação de algoritmos de negociação em MATLAB e Excel. Comércio Algoritmo de Futuros via Aprendizado de Máquinas - Uma quebra de 5 páginas da aplicação de um modelo simples de aprendizado de máquina aos indicadores de análise técnica comumente usados. Heres uma lista de leitura agregada PDF com uma quebra total de livros, vídeos, cursos e fóruns de negociação. A melhor maneira de aprender é fazer, e no caso de negociação automatizada que se resume a gráficos e codificação. Um bom ponto de partida são exemplos existentes de sistemas de negociação e exposições existentes de técnicas de análise técnica. Além disso, um cientista informático qualificado tem a vantagem adicional de poder aplicar a aprendizagem de máquinas para negociação algorítmica. Aqui estão alguns desses recursos: TradingView - Uma fantástica plataforma de gráficos visuais por conta própria, o TradingView é um ótimo parque infantil para ficar confortável com a análise técnica. Tem o benefício adicional de permitir estratégias de negociação de scripts e navegar em outras idéias de comércio de pessoas. Fórum Automatizado de Negociação - Grande comunidade on-line para postar perguntas para iniciantes e encontrar respostas para problemas comuns quando é apenas começar. Quantos fóruns são um ótimo lugar para mergulhar em estratégias, ferramentas e técnicas. Seminário do YouTube sobre idéias comerciais com exemplos de código de trabalho no Github. Aprendizado de máquinas: mais apresentações sobre negociação automatizada podem ser encontradas no Quantiacs Quant Club. A maioria das pessoas de base científica (seja ciência da computação ou engenharia) tiveram exposição a Python ou MATLAB, que são linguagens populares para financiamento quantitativo. A Quantiacs criou uma caixa de ferramentas de código aberto que fornece backtesting e 15 anos de histórico do mercado de dados gratuitamente. A melhor parte é que tudo é construído tanto no Python quanto no MATLAB, o que lhe permite escolher o que desenvolver o seu sistema. Tem uma tendência de exemplo - estratégia de negociação seguinte no MATLAB. Este é todo o código necessário para executar um sistema de negociação automatizado, mostrando tanto o poder do MATLAB quanto o Quantiacs Toolbox. Quantiacs permite que você negocie 44 futuros e todos os estoques do SampP 500. Além disso, uma variedade de bibliotecas adicionais, como o TensorFlow, são suportadas. (Disclaimer: Eu trabalho em Quantiacs) Uma vez que você está pronto para ganhar dinheiro como um quant, você pode se juntar ao mais recente concurso de negociação automatizado da Quantiacs, com um total de 2.250.000 investimentos disponíveis: você pode competir com os melhores quads 22.6k Views middot View Upvotes Middot Não para reprodução Esta resposta foi completamente reescrita Aqui estão 6 bases de conhecimento principais para a construção de sistemas de negociação algorítmica. Você deve estar familiarizado com todos eles para construir sistemas de negociação eficazes. Alguns dos termos utilizados podem ser um pouco técnicos, mas você deve ser capaz de compreendê-los pelo Google. Nota: (A maior parte) estes não se aplicam se você quiser fazer negociação de alta freqüência 1. Teorias de mercado Você precisa entender como o mercado funciona. Mais especificamente, você deve entender as ineficiências do mercado, as relações entre diferentes produtos de ativos e o comportamento dos preços. As idéias comerciais decorrem de ineficiências do mercado. Você precisará saber como avaliar as ineficiências do mercado que lhe dão uma vantagem comercial versus as que não. Projetar robôs efetivos implica entender como funcionam os sistemas de negociação automatizados. Essencialmente, uma estratégia de negociação algorítmica consiste em 3 componentes principais: 1) Entradas, 2) Saídas e 3) Dimensionamento da posição. Você precisará projetar esses 3 componentes em relação à ineficiência do mercado que você está capturando (e não, este não é um processo direto). Você não precisa saber matemática avançada (embora ajude se você pretende construir estratégias mais complexas). As boas habilidades de pensamento crítico e uma compreensão decente sobre as estatísticas o levarão muito longe. O design envolve backtesting (teste de vantagem comercial e robustez) e otimização (maximizando o desempenho com ajuste de curva mínimo). Você também precisa saber como gerenciar um portfólio de estratégias de negociação algorítmica. As estratégias podem ser complementares ou conflitantes, o que pode levar a aumentos não planejados na exposição ao risco ou hedging indesejados. A alocação de capital também é importante, você divide o capital igualmente durante intervalos regulares ou recompensa os vencedores com mais capital. Se você sabe quais produtos você quer negociar, encontre plataformas de negociação adequadas para esses produtos. Então, aprenda a API de linguagem de programação desta plataforma. Se você começar, eu recomendaria a Quantopian (ações somente), Quantconnect (ações e FX) ou Metatrader 4 (FX e CFDs em índices de ações, ações e commodities). As linguagens de programação utilizadas são Python, C e MQL4, respectivamente. 4. Gerenciamento de dados Lixo no lixo. Dados imprecisos levam a resultados de teste imprecisos. Precisamos de dados razoavelmente limpos para testes precisos. Os dados de limpeza são um trade-off entre custo e precisão. Se quiser dados mais precisos, você precisa gastar mais tempo (dinheiro no tempo) para limpá-lo. Alguns problemas que causam dados sujos incluem dados em falta, dados duplicados, dados errados (carrapatos ruins). Outras questões que levam a dados enganosos incluem dividendos, divisões de ações e rolamentos de futuros, etc. 5. Gerenciamento de risco Existem dois principais tipos de risco: risco de mercado e risco operacional. O risco de mercado envolve riscos relacionados à sua estratégia de negociação. Considera os cenários do pior caso. E se um evento de cisne negro como a Segunda Guerra Mundial acontecer? Você já escondeu o risco indesejado? O seu tamanho de posição é muito alto. Além de gerenciar o risco de mercado, você precisa olhar para o risco operacional. Choque do sistema, perda de ligação à Internet, algoritmo de execução fraca (levando a preços mal executados ou negócios perdidos devido à incapacidade de lidar com atrasos de alta exigência) e roubo de hackers são problemas muito reais. 6. Execução ao vivo Os backtesting e as negociações ao vivo são muito diferentes. Você precisará selecionar intermediários adequados (MM vs STP vs ECN). Forex Market News com Forex Trading Forums amp Forex Brokers Reviews é o seu melhor amigo, leia comentários do corretor lá. Você precisa de infra-estrutura adequada (VPN segura e gerenciamento de tempo de inatividade, etc.) e procedimentos de avaliação (monitorar o desempenho de seus robôs e analisá-los em relação às melhorias de ineficiência do mercado) para gerenciar seu robô ao longo de sua vida útil. Você precisa saber quando intervir (modificar a atualização de seus robôs) e quando não. Avaliação e Otimização de Estratégias de Negociação Pardo (Grandes idéias sobre métodos para construir e testar estratégias de negociação) Troque seu caminho para a Liberdade Financeira Van K Tharp (Ridiculous-Click isqueiro lado a lado, este livro é uma ótima visão geral dos sistemas de negociação mecânica) Quantitative Trading Ernest Chan (Grande introdução a algo trading em um nível de varejo). Negociação e intercâmbios: Microstructure de mercado para praticantes Larry Harris (A microestrutura de mercado é a ciência de como os intercâmbios funcionam e o que realmente acontece quando um comércio é colocado. É importante conhecer esta informação Mesmo que você esteja apenas começando) Algorithmic Trading amp DMA Barry Johnson (Shed luz sobre os algoritmos de execução dos bancos. Isso não é diretamente aplicável o seu algo trading, mas é bom saber) The Quants Scott Patterson (Histórias de guerra de alguns quants superiores. Como uma hora de dormir ler) Quantopian (Código, pesquisa e discutir idéias com a comunidade. Usa Python) Fundamentos da Algo Trading Algo Trading101 (Disclaimer: Eu possuo este sitecourse. Aprenda teorias de design de robôs, teorias de mercado e codificação. Usa o MQL4) - Junte-se ao desafio (Aprenda os conceitos de negociação e as teorias de backtesting. Recentemente, desenvolveram sua própria plataforma de backtesting e trading, então esta parte ainda é novidade para mim. Mas a base de conhecimento sobre os conceitos de negociação é boa.) Blogs recomendadosForuns , Fóruns de trading e algo trading): Linguagens de programação recomendadas: se você sabe quais produtos você quer negociar, encontre plataformas de negociação adequadas para esses produtos. Então, aprenda a API de linguagem de programação desta plataforma. Se você começar, eu recomendaria a Quantopian (ações somente), Quantconnect (ações e FX) ou Metatrader 4 (FX e CFDs em índices de ações, ações e commodities). As linguagens de programação utilizadas são Python, C e MQL4, respectivamente. 15k Visualizações middot View Upvotes middot Não para reprodução Eu tenho um plano de fundo como programador e configurando equipes agilescrum antes de começar a olhar para negociação algorítmica. O mundo do comércio algorítmico me fascina, no entanto, pode ser um tanto irresistível. Comecei a ter alguma perspectiva mergulhando na plataforma de Quantopian, observando as séries de palestras e executando meus sistemas de troca de negócios baseados em comunidades adaptadas em seu ambiente. Como o que está abaixo: então, percebi para me aprofundar mais rápido, tenho que conhecer pessoas que gostam de criar estratégias de negociação, mas não podem programar - combinar-me como um gerente de equipe ágil e programador de sistemas de negociação. Então eu escrevi um livro sobre como criar uma equipe para implementar seus algoritmos de negociação. Construindo Sistemas de Negociação O Caminho Ágil: Como Construir Sistemas de Negociação de Algoritmos Vencedores como Equipe. Na comunidade de Quantopian, vi pessoas com experiência financeira à procura de pessoas para implementar suas estratégias comerciais, mas onde tem medo de pedir aos programadores que implementem suas idéias. Como eles potencialmente podem começar a executar suas idéias comerciais sem elas. Eu abordo esta questão no meu livro. Para evitar que os programadores escapem com suas idéias: crie uma especificação para sua idéia comercial que use uma estrutura de codificação adaptada ao tipo de estratégia que deseja desenvolver. Isso pode parecer difícil, mas quando você conhece todos os passos do bebê e como eles se encaixam, é bastante direto e divertido de gerenciar Se você gostou dessa resposta, por favor vote e siga. 1.8k Vistas middot View Upvotes middot Não é para reprodução Embora este seja um tópico muito amplo com referências a algoritmos de construção, configuração de infra-estrutura, alocação de ativos e gerenciamento de riscos, mas vou focar apenas na primeira parte de como deve ser o trabalho de construção de nosso próprio algoritmo , E fazendo as coisas certas. 1. Estratégia de construção. Alguns dos principais pontos a serem observados aqui são: Catch Big Trends - Uma boa estratégia deve, em todos os casos, ganhar dinheiro quando o mercado está em tendência. Os mercados vão com uma boa tendência que dura apenas 15-20 do tempo, mas esse é o momento em que todos os gatos e cachorros (comerciantes de todo o time-frame, intradiário, diário, semanal, longo prazo) estão fora de compras e todos Tem um tema comum. Muitos comerciantes também criam estratégias de reversão médias em que eles tentam julgar as condições quando o preço se afastou da média e negociar contra a tendência, mas eles devem ser construídos quando você criou e negociou com sucesso uma boa tendência seguindo os sistemas . Probabilidades de empilhamento - Muitas vezes, as pessoas trabalham na tentativa de construir um sistema que tenha um excelente índice de sucesso, mas isso não é a abordagem certa. Por exemplo, um algo com um vencedor de 70 com um lucro médio de 100 por troca e perda média de 200 por comércio apenas fará 100 por 10 transações (10trade net). Mas um algo com um vencedor de 30 com lucro médio de 500 por troca e perda de 100 por comércio fará um lucro líquido de 800 para 10 negócios (80trade). Portanto, não é necessário que o índice de ganhos seja bom, e sim as chances de empilhamento, o que deve ser melhor. Isto diz dizendo quotKeep perdas pequenas, mas deixe seus vencedores executarem. Quando investir, o que é confortável raramente é lucrativo. - Robert Arnott Drawdown - Drawdown é inevitável, se você estiver seguindo qualquer tipo de estratégia. Então, ao projetar um algo don039t, tente reduzir a redução ou faça alguma condição personalizada específica para cuidar dessa redução. Esta condição específica pode, no futuro, funcionar como um bloqueio na captura de uma grande tendência e seu algo pode apresentar um desempenho fraco. Gerenciamento de Riscos - Ao construir uma estratégia, você sempre deve ter um portão de saída, o que o mercado opte por fazer. O mercado é um lugar de probabilidades e você deve projetar um algo para tirá-lo de um comércio o mais rápido possível, se isso não corresponder ao seu apetite de risco. Normalmente, argumenta-se que você deve arriscar 1-2 de capital em cada comércio e é otimizado de muitas maneiras, mesmo que você obtenha arnd 10 negociações falsas em sucessão, seu capital irá diminuir apenas 20. Mas isso não é o Caso no cenário de mercado real. Algumas negociações em perdas serão entre 0 a 1, enquanto algumas podem chegar a 3-4, por isso é melhor definir o valor médio de perda de capital por troca e o capital máximo que você pode perder em um comércio, pois os mercados são completamente aleatórios e podem ser julgados . QuotEvery de vez em quando, o mercado faz algo tão estúpido, tira o fôlego. Jim Cramer 2. Testando e otimizando um Slippage Estratégico. Quando estamos testando uma estratégia em dados históricos, estamos sob o pressuposto de que a ordem será executada no preço predefinido chegado pelo algo. Mas isso nunca será o caso, pois temos que lidar com os criadores de mercado e os algoritmos de HFT agora. Seu pedido no mundo de hoje039 nunca será executado no preço desejado, e haverá uma derrapagem. Isso deve ser incluído no teste. Impacto do mercado: o volume negociado pelo algo é outro fator importante a ser considerado enquanto faz back-testing e coletando resultados históricos. À medida que o volume aumenta, as encomendas feitas por algo terão um considerável impacto no mercado e o preço médio da ordem preenchida será muito diferente. O seu algo pode produzir resultados diferentes completos nas condições reais do mercado, se você não estudar a dinâmica do volume que seu algo possui. Otimização: a maioria dos comerciantes sugere que você não faça ajustes de curva e sobre otimização e eles são corretos, pois os mercados são uma função de variáveis ​​aleatórias e nenhuma das duas situações será igual. Portanto, otimizar parâmetros para situações particulares é uma má idéia. Eu sugiro que você vá para a Otimização Zonal. É uma técnica que eu acompanho, compre zonas de identificação que tenham características semelhantes em termos de volatilidade e volume. Otimize essas áreas separadamente, ao invés de otimizar todo o período. Os itens acima são alguns dos passos mais básicos e mais importantes que eu acompanho, ao converter um pensamento básico em um algoritmo e verificando a validade do mesmo. Quase todos têm a força intelectual para seguir o mercado acionário. Se você conseguiu através da matemática de quinto grau, você pode fazê-lo. QuotPeter Lynch 16.4k Views middot View Upvotes middot Não é para reprodução Para começar com o básico, apague-se de Amibroker (AmiBroker - Download). Amibroker tem uma linguagem fácil de aprender e um poderoso mecanismo de backtest onde você pode prototipar suas idéias. Também obtenha o livro Howard Bandy 039s Quantitative Trading Systems. Este livro é uma introdução muito boa aos conceitos de desenvolvimento de quant. Você também precisa de pelo menos um conhecimento básico de estatísticas. Há uma abundância de bons cursos MOOC disponíveis para isso gratuitamente. Tal como este, Statistics One - Princeton University Coursera It039s também vale a pena seguir The Whole Street. Que é um mashup de todos os quant blogs, muitos dos quais publicam código Amibroker com suas idéias. A partir daí, vale a pena aprender Python (aprender python - Pesquisa do Google), e também fazer o excelente curso de Aprendizado de Máquinas Universitárias Stanford da Andrew Ng039, que é gratuito na Coursera. Se você quiser colocar seus próprios algoritmos no teste, bons sites para isso são Quantconnect ou Quantopian. Finalmente, esse cara tem alguns bons conselhos sobre como transformá-lo em sua carreira quantstart Boa sorte com a jornada Tomada parcialmente da resposta de Alan Clement039 para Como um desenvolvedor de software em finanças se torna um desenvolvedor quântico 15.8k Vistas middot View Upvotes middot Não para reprodução Algoritmos de negociação O comércio quantitativo criado não é acessível apenas aos comerciantes institucionais. Os comerciantes de varejo estão se envolvendo também. Embora as habilidades de programação sejam recomendadas se você quiser produzir algoritmos, mesmo aqueles que sempre são necessários. São disponíveis programas e serviços que escrevem o código de programação para uma estratégia com base nas entradas que você fornece. O código produzido pelo serviço de programas é então conectado à plataforma de negociação e as negociações começam. Mas antes que tudo isso possa ocorrer, os comerciantes algorítmicos desejosos progridem através de várias etapas, decidindo exatamente o que eles querem realizar com o algoritmo. e como. Time Frame e Restrições Enquanto um algoritmo bem programado pode ser executado sozinho, recomenda-se algum descuido humano. Portanto, escolha um cronograma e uma freqüência comercial que você possa monitorar. Se você tem um emprego a tempo inteiro e seu algoritmo está programado para fazer centenas de negócios por dia em um gráfico de um minuto enquanto você está no trabalho, isso pode não ser o ideal. Você pode desejar escolher um quadro um pouco mais longo para suas negociações e menos frequência comercial para que você possa seguir abas. A rentabilidade na fase de teste do algoritmo não significa que continuará a produzir esses retornos para sempre. Ocasionalmente, você precisará intervir e alterar o algoritmo de negociação se os resultados revelarem que ele já não está funcionando bem. Este é também um compromisso de tempo que qualquer pessoa que se compromete a negociar algorítmica deve aceitar. As restrições financeiras também são um problema. As comissões se acumulam muito rapidamente com uma estratégia de negociação de alta freqüência, portanto, assegure-se de que você esteja com o corretor de menor custo disponível e que o potencial de lucro de cada negociação garante o pagamento dessas comissões, potencialmente muitas vezes por dia. O capital inicial também é uma consideração. Diferentes mercados e produtos financeiros exigem valores diferentes de capital. Se o dia de negociação de ações você precisará de pelo menos 25.000 (mais é recomendado), mas negociação forex ou futuros você pode potencialmente começar com menos. As restrições de mercado são outra questão. Nem todos os mercados são adequados ao comércio algorítmico. Escolha ações, ETFs, pares de divisas ou futuros com ampla liquidez para lidar com as ordens que o algoritmo estará produzindo. Desenvolva ou ajuste uma estratégia Uma vez que as restrições financeiras e de tempo são compreendidas, desenvolva ou ajuste uma estratégia que pode ser programada. Você pode ter uma estratégia que você troca manualmente, mas é facilmente codificado. Se sua estratégia é altamente subjetiva e não baseada em regras, a programação da estratégia pode ser impossível. As estratégias baseadas em regras são as mais fáceis de codificar estratégias com entradas, parar de perdas e metas de preços com base em dados quantificáveis ​​ou movimentos de preços. Uma vez que as estratégias baseadas em regras são facilmente copiadas e testadas, há uma abundância disponível gratuitamente se você não tiver idéias próprias. A Quantpedia é um desses recursos, fornecendo documentos acadêmicos e resultados comerciais para vários métodos de negociação quantitativos. As regras descritas podem ser codificadas e, em seguida, testadas quanto à rentabilidade nos dados passados ​​e atuais. Codificar um algoritmo requer habilidade de programação ou acesso a software ou alguém que possa codificar para você. Testando um Algoritmo de Negociação O passo mais importante é testar. Uma vez que uma estratégia de negociação foi codificada, não troque o capital real com ela até que ela tenha sido testada. O teste inclui permitir que o algoritmo funcione em dados de preços históricos, mostrando como o algoritmo foi realizado em milhares de negócios. Se a fase de teste histórico for rentável e as estatísticas produzidas são aceitáveis ​​para suas tolerâncias de risco, como redução máxima, relação de ganhos, risco de ruína. Por exemplo, proceda a testar o algoritmo em condições de vida em uma conta demo. Mais uma vez, esta fase deve produzir centenas de negócios para que você possa acessar o desempenho. Se o algoritmo é rentável em dados de preços históricos e negociando uma conta de demonstração ao vivo, use-o comercialmente de capital real, mas com um olhar atento. As condições ao vivo são diferentes dos testes históricos ou de demonstração, porque as ordens de algoritmos realmente afetam o mercado e podem causar derrapagens. Até que seja verificado, o algoritmo funciona no mercado real, como fez nos testes, mantenha um olhar atento. Enquanto o algoritmo estiver operando dentro dos parâmetros estatísticos estabelecidos durante o teste, deixe o algoritmo sozinho. Algoritmos têm o benefício de negociar sem emoção. Mas um comerciante que constantemente brincadeira com o algoritmo está anulando esse benefício. O algoritmo exige atenção. Monitorize o desempenho e, se as condições de mercado mudam tanto que o algoritmo já não está funcionando como deveria, então os ajustes podem ser necessários. A negociação algorítmica não é um esforço de set-and-forget que o faz rico durante a noite. De fato, a negociação quantitativa pode ser tanto trabalho quanto a negociação manual. Se você optar por criar um algoritmo, esteja ciente de como o tempo, as restrições financeiras e de mercado podem afetar sua estratégia e planejar de acordo. Transforme uma estratégia atual em uma regra baseada em uma que possa ser mais facilmente programada ou selecione um método quantitativo que já foi testado e pesquisado. Em seguida, execute sua própria fase de teste usando dados históricos e atuais. Se isso for verificado, então execute o algoritmo com dinheiro real sob um olhar atento. Ajuste, se necessário, mas, de outra forma, deixe seu trabalho funcionar.

Comments

Popular Posts