вторник, 24 апреля 2018 г.

Indicadores de negociação algorítmica


Biblioteca de Negociação Algorítmica Python.


PyAlgoTrade é uma Biblioteca de Negociação Algorítmica Python com foco em backtesting e suporte para negociação de papel e negociação ao vivo. Digamos que você tenha uma idéia de uma estratégia de negociação e que você gostaria de avaliá-la com dados históricos e ver como ela se comporta. PyAlgoTrade permite que você faça isso com um esforço mínimo.


Principais características.


Totalmente documentado. Evento conduzido. Suporta pedidos Market, Limit, Stop e StopLimit. Suporta Yahoo! Finanças, Google Finance e NinjaTrader CSV. Suporta qualquer tipo de dados da série temporal no formato CSV, por exemplo, Quandl. Suporte comercial Bitcoin através do Bitstamp. Indicadores técnicos e filtros como SMA, WMA, EMA, RSI, Bandas Bollinger, Expositores Hurst e outros. Métricas de desempenho como a taxa de Sharpe e análise de redução. Manipulação de eventos do Twitter em tempo real. Perfil de eventos. Integração TA-Lib.


Muito fácil de dimensionar horizontalmente, ou seja, usando um ou mais computadores para testar uma estratégia.


PyAlgoTrade é gratuito, de código aberto e está licenciado sob a Licença Apache, Versão 2.0.


Negociação algorítmica.


Desenvolvimento de robôs de negociação e indicadores técnicos.


A negociação algorítmica (negociação automatizada) é uma das características mais fortes do MetaTrader 4, permitindo que você desenvolva, teste e aplique consultores especializados e indicadores técnicos. Elimina quaisquer obstáculos na atividade analítica e comercial.


A plataforma possui o IDE MQL4 (Integrated Development Environment), permitindo que você desenvolva Expert Advisors (robôs comerciais) e indicadores técnicos de qualquer complexidade. Seu núcleo é a linguagem de programação orientada a objetos MQL4 para o desenvolvimento da estratégia de negociação. Oferece alta eficiência, flexibilidade e funcionalidade.


O MetaEditor incorporado foi projetado para o desenvolvimento de estratégias de negociação no MQL4. Também possui o depurador. A compilação também é executada no editor. Depois disso, o aplicativo é movido automaticamente para o MetaTrader 4, onde ele pode ser testado ou otimizado no testador de estratégia, que é outro componente IDE do MQL4. A plataforma MetaTrader 4 executa aplicativos comerciais e, portanto, é o último componente do ambiente.


Então, no MetaTrader 4, seu indicador analisa os mercados, enquanto um consultor especialista negocia neles. Mas isso não é tudo. Você pode usar o seu produto pronto de outras maneiras:


publicá-lo na Base de Código, para que milhões de comerciantes possam baixá-lo gratuitamente e vendê-lo no Market, entregá-lo ao seu cliente através do serviço Freelance e receber um pagamento pelo seu trabalho.


O Automated Trading Championship (uma competição de robôs comerciais mantida pela nossa empresa) demonstrou claramente o poder da linguagem. Durante três meses, os Expert Advisors do MQL4 competiram por um fundo de prêmios de 80.000 USD sem qualquer intervenção humana, e você pode descobrir os detalhes.


Em outras palavras, o MetaTrader 4 oferece as maiores oportunidades para o desenvolvimento de Expert Advisors e indicadores técnicos. Além disso, com o MetaTrader 4, você recebe serviços adicionais, permitindo que você utilize plenamente seus talentos de programação.


Onde encontrar robôs de negociação e indicadores.


A plataforma de negociação contém uma infinidade de indicadores técnicos populares usados ​​para análise. No entanto, você pode receber ainda mais ferramentas para sua negociação. Um grande número de indicadores personalizados adicionais pode ser acessado diretamente da plataforma de negociação.


Mercado - a loja de aplicativos para a plataforma de negociação.


O Market é um serviço seguro para a compra de robôs de negociação, indicadores, scripts e outros programas de negociação. É uma loja de aplicativos prontos para trabalhar nos mercados financeiros. O serviço está disponível para todos os usuários da plataforma de negociação. Você pode abrir o Market a qualquer momento para comprar ou alugar um programa e executá-lo diretamente em sua plataforma.


