Tuesday 21 November 2017

Estratégias de negociação algorítmica com exemplos de matlab


Noções básicas de negociação algorítmica: conceitos e exemplos Um algoritmo é um conjunto específico de instruções claramente definidas, destinadas a realizar uma tarefa ou processo. A negociação algorítmica (negociação automatizada, negociação em caixa preta ou simplesmente algo-trading) é o processo de usar computadores programados para seguir um conjunto definido de instruções para colocar um comércio para gerar lucros a uma velocidade e freqüência impossíveis para um Comerciante humano. Os conjuntos definidos de regras são baseados em tempo, preço, quantidade ou qualquer modelo matemático. Além das oportunidades de lucro para o comerciante, o algo-trading torna os mercados mais líquidos e torna a negociação mais sistemática descartando impactos emocionais humanos nas atividades comerciais. Suponha que um comerciante siga esses critérios de comércio simples: Compre 50 ações de uma ação quando sua média móvel de 50 dias exceda a média móvel de 200 dias. Vende ações da ação quando sua média móvel de 50 dias está abaixo da média móvel de 200 dias Usando este conjunto de duas instruções simples, é fácil escrever um programa de computador que monitorará automaticamente o preço das ações (e os indicadores de média móvel) e colocará as ordens de compra e venda quando as condições definidas forem atendidas. O comerciante não precisa mais manter um relógio para preços e gráficos ao vivo, ou colocar as ordens manualmente. O sistema de comércio algorítmico automaticamente faz isso para ele, identificando corretamente a oportunidade comercial. (Para obter mais informações sobre as médias móveis, consulte: Médias móveis simples, faça as Tendências se destacarem.) A Algo-trading oferece os seguintes benefícios: Negociações executadas com os melhores preços. Posicionamento de pedidos comerciais instantâneo e preciso (com altas chances de execução nos níveis desejados) Cronometrado corretamente e instantaneamente, para evitar mudanças de preços significativas Custos de transação reduzidos (veja o exemplo de falta de implementação abaixo) Verificações automatizadas simultâneas em múltiplas condições de mercado Redução do risco de erros manuais na colocação dos negócios Backtest o algoritmo, com base nos dados históricos e em tempo real disponíveis Reduzida Possibilidade de erros cometidos por comerciantes humanos com base em fatores emocionais e psicológicos. A maior parte do dia-a-dia é a negociação de alta freqüência (HFT), que tenta capitalizar a colocação de um grande número de pedidos em velocidades muito rápidas em múltiplos mercados e decisões múltiplas Parâmetros, com base em instruções pré-programadas. (Para mais informações sobre negociação de alta frequência, consulte: Estratégias e Segredos de Empresas de Negociação de Alta Frequência (HFT)) A Algo-trading é utilizada em muitas formas de atividades de negociação e investimento, incluindo: investidores de médio a longo prazo ou empresas de compra (fundos de pensão , Fundos de investimento, companhias de seguros) que compram em ações em grandes quantidades, mas não querem influenciar os preços das ações com investimentos discretos e em grande volume. Os comerciantes de curto prazo e os participantes do lado da venda (fabricantes de mercado, especuladores e arbitragistas) também se beneficiam da execução automatizada do comércio e ajudam a criar liquidez suficiente para os vendedores no mercado. Os comerciantes sistemáticos (seguidores de tendências, comerciantes de pares, hedge funds, etc.) acham muito mais eficiente programar suas regras de negociação e permitir que o programa seja comercializado automaticamente. O comércio algorítmico proporciona uma abordagem mais sistemática ao comércio ativo do que os métodos baseados em intuição ou instinto de comerciantes humanos. Estratégias de negociação algorítmica Qualquer estratégia para negociação algorítmica exige uma oportunidade identificada que seja rentável em termos de melhoria de ganhos ou redução de custos. As seguintes são estratégias de negociação comuns usadas em algo-trading: as estratégias de negociação algorítmicas mais comuns seguem as tendências nas médias móveis. Fugas de canal. Movimentos de níveis de preços e indicadores técnicos relacionados. Estas são as estratégias mais fáceis e simples de implementar através de negociação algorítmica porque essas estratégias não envolvem fazer previsões ou previsões de preços. As negociações são iniciadas com base na ocorrência de tendências desejáveis. Que são fáceis e direitas de implementar através de algoritmos sem entrar na complexidade da análise preditiva. O exemplo acima mencionado de média móvel de 50 e 200 dias é uma tendência popular seguindo a estratégia. (Para mais informações sobre as estratégias de negociação de tendências, veja: Estratégias simples para capitalizar as tendências.) Comprar uma ação dupla cotada a um preço mais baixo em um mercado e simultaneamente vendê-lo a um preço mais alto em outro mercado oferece o diferencial de preço como lucro livre de risco Ou arbitragem. A mesma operação pode ser replicada para ações versus instrumentos de futuros, pois os diferenciais de preços existem de tempos em tempos. Implementar um algoritmo para identificar esses diferenciais de preços e colocar as ordens permite oportunidades lucrativas de forma eficiente. Os fundos do índice definiram períodos de reequilíbrio para que suas participações fossem compatíveis com seus respectivos índices de referência. Isso cria oportunidades rentáveis ​​para comerciantes algorítmicos, que capitalizam os negócios esperados que oferecem lucros de 20 a 80 pontos base, dependendo do número de ações no fundo do índice, apenas antes do reequilíbrio do fundo do índice. Essas negociações são iniciadas através de sistemas de negociação algorítmica para execução atempada e melhores preços. Muitos modelos matemáticos comprovados, como a estratégia de negociação neutra dota, que permitem a negociação em combinação de opções e sua segurança subjacente. Onde os negócios são colocados para compensar deltas positivos e negativos para que o portfólio delta seja mantido em zero. A estratégia de reversão média baseia-se na idéia de que os preços altos e baixos de um bem são um fenômeno temporário que retorna periodicamente ao seu valor médio. Identificar e definir uma faixa de preço e implementar algoritmos com base em isso permite que os negócios sejam colocados automaticamente quando o preço do recurso entra e sai do seu alcance definido. A estratégia de preços médios ponderados por volume quebra uma grande ordem e libera dinamicamente determinados pedaços menores da ordem para o mercado usando perfis de volume histórico específicos de estoque. O objetivo é executar a ordem próxima ao preço médio ponderado por volume (VWAP), beneficiando assim o preço médio. A estratégia de preço médio ponderado no tempo quebra uma grande ordem e libera dinamicamente determinados pedaços menores da ordem para o mercado usando intervalos de tempo uniformemente divididos entre uma hora de início e fim. O objetivo é executar a ordem perto do preço médio entre os horários de início e término, minimizando assim o impacto no mercado. Até que a ordem comercial seja totalmente preenchida, esse algoritmo continua enviando ordens parciais, de acordo com o índice de participação definido e de acordo com o volume negociado nos mercados. A estratégia de etapas relacionadas envia ordens a uma porcentagem definida pelo usuário de volumes do mercado e aumenta ou diminui essa taxa de participação quando o preço da ação atinge os níveis definidos pelo usuário. A estratégia de falta de implementação visa minimizar o custo de execução de uma ordem através da negociação do mercado em tempo real, economizando assim o custo da ordem e beneficiando do custo de oportunidade da execução atrasada. A estratégia aumentará a taxa de participação direcionada quando o preço das ações se mover de forma favorável e diminuí-lo quando o preço das ações se mover de forma adversa. Existem algumas classes especiais de algoritmos que tentam identificar acontecimentos do outro lado. Esses algoritmos de sniffing, usados, por exemplo, por um fabricante de mercado de venda têm a inteligência interna para identificar a existência de qualquer algoritmo no lado da compra de uma grande ordem. Essa detecção através de algoritmos ajudará o fabricante de mercado a identificar grandes oportunidades de ordem e permitir que ele se beneficie ao preencher as ordens a um preço mais elevado. Isso às vezes é identificado como front-running de alta tecnologia. (Para obter mais informações sobre negociação de alta freqüência e práticas fraudulentas, consulte: Se você comprar ações on-line, você está envolvido em HFTs.) Requisitos técnicos para negociação algorítmica Implementar o algoritmo usando um programa de computador é a última parte, batida com backtesting. O desafio é transformar a estratégia identificada em um processo informatizado integrado que tenha acesso a uma conta de negociação para fazer pedidos. São necessários os seguintes conhecimentos: conhecimento de programação de computador para programar a estratégia de negociação necessária, programadores contratados ou software de negociação pré-fabricado. Conectividade de rede e acesso a plataformas de negociação para colocar os pedidos. Acesso a feeds de dados de mercado que serão monitorados pelo algoritmo para oportunidades de colocação Ordens A capacidade e a infra-estrutura para testar o sistema uma vez construído, antes de entrar em operação em mercados reais Dados históricos disponíveis para backtesting, dependendo da complexidade das regras implementadas no algoritmo. Aqui está um exemplo abrangente: o Royal Dutch Shell (RDS) está listado em Amsterdã Stock Exchange (AEX) e London Stock Exchange (LSE). Vamos criar um algoritmo para identificar oportunidades de arbitragem. Aqui estão algumas observações interessantes: as negociações da AEX em euros, enquanto a LSE é negociada em libras esterlinas. Por causa da diferença horária de uma hora, a AEX abre uma hora antes da LSE, seguido de ambas as trocas comerciais simultaneamente durante as próximas horas e depois da negociação somente na LSE durante A última hora com o fechamento da AEX Podemos explorar a possibilidade de negociação de arbitragem nas ações do Royal Dutch Shell listadas nesses dois mercados em duas moedas diferentes. Um programa de computador que pode ler os preços atuais do mercado. Os preços dos feeds da LSE e AEX A forex para Taxa de câmbio GBP-EUR Capacidade de colocação de pedidos que pode rotear a ordem para a troca correta. Capacidade de teste de back-up em feeds de preços históricos. O programa de computador deve executar o seguinte: Leia o preço de entrada do estoque RDS de ambas as bolsas Usando as taxas de câmbio disponíveis . Converte o preço de uma moeda para outra. Se houver uma discrepância de preços suficientemente grande (descontando os custos de corretagem), levando a uma oportunidade rentável, então coloque o pedido de compra em troca de preços mais baixos e venda em câmbio com preços mais altos Se as ordens forem executadas como Desejado, o lucro da arbitragem seguirá Simples e Fácil No entanto, a prática de negociação algorítmica não é tão simples de manter e executar. Lembre-se, se você pode colocar um comércio gerado por algo, os outros participantes do mercado podem também. Conseqüentemente, os preços flutuam em milissegundos e até mesmo em microssegundos. No exemplo acima, o que acontece se o seu comércio de compras for executado, mas vender o comércio não, à medida que os preços de venda mudam quando o seu pedido atingir o mercado Você vai acabar sentado com uma posição aberta. Tornando sua estratégia de arbitragem inútil. Existem riscos e desafios adicionais: por exemplo, riscos de falha do sistema, erros de conectividade de rede, atrasos de tempo entre ordens comerciais e execução e, o mais importante, algoritmos imperfeitos. O algoritmo mais complexo, o backtesting mais rigoroso é necessário antes de ser posto em ação. A análise quantitativa de um algoritmo de desempenho desempenha um papel importante e deve ser examinada criticamente. É emocionante ir pela automação auxiliada por computadores com a noção de ganhar dinheiro sem esforço. Mas é preciso certificar-se de que o sistema está completamente testado e os limites exigidos são definidos. Os comerciantes analíticos devem considerar aprender programação e construir sistemas por conta própria, ter confiança em implementar as estratégias certas de forma infalível. O uso cauteloso e o teste minucioso de algo-trading podem criar oportunidades rentáveis. NegociaçãoAlgorítmica A negociação algorítmica é uma estratégia de negociação que usa algoritmos computacionais para gerar decisões comerciais, geralmente em mercados financeiros eletrônicos. Aplicado em instituições de compra e venda, a negociação algorítmica é a base da negociação de alta freqüência. Negociação de FOREX e análise de risco e execução associada. Construtores e usuários de aplicativos de negociação algorítmica precisam desenvolver, backtest. E implanta modelos matemáticos que detectam e exploram os movimentos do mercado. Um fluxo de trabalho efetivo envolve: Desenvolvimento de estratégias de negociação, usando séries temporais técnicas. Aprendizado automático. E métodos não-lineares de séries temporais Aplicando computação paralela e GPU para backtesting e identificação de parâmetros com economia de tempo Cálculo de lucro e perda e realização de análise de risco Execução de análise de execução, como modelagem de impacto de mercado. Análise de custos de transações. E detecção de icebergs Incorporando estratégias e análises em ambientes de negociação de produção Selecione seu país Estratégias de negociação de algoritmos com exemplos de MATLAB O paradigma tradicional de aplicar técnicas de aprendizagem de máquinas não-lineares a estratégias de negociação algorítmica tipicamente sofre um viés snooping de dados maciços. Por outro lado, as técnicas lineares, inspiradas e limitadas pelo conhecimento aprofundado do domínio, provaram ser valiosas. Esta apresentação descreve a aplicação do filtro de Kalman, uma técnica quintessencialmente linear, de duas formas diferentes de negociação algorítmica. Foco do produto Selecione seu país

No comments:

Post a Comment