Escolhendo o software de negociação algorítmica correia

Как работать в Зоне 3 любой Рабочей страницы (Setembro 2024)

Как работать в Зоне 3 любой Рабочей страницы (Setembro 2024)
Escolhendo o software de negociação algorítmica correia

Índice:

Anonim

Ao usar o comércio algorítmico, os comerciantes confiam no seu dinheiro suado para o software comercial que eles usam. O software certo é muito importante para assegurar a execução efetiva e precisa dos pedidos comerciais. O software defeituoso, ou um sem os recursos necessários, pode levar a grandes perdas. Este artigo analisa as principais coisas a considerar para escolher o software certo para negociação algorítmica. (Para mais informações, consulte: Noções básicas de negociação algorítmica: conceitos e exemplos.)

A Quick Primer to Algorithmic Trading

Um algoritmo é definido como um conjunto específico de instruções passo a passo para completar uma tarefa específica. Seja o jogo de computador simples, ainda viciante, como o Pac-Man ou uma planilha que oferece grande número de funções, cada programa segue um conjunto específico de instruções com base em um algoritmo subjacente.

O comércio algorítmico é o processo de usar um programa de computador que segue um conjunto definido de instruções para colocar uma ordem comercial. O objetivo do programa de negociação algorítmica é identificar dinamicamente oportunidades rentáveis ​​e colocar os negócios para gerar lucros a uma velocidade e freqüência que é impossível combinar por um comerciante humano. Dadas as vantagens de uma maior precisão e velocidade de execução relâmpago, as atividades comerciais baseadas em algoritmos de computador ganharam enorme popularidade. (Para mais informações, consulte: Prós e contras de sistemas de negociação automatizados.)

Quem usa software de negociação algorítmica?

O comércio algorítmico é dominado por grandes empresas comerciais, como hedge funds, bancos de investimento e empresas comerciais proprietárias. Dada a abundante disponibilidade de recursos devido ao seu grande tamanho, essas empresas costumam construir seu próprio software de negociação proprietário, incluindo grandes sistemas de negociação com centros de dados dedicados e equipe de suporte.

Em um nível individual, comerciantes proprietários experientes e quants usam negociação algorítmica. Os comerciantes proprietários, que são menos conhecedores de tecnologia, podem comprar software de negociação readymade para suas necessidades de negociação algorítmica. O software é oferecido por seus corretores ou comprado de provedores de terceiros. Quants tem um bom conhecimento de negociação e programação de computadores, e eles desenvolvem software comercial por conta própria. (Para mais informações, consulte: Quants: o que eles fazem e como evoluíram.)

Algorithmic Trading Software - Build or Buy?

Existem duas maneiras de acessar o software de negociação algorítmica: construir ou comprar.

A compra de software pronto oferece acesso rápido e atempado, ao construir o seu próprio, permite flexibilidade total para personalizar as suas necessidades. O software de negociação automatizado é muitas vezes caro para comprar e pode estar cheio de lacunas, o que, se ignorado, pode levá-lo a perdas.Os custos elevados podem tirar o potencial de lucro realista do seu empreendimento de negociação algorítmica. Por outro lado, criar software de negociação algorítmica por conta própria leva tempo, esforço e um profundo conhecimento, e ainda pode não ser infalível.

O risco envolvido na negociação automática é muito alto, o que pode levar a grandes perdas. Independentemente de se decidir comprar ou construir, torna-se importante conhecer os recursos básicos necessários.

As principais características do software de negociação algorítmica

  • Disponibilidade de dados do mercado e da empresa : Todos os algoritmos de negociação são projetados para atuar em dados de mercado em tempo real e cotações de preços. Alguns programas também são personalizados para dar conta dos dados fundamentais da empresa, como os índices EPS e PE. Qualquer software de negociação algorítmica deve ter feed de dados de mercado em tempo real, bem como um feed de dados da empresa. Ele deve estar disponível como um build-in no sistema ou deve ter uma disposição para integrar facilmente de fontes alternativas.
  • Conectividade com vários mercados: Os comerciantes que procuram trabalhar em vários mercados devem ter em atenção que cada troca pode fornecer seu feed de dados em um formato diferente, como TCP / IP, Multicast ou um FIX. Seu software deve ser capaz de aceitar feeds de diferentes formatos. Outra opção é ir com fornecedores de dados de terceiros como a Bloomberg e a Reuters, que agregam dados de mercado de diferentes trocas e fornecem-no em um formato uniforme para clientes finais. O software de negociação algorítmica deve ser capaz de processar esses feeds agregados conforme necessário.
  • Latência : A palavra mais pequena desta lista é o fator mais importante para o algo-trading. Latência é o tempo de atraso introduzido no movimento de pontos de dados de um aplicativo para o outro. Considere a seguinte sequência de eventos. É necessário 0,2 segundos para uma cotação de preço que vem da troca para o centro de dados do seu fornecedor de software (DC), 0. 3 segundos do data center para alcançar sua tela de negociação, 0. 1 segundo para o seu software de negociação para processar isso citação recebida, 0. 3 segundos para que ele analise e coloque um comércio, 0. 2 segundos para a sua ordem comercial para chegar ao seu corretor, 0. 3 segundos para o seu corretor encaminhar seu pedido para a troca.

Tempo total decorrido = 0. 2 + 0. 3 + 0. 1 + 0. 3 + 0. 2 + 0. 3 = Total 1. 4 segundos.