Para comprar um produto selecionado, vá até a página dele e clique em "Comprar". Após a confirmação da operação, o aplicativo é ativado e baixado para a pasta apropriada, dependendo de ser um Expert Advisor, um indicador ou um script. O nome do software é adicionado ao Navegador, a partir do qual ele pode ser executado em um gráfico.


Code Base - uma biblioteca de código fonte livre de Expert Advisors e indicadores.


Diretamente da plataforma você pode acessar uma enorme base de código de aplicativos gratuitos para negociação automatizada. Todos os aplicativos estão disponíveis na forma de um código-fonte. No entanto, você pode facilmente usá-los mesmo se não estiver familiarizado com a programação.


Quando você faz o download do código, ele é automaticamente compilado, após o qual um aplicativo pronto para uso é criado e salvo no diretório apropriado, dependendo de ser um Expert Advisor, um Indicador ou um Script. O nome do software é adicionado ao Navegador, a partir do qual ele pode ser executado em um gráfico.


Freelance - um serviço online para pedidos de negociação de desenvolvedores profissionais.


Se você não conseguir encontrar o aplicativo desejado na Base de Código ou no Market, solicite um de um desenvolvedor profissional no serviço de Freelance do site da MQL5munity.


O procedimento de pedido é seguro: o pagamento é congelado durante o desenvolvimento e só é transferido para o desenvolvedor quando o cliente aceita o aplicativo resultante. Qualquer disputa pode ser resolvida por meio de arbitragem.


MQL5 - uma linguagem de programação usada para o desenvolvimento de Expert Advisors e indicadores.


Você pode desenvolver seus próprios robôs ou indicadores de negociação usando a linguagem de programação MQL5. Esta linguagem é baseada no conceito da popular linguagem de programação C ++. O MQL5 também é uma linguagem de programação orientada a objetos de alto nível. No entanto, devido à sua especialização estreita, o MQL5 prospera nos desafios dos mercados financeiros.


O MetaEditor especializado está disponível para desenvolvimento de programas. Ele pode reconhecer estruturas de linguagem: sugere dicas sobre como usar funções e destaca vários elementos do código-fonte do programa. Assim, o editor aprimora a navegação no código-fonte dos programas de negociação e acelera o processo de desenvolvimento.


Expert Advisors e Custom Indicators.


Duas grandes categorias podem ser destacadas entre aplicativos de negociação automatizados: robôs de negociação e indicadores. As aplicações do primeiro tipo são projetadas para executar operações de negociação, e os programas de segundo tipo são usados ​​para analisar preços e identificar padrões em mudanças de preço. Os indicadores podem ser usados ​​diretamente em robôs comerciais, formando um sistema de negociação automatizado completo.


Como executar um robô comercial ou um indicador.


Para iniciar um Expert Advisor, anexe-o a um gráfico. A maneira mais fácil é clicar duas vezes em um Expert Advisor na janela Navegador ou arrastá-lo e soltá-lo em um gráfico.


Isso abrirá a janela Propriedades do Expert Advisor. Clique em OK para iniciar os Expert Advisors no gráfico. Se um Expert Advisor foi iniciado com sucesso, seu nome e ícone aparecem no canto superior direito do gráfico.


Se o ícone for, o Expert Advisor não poderá realizar operações de negociação. Ative a negociação automatizada nas configurações do Expert Advisor, bem como nas opções da plataforma de negociação.


Apenas um Expert Advisor pode ser executado em um gráfico. Se você iniciar outro Expert Advisor no mesmo gráfico, o primeiro será removido. O número de indicadores aplicados em um gráfico não é limitado.


Configuração do aplicativo antes do início.


Uma janela de propriedades do aplicativo é aberta antes de ser iniciada em um gráfico.


O & quot; comum & quot; guia contém informações sobre o aplicativo: nome, versão, direitos autorais, o nome da empresa de desenvolvimento de software (dois últimos parâmetros podem ser representados como links para a página da Web correspondente) e descrição.


Se uma licença for necessária para um Expert Advisor (por exemplo, ele é comprado ou baixado do Market), os detalhes da licença apropriados (data de expiração, demonstração) são exibidos aqui.


Parâmetros individuais do início do Expert Advisor são configurados na parte inferior da janela:


Permitir modificação de configurações de Sinais - esta opção permite que um aplicativo MQL5 se inscreva e cancele a assinatura de Sinais, além de editar configurações de sinal. As funções para acessar o banco de dados de Sinais de um aplicativo MQL5 permitem que você realize sua própria análise da qualidade dos sinais, gerencie dinamicamente a assinatura e ajuste os riscos. Mais detalhes sobre as funções de gerenciamento de sinal estão disponíveis na Referência MQL5. Permitir Negociação Automática - esta opção limita as atividades de negociação dos Expert Advisors. Essa limitação pode ser útil ao testar recursos analíticos de Expert Advisors no modo de tempo real (não confundir com backtesting). Observe que, mesmo que essa opção esteja ativada, o autotrading para o Expert Advisor poderá ser desativado nas configurações comuns da plataforma.


Parâmetros comuns para todos os Expert Advisors são especificados nas configurações da plataforma de negociação.


Parâmetros de entrada de robôs e indicadores de negociação.


Um aplicativo pode ter parâmetros de entrada. Eles permitem que você controle o comportamento do aplicativo, tornando seu uso mais flexível. Um aplicativo pode não ter parâmetros de entrada se um desenvolvedor não os tiver fornecido.


Como modificar os parâmetros da aplicação.


Para modificar um parâmetro, clique duas vezes nele e insira um novo valor.


Como usar as predefinições de parâmetro.


Você pode usar o botão & quot; Salvar & quot; botão para salvar o conjunto atual de parâmetros e o campo & quot; Carregar & quot; botão para carregar um conjunto salvo anteriormente. Conjuntos de parâmetros de entrada são armazenados na pasta / Presets da plataforma de negociação.


Como restaurar as configurações padrão


Para restaurar as configurações padrão, clique em & quot; Redefinir & quot ;.


Os Expert Advisors já conectados podem ser configurados individualmente. No entanto, a janela de propriedades do Expert Advisor não pode ser aberta durante a execução atual. Isso só pode ser feito em períodos entre as chamadas de função Start (). Nesse caso, um Expert Advisor não será iniciado até que sua janela de parâmetros seja fechada. Se os parâmetros de entrada de um Expert Advisors tiverem sido alterados, o EA será reinicializado com novos parâmetros de entrada após o parâmetro & quot; OK & quot; botão é pressionado.


Programas usando funções externas (DLL)


O & quot; Dependências & quot; A aba aparece se o Expert Advisor usa a importação de funções de outros arquivos EX5 ou DLL. O uso de DLLs externas pode estender a funcionalidade do programa. No entanto, é potencialmente perigoso. Essas funções devem ser permitidas apenas para aplicativos confiáveis.


Os arquivos usados ​​pelo Expert Advisor são exibidos como uma lista em forma de árvore. Os ícones verdes indicam chamadas de funções de programas MQL5 e os ícones vermelhos indicam chamadas de funções dentro de DLLs.


Uma opção para habilitar / desabilitar DLLs está disponível na parte superior da guia:


Permitir importações de DLL - os Expert Advisors podem usar DLLs para estender sua funcionalidade. Se essa opção estiver ativada, essas bibliotecas poderão ser usadas sem restrições. Se um aplicativo MQL5 usa uma DLL, mas sua importação é proibida (esta opção está desabilitada), a opção & quot; OK & quot; O botão não é exibido na janela inicial do aplicativo.


Não ative o & quot; Permitir uso de importações de DLL & quot; opção se você não tiver certeza de que o lançamento do aplicativo é seguro. Aplicativos obtidos de fontes desconhecidas podem causar danos por meio do uso de DLLs de terceiros.


Como controlar o Expert Advisor Trading.


A possibilidade de negociação automatizada pode ser controlada no nível da plataforma de negociação ou separadamente para cada robô de negociação.