No mundo comercial dinâmico de hoje, a cotação do preço original teria mudado várias vezes dentro desse período de 1. 4 segundos. Esse atraso poderia fazer ou quebrar seu empreendimento de negociação algorítmica. É preciso manter essa latência ao nível mais baixo possível para garantir que você obtenha as informações mais atualizadas e precisas sem intervalo de tempo.

A latência foi reduzida para microssegundos, e todas as tentativas devem ser feitas para mantê-lo o mais baixo possível no sistema comercial. Algumas medidas incluem ter conectividade direta com a troca para obter dados mais rápidos, eliminando o fornecedor no meio; melhorando seu algoritmo de negociação para que ele leve menos de 0. 1 + 0. 3 = 0. 4 segundos para análise e tomada de decisão; ou eliminando o corretor e enviando diretamente trocas para a troca para salvar 0.2 segundos.

  • Configuração e personalização : a maioria dos softwares de negociação algorítmica oferece algoritmos de comércio embutidos padrão, como aqueles baseados em um cruzamento da média móvel de 50 dias (MA) com o MA de 200 dias. Um comerciante pode gostar de experimentar mudando para o Mestre de 20 dias com o MA de 100 dias. A menos que o software ofereça tal personalização de parâmetros, o comerciante pode ser limitado pela funcionalidade fixa incorporada. Seja comprando ou construindo, o software de negociação deve ter um alto grau de personalização e configuração.
  • Funcionalidade para escrever programas personalizados : Matlab, Python, C ++, JAVA e Perl são as linguagens de programação comuns usadas para escrever software de negociação. A maioria dos softwares de negociação vendidos pelos fornecedores de terceiros oferece a capacidade de escrever seus próprios programas personalizados dentro dele. Isso permite que um comerciante experimente e experimente qualquer conceito comercial que ela desenvolva. O software que oferece codificação na linguagem de programação de sua escolha é obviamente preferido. (Para mais informações, consulte: Codificação de sistemas de negociação: Introdução.)
  • Recurso Backtesting em dados históricos : a simulação Backtesting envolve testar uma estratégia de negociação em dados históricos. Ele avalia a praticidade e rentabilidade da estratégia em dados passados, certificando-o para o sucesso (ou falha ou qualquer alteração necessária). Esta função obrigatória também deve ser acompanhada de uma disponibilidade de dados históricos, nos quais o backtesting pode ser realizado.
  • Integração com a Interface de Negociação : o software de negociação algorítmica coloca trades automaticamente com base na ocorrência de um critério desejado. O software deve ter a conectividade necessária para a rede de corretores para colocar o comércio ou uma conectividade direta com a troca para enviar ordens comerciais.
  • Integração Plug-n-play : um comerciante pode estar usando simultaneamente um terminal da Bloomberg para sua análise de preços, o terminal do intermediário para a comercialização e um programa Matlab para análise de tendências. Dependendo das necessidades individuais, o software de negociação algorítmica deve ter integração fácil de plug-n-play e APIs disponíveis em ferramentas de negociação comumente usadas. Isso garante a escalabilidade, bem como a integração.
  • Programação Independente da Plataforma: Algumas linguas de programação precisam de plataformas dedicadas. Por exemplo, certas versões do C ++ podem ser executadas somente em sistemas operacionais selecionados, enquanto o Perl pode ser executado em todos os sistemas operacionais. Ao construir ou comprar software de negociação, deve ser dada preferência ao software de negociação que seja independente da plataforma e suporte linguagens independentes da plataforma. Você nunca sabe como sua negociação evoluirá alguns meses abaixo da linha.
  • The Stuff Under the Hood : Um ditado comum diz: "Mesmo um macaco pode clicar no botão do mouse para fazer uma troca. "A dependência de computadores não deve ser cega. É o comerciante que deve entender o que está indo sob o capô. Ao comprar software de negociação, deve-se pedir e levar tempo para passar pela documentação detalhada que mostra a lógica subjacente de um software de negociação algorítmico particular.Evite qualquer software de negociação que seja uma caixa preta completa e que pretende ser uma máquina de fazer dinheiro secreto.

Ao construir software, seja realista sobre o que você está implementando e seja claro sobre os cenários em que ele pode falhar. Antes de colocá-lo para usar com dinheiro real, faça uma resposta completa.

Por onde começar?

Todo o software de negociação algorítmica ready-made geralmente oferece versões de avaliação de funcionalidade limitada gratuita ou períodos de avaliação limitados com funcionalidade completa. Explore-os na íntegra durante esses testes antes de comprar qualquer coisa. Não esqueça de detalhar a documentação disponível.

Para construir um, uma boa fonte gratuita para explorar o comércio algorítmico é Quantopian. Ele oferece uma plataforma on-line para testar e desenvolver comércio algorítmico. Os indivíduos podem tentar personalizar qualquer algoritmo existente ou escrever um novo completamente novo. A plataforma também oferece software de negociação algorítmico embutido para ser testado em relação aos dados do mercado.

A linha inferior

O software de negociação algorítmica é caro para comprar e difícil de construir sozinho. Comprar pré-fabricados oferece acesso rápido e atempado, e criar o seu próprio permite flexibilidade total para personalizá-lo às suas necessidades. Antes de se aventurar com dinheiro real, é preciso entender completamente a funcionalidade básica do software de negociação algorítmica comprado ou construído. A falta de fazê-lo pode ser uma perda dispendiosa difícil de recuperar.