Botão & quot; AutoTrading & quot; na barra de ferramentas (e uma opção semelhante em Opções - Expert Advisors) ativa / desativa a negociação automatizada na plataforma. Se você desativá-lo, a negociação automatizada será desativada para todos os Expert Advisors, mesmo se você ativar a negociação automatizada individualmente nas configurações dos Expert Advisors. Se você ativá-lo, os Expert Advisors poderão negociar, a menos que a negociação automatizada seja desativada individualmente nos parâmetros do Expert Advisor.


As permissões de negociação automatizadas podem ser convenientemente gerenciadas para Consultores Especialistas individuais na janela Navegador, em vez de em seus parâmetros. Na janela Navegador, a lista de todos os Expert Advisors em execução é exibida para uma conta conectada. Além do nome do Expert Advisor, um gráfico no qual o EA está sendo executado é especificado na lista. Um ícone indica se o EA está autorizado a negociar.


O menu de contexto contém comandos para habilitar ou desabilitar a negociação automatizada para qualquer um dos Expert Advisors, bem como para visualizar suas propriedades ou removê-las do gráfico.


Quais configurações de plataforma afetam o comércio automatizado?


As configurações que afetam a negociação automatizada estão disponíveis na guia Expert Advisors das opções da plataforma.


As seguintes configurações estão disponíveis:


Permitir negociação automática - essa opção permite ou proíbe a negociação usando Expert Advisors e scripts. Se estiver desativado, os scripts e os Expert Advisors poderão funcionar, mas não poderão negociar. Essa limitação pode ser útil para testar os recursos analíticos de um Expert Advisor no modo em tempo real (não confundir com o teste em dados de histórico).


A opção ativa / desativa a negociação automatizada para toda a plataforma. Se você desativá-lo, nenhum Expert Advisor poderá negociar, mesmo se você ativar a negociação automatizada individualmente nas configurações do Expert Advisor. Se você ativá-lo, os Expert Advisors poderão negociar, a menos que a negociação automatizada seja desativada individualmente nos parâmetros do Expert Advisor. Desabilite a negociação automatizada ao trocar de conta - essa opção representa um mecanismo de proteção que desativa a negociação por Expert Advisors e scripts quando a conta é alterada. É útil, por exemplo, ao mudar de uma conta de demonstração para uma conta real. Desativar negociação automatizada ao alternar perfis - uma grande quantidade de informações sobre as configurações atuais de todos os gráficos no espaço de trabalho é armazenada em perfis. Particularmente, os perfis contêm informações sobre os Expert Advisors anexados. Os Expert Advisors incluídos no perfil começarão a trabalhar com a chegada de um novo tick. Ative esta opção para impedir a negociação por Expert Advisors ao alterar o perfil. Desativar negociação automatizada ao alternar símbolos ou período de gráfico - se essa opção for ativada, quando o período ou o símbolo de um gráfico for alterado, o Expert Advisor vinculado a ele será automaticamente proibido de negociar. Permitir importações de DLL (potencialmente perigosas, habilitar apenas para aplicativos confiáveis) - para estender a funcionalidade, os aplicativos mql5 podem usar DLLs. Essa opção permite determinar um valor padrão para as & quot; Permitir importações de DLL & quot; parâmetro utilizado durante o início das aplicações. Recomenda-se desabilitar a importação ao trabalhar com Expert Advisors desconhecidos. Permitir WebRequest para URL listado - a função WebRequest () no MQL5 é usada para receber e enviar informações para sites usando solicitações GET e POST. Para permitir que um aplicativo MQL5 envie tais solicitações, ative essa opção e especifique explicitamente as URLs de sites confiáveis. Por motivos de segurança, a opção está desativada por padrão.


Para excluir um endereço da lista confiável, selecione-o e pressione & quot; Excluir & quot ;.


Acesso rápido a programas usados ​​com freqüência.


Para acesso rápido a programas usados ​​com frequência, use & quot; Favoritos & quot; e teclas de atalho.


Selecione um robô de negociação, um indicador ou um script e adicione-o aos seus Favoritos usando o menu de contexto. Todos os seus programas favoritos são exibidos em uma guia separada do Navegador e podem ser acessados ​​facilmente.


Para um início rápido em um gráfico, qualquer programa pode receber um atalho-chave. Isso pode ser feito através do menu de contexto da janela Navegador.


No exemplo acima, as teclas & quot; Alt + 1 & quot; estão definidos para um script. Uma vez que eles são pressionados, o script é lançado instantaneamente no gráfico aberto atual.


Negociação Algorítmica.


Vamos robôs de negociação analisar o mercado e comércio para você.


Uma das possibilidades mais fascinantes oferecidas pelo MetaTrader 5 é o recurso de negociação algorítmica, que permite a negociação automatizada usando robôs. Essas aplicações podem analisar o mercado e realizar operações de negociação de acordo com uma estratégia de negociação específica.


A plataforma MetaTrader 5 fornece um ambiente de desenvolvimento MQL5 especializado para negociação algorítmica. O MQL5 IDE permite que traders e programadores com qualquer nível de habilidade desenvolvam, depurem, testem e otimizem robôs de negociação.


Se você é um trader novato, use o Assistente MQL5 para negociação algorítmica. Este prático assistente irá ajudá-lo a montar um robô simples de blocos prontos.


Para desenvolvedores experientes, o MQL5 IDE oferece ainda mais possibilidades, como a linguagem de programação MQL5, o MetaEditor, o testador de estratégia com suporte a tick real e a Referência de Linguagem com descrição detalhada de todas as construções de linguagem.


Se você não estiver familiarizado com programação, use soluções prontas. Robôs de negociação e indicadores técnicos podem ser comprados no Market, baixados gratuitamente da Base de Código ou podem ser encomendados de desenvolvedores profissionais:


Convidamos todos os traders algorítmicos a se unirem à MQL5munity, que é a maior comunidade de desenvolvedores MQL5. O site apresenta uma base de conhecimento única e vários serviços para ajudar você a gerar receita com suas habilidades de programação.


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.


O comércio algorítmico (negociação automatizada, negociação de caixa preta ou simplesmente negociação de algoritmos) é o processo de usar computadores programados para seguir um conjunto definido de instruções para fazer uma negociação, a fim de gerar lucros a uma velocidade e freqüência impossíveis para uma negociação. comerciante humano. Os conjuntos de regras definidos são baseados em tempo, preço, quantidade ou qualquer modelo matemático. Para além das oportunidades de lucro para o comerciante, a negociação de algoritmos torna os mercados mais líquidos e torna o comércio mais sistemático ao excluir os impactos humanos emocionais nas atividades de negociação. (Para mais, confira Escolhendo o Software de Negociação Algorítmica Certo.)


Suponha que um comerciante siga estes critérios comerciais simples:


Compre 50 ações de uma ação quando a média móvel de 50 dias ultrapassar a média móvel de 200 dias. Venda ações da ação quando a média móvel de 50 dias ficar 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 monitore automaticamente o preço das ações (e os indicadores de média móvel) e coloque as ordens de compra e venda quando as condições definidas forem atendidas. O comerciante não precisa mais ficar de olho nos preços e gráficos ao vivo, ou colocar os pedidos manualmente. O sistema de negociação algorítmica faz isso automaticamente, identificando corretamente a oportunidade de negociação. (Para obter mais informações sobre médias móveis, consulte Médias móveis simples Faça as tendências se destacarem.)


[Se você quiser aprender mais sobre as estratégias comprovadas e que podem eventualmente ser trabalhadas em um sistema de negociação alorítimo, confira o curso Torne-se um Day Trader da Investopedia Academy. ]


Benefícios do comércio algorítmico.


Algo-trading fornece os seguintes benefícios:


Negociações executadas com os melhores preços Possibilidade de colocação imediata e imediata de ordens (com altas chances de execução nos níveis desejados) Negociações cronometradas correta e instantaneamente, para evitar mudanças significativas nos preços Redução dos custos de transação (veja o exemplo de déficit de implementação abaixo) Verificações automatizadas simultâneas em múltiplos condições de mercado Risco reduzido de erros manuais na colocação dos negócios Backtest o algoritmo, com base em dados históricos e em tempo real disponíveis Reduzida possibilidade de erros por parte de comerciantes humanos com base em fatores emocionais e psicológicos.


A maior parte da negociação de algoritmos atuais é a negociação de alta frequência (HFT), que tenta capitalizar a colocação de um grande número de pedidos em velocidades muito rápidas em vários mercados e vários parâmetros de decisão, 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).)


O comércio de algo é usado em muitas formas de atividades de negociação e investimento, incluindo:


Investidores de médio a longo prazo ou empresas compradoras (fundos de pensão, fundos mútuos, seguradoras) que compram em grandes quantidades, mas não querem influenciar os preços das ações com investimentos discretos e de grande volume. Os comerciantes de curto prazo e os participantes do lado da venda (fabricantes de mercado, especuladores e arbitragentes) se beneficiam da execução comercial automatizada; Além disso, o comércio de algo ajuda a criar liquidez suficiente para os vendedores no mercado. Comerciantes sistemáticos (seguidores de tendência, pares de traders, hedge funds, etc.) acham muito mais eficiente programar suas regras de negociação e permitir que o programa troque automaticamente.


O comércio algorítmico proporciona uma abordagem mais sistemática ao comércio ativo do que os métodos baseados na intuição ou instinto do comerciante humano.


Estratégias de negociação algorítmica.


Qualquer estratégia para negociação algorítmica requer uma oportunidade identificada que seja lucrativa em termos de ganhos aprimorados ou redução de custos. A seguir estão as estratégias de negociação comuns usadas no comércio de algo:


As estratégias de negociação algorítmicas mais comuns seguem as tendências em médias móveis, fuga de canais, movimentos no nível de preços e indicadores técnicos relacionados. Essas são as estratégias mais fáceis e simples de implementar por meio do comércio algorítmico, porque essas estratégias não envolvem previsões nem 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 diretas de implementar por meio 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 estratégias de negociação de tendências, consulte: Estratégias simples para capitalizar tendências.)


Comprar uma ação com cotação dupla a um preço menor em um mercado e, simultaneamente, vendê-la a um preço mais alto em outro mercado oferece o diferencial de preço como lucro ou arbitragem isenta de risco. A mesma operação pode ser replicada para ações versus instrumentos futuros, já que os diferenciais de preço existem de tempos em tempos. Implementar um algoritmo para identificar esses diferenciais de preços e colocar as ordens permite oportunidades lucrativas de maneira eficiente.


Os fundos de índices definiram períodos de reequilíbrio para aproximar seus investimentos aos seus respectivos índices de referência. Isso cria oportunidades lucrativas para os operadores algorítmicos, que capitalizam os negócios esperados que oferecem lucros de 20 a 80 pontos básicos, dependendo do número de ações no fundo de índice, imediatamente antes do rebalanceamento do fundo de índice. Tais 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 delta-neutral, que permitem negociar com combinação de opções e seu título subjacente, onde são feitas negociações para compensar deltas positivos e negativos, de modo que o delta do portfólio seja mantido em zero.


A estratégia de reversão à média baseia-se na ideia de que os preços altos e baixos de um ativo são um fenômeno temporário que revertem para seu valor médio periodicamente. Identificar e definir uma faixa de preço e implementar um algoritmo com base nisso permite que os negócios sejam colocados automaticamente quando o preço do ativo entra e sai de seu intervalo definido.


A estratégia de preço médio ponderado por volume divide uma ordem grande e libera partes menores da ordem para o mercado, determinadas dinamicamente, usando perfis históricos específicos de estoque. O objetivo é executar o pedido próximo ao Preço Médio Ponderado pelo Volume (VWAP), beneficiando, assim, no preço médio.


A estratégia de preço médio ponderada pelo tempo quebra uma ordem grande e libera dinamicamente pedaços menores da ordem para o mercado usando intervalos de tempo divididos uniformemente entre uma hora inicial e final. O objetivo é executar o pedido próximo ao preço médio entre os horários inicial e final, minimizando o impacto no mercado.


Até que a ordem de negociação esteja totalmente preenchida, este algoritmo continua enviando ordens parciais, de acordo com a taxa de participação definida e de acordo com o volume negociado nos mercados. A "estratégia de etapas" relacionada envia ordens a uma porcentagem definida pelo usuário de volumes de 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 déficit de implementação visa minimizar o custo de execução de um pedido negociando o mercado em tempo real, economizando assim no custo do pedido e se beneficiando do custo de oportunidade de execução atrasada. A estratégia aumentará a taxa de participação visada quando o preço das ações se mover favoravelmente e diminuirá quando o preço das ações se mover negativamente.


Existem algumas classes especiais de algoritmos que tentam identificar “acontecimentos” do outro lado. Esses "algoritmos de farejamento", usados, por exemplo, por um criador de mercado no lado da venda, têm a inteligência incorporada para identificar a existência de quaisquer algoritmos no lado da compra de uma grande ordem. Essa detecção por meio de algoritmos ajudará o criador de mercado a identificar grandes oportunidades de pedidos e possibilitará que ele se beneficie com o preenchimento dos pedidos a um preço mais alto. Às vezes, isso é identificado como front-running de alta tecnologia. (Para mais informações sobre comércio de alta frequê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. Os seguintes são necessários:


Conhecimentos de programação de computadores para programar a estratégia de negociação necessária, programadores contratados ou software de negociação pré-fabricados. Conectividade de rede e acesso a plataformas de negociação para colocação de pedidos. Acesso a feeds de dados de mercado que serão monitorados pelo algoritmo para oportunidades de fazer pedidos. para backtest o sistema, uma vez construído, antes de ir viver em mercados reais Dados históricos disponíveis para backtesting, dependendo da complexidade das regras implementadas no algoritmo.


Aqui está um exemplo abrangente: A Royal Dutch Shell (RDS) está listada na Bolsa de Valores de Amsterdã (AEX) e na Bolsa de Valores de Londres (LSE). Vamos criar um algoritmo para identificar oportunidades de arbitragem. Aqui estão algumas observações interessantes:


AEX negocia em Euros, enquanto a LSE negocia em Libras Esterlinas Devido à diferença horária de uma hora, a AEX abre uma hora antes da LSE, seguida pelas duas bolsas negociadas simultaneamente pelas próximas horas e depois negociando apenas na LSE durante a última hora conforme a AEX fecha .


Podemos explorar a possibilidade de negociação de arbitragem sobre as ações da Royal Dutch Shell listadas nesses dois mercados em duas moedas diferentes?


Um programa de computador que pode ler os preços de mercado atuais Feeds de preço de LSE e AEX Um feed de taxa forex para taxa de câmbio GBP-EUR Capacidade de colocação de pedidos que pode encaminhar o pedido para a capacidade correta de troca de teste de retorno 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, converta o preço de uma moeda para outra. Se houver uma discrepância de preço suficientemente grande (descontando os custos de corretagem) levando a uma oportunidade rentável, então coloque a compra ordem em troca de preços mais baixos e ordem de venda em troca de preços mais elevados Se as ordens forem executadas conforme desejado, o lucro de 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ê puder colocar uma negociação gerada por algoritmos, os outros participantes do mercado também poderão. Consequentemente, os preços flutuam em milissegundos e até microssegundos. No exemplo acima, o que acontece se a transação de compra for executada, mas o comércio de venda não é feito, pois os preços de venda mudam no momento em que seu pedido chega ao mercado? Você vai acabar sentado com uma posição aberta, fazendo com que sua estratégia de arbitragem seja inútil.


Existem riscos e desafios adicionais: por exemplo, riscos de falha do sistema, erros de conectividade de rede, atrasos entre ordens de negociação e execução e, o mais importante de tudo, algoritmos imperfeitos. Quanto mais complexo for um algoritmo, o backtesting mais rigoroso é necessário antes de ser colocado em ação.


The Bottom Line.


A análise quantitativa do desempenho de um algoritmo desempenha um papel importante e deve ser examinada criticamente. É excitante ir pela automação auxiliada por computadores com a noção de ganhar dinheiro sem esforço. Mas é preciso garantir que o sistema seja completamente testado e que os limites necessários sejam definidos. Comerciantes analíticos devem considerar aprender programação e construir sistemas por conta própria, para ter confiança em implementar as estratégias corretas de maneira infalível. Uso cauteloso e testes completos de negociação de algoritmos podem criar oportunidades lucrativas. (Para mais, veja Como codificar seu próprio robô de negociação da Algo.)

Комментариев нет:

Отправить комментарий