Fpga in trading systems


in-FPGA8482 Trading Systems reduz a latência comercial Primeira publicação em 16 de setembro de 2010 Latência de resposta comercial reduzida para menos de dois microssegundos combinando NASDAQ ITCH e OUCH em um único FPGA David Buechner, vice-presidente, Impulse: ferramentas de impulso estão em uso nas principais empresas financeiras e de hedge fundos onde eles equiparam matemáticos e desenvolvedores de algoritmos para melhorar drasticamente a latência. in-FPGAtrade Trading Systems (infpga) anunciaram um projeto de referência de negociação automatizada acelerada por hardware que executa o manuseio de feeds NASDAQ ITCH e entrada de pedidos OUCH de saída em execução em Ethernet 10Gb, com menos de dois microssegundos de latência. O sistema será exibido na feira e conferência de Mercados Financeiros de Alto Desempenho de 2010, estande 424, em Nova York, em 20 de setembro de 2010. O sistema in-FPGA visa permitir que os operadores obtenham latências de resposta que são uma fração do que pode ser alcançado usando sistemas baseados em CPU. Os visitantes do show poderão ver o hardware real usado para decodificação de dados de mercado e entrada de pedidos de saída, com toda a funcionalidade executada inteiramente na lógica FPGA (Field Programmable Gate Array) de alto desempenho. O sistema resultante alcança hoje uma latência de 2 microssegundos, com melhorias esperadas na taxa de transferência ao longo de 2010. Essas plataformas de referência baseadas em FPGA visam operar em várias vezes a velocidade de servidores maiores baseados em microprocessadores. É tudo sobre latência de negociação, disse Cameron Elliott, designer-chefe do sistema in-FPGA. A negociação baseada em FPGA pode responder aos dados do mercado uma ordem de grandeza mais rápida do que os servidores baseados em Linux, e 2-5 vezes mais rápida do que os sistemas híbridos de CPU / FPGA. Grande parte do ganho vem da simplificação do caminho do hardware, consolidando o processamento em um chip de hardware e eliminando os caminhos de alta latência. O que torna isso mais interessante para os traders é que eles podem implementar sua lógica de trigger em linguagem C usando Impulse C, ao invés de ter que aprender linguagens de descrição de hardware como Verilog ou VHDL, ou ter que passar seus modelos para engenheiros de hardware para tradução. . Ferramentas de impulso estão em uso em grandes empresas financeiras e fundos de hedge, onde equiparam matemáticos e desenvolvedores de algoritmos para melhorar drasticamente a latência. O sistema de negociação in-FPGAs e o aplicativo de referência permitem que os desenvolvedores de software usem a aceleração de hardware para processamento Ethernet de 10 Gb, disse David Buechner, vice-presidente da Impulse. Isso oferece uma tecnologia disruptiva para empresas de trading que querem ser as primeiras na fila com seus negócios. Itens populares BlackRocks Aladdin integra ferramenta ICE Continuous Evaluated Pricing CJC lança plataforma de visualização de big data MosaicOA JPX para registrar e monitorar traders de alta frequência CME Group anuncia novas posições de gerência sênior A Equinix adquirirá 24 sites de data center da Verizon em US $ 3,6 bilhões na Tullett Prebon Information, Quaternion e Columbia University formam colaboração de risco de código aberto Copyright copy Automated Trader Ltd 2016 - Estratégias Conformidade TechnologyCitadel - Instituição Financeira Global FPGA Engineer Market Making Localização: Chicago, IL Estamos procurando um engenheiro FPGA experiente para se juntar à nossa equipe existente e ser responsável pela pesquisa , design e implementação de soluções FPGA para empresas de comércio Citadels que desenvolvem sistemas de negociação de baixíssima latência. Temos uma equipe de desenvolvimento pequena e altamente experiente que está trabalhando em novos projetos de FPGA em uma linguagem de descrição de hardware, realizando análise de tempo, validando e depurando projetos para erros e eficiência. Trabalhar com equipe no desenvolvimento e implementação de sistemas proprietários de negociação de hardware, desde o conceito até a produção. Crie design e verificação digital para maximizar a eficiência e o desempenho para processar grandes quantidades de dados nos sistemas de negociação. Envolva-se no projeto de sistemas de negociação financeiros personalizados baseados em FPGA de baixa latência e alta produtividade para acelerar a geração de sinais de comércio algorítmico e a execução de ordens. O retorno rápido e feedback imediato dos projetos operacionais, bem como a avaliação da latência e do rendimento. 3 anos em projeto FPGA, incluindo o ciclo de vida completo do projeto FPGA, incluindo arquitetura de hardware, codificação RTL, simulação, integração de sistemas, validação e teste de hardware. A experiência com o software de design Altera é uma vantagem, mas a experiência com o software de design da Xilinx também é uma vantagem. Experiente e bem versado no System Verilog e VHDL (System Verilog, Verilog, C, Bash ou Makefile). A experiência na construção de sistemas digitais para uma variedade de domínios, incluindo a experiência de comunicações com / sem fio com negociação e finanças computacionais, é altamente desejada. Familiarizado com ferramentas de síntese de FPGA e análise de temporização estática são desejáveis, mas não necessárias. Familiarizado com os princípios da construção de bancadas de testes aleatórios automatizados, autocontrolados e dirigidos. A familiaridade com o uso de ferramentas de depuração no chip, como Alteras SignalTap ou Xilinxs ChipScope, é altamente desejável. Familiaridade com a linguagem C para incorporação de recursos de modelagem de software. Deve ter fortes habilidades para resolver problemas, ser adaptável e ser orientado para a equipe. Expertise financeira não é necessária. Educação: Bacharel em Engenharia Elétrica, Engenharia de Computação ou Mestrado em Ciência da Computação. Candidate-se a esta posição: Eu li sobre diferentes implementações de sistemas HFT em FPGAs. Minha pergunta é: que parte dos sistemas HFT são implementados principalmente nos FPGAs atualmente? Os FPGAs ainda são muito populares É apenas o manipulador de feed implementado nos FPGAs? Porque alguns desses sistemas descritos acima só possuem um manipulador de feed implementado no FPGA, porque a estratégia muda muito, ou é muito difícil de implementar em FPGAs. Outros afirmam que eles também implementaram estratégias de negociação em FPGAs ou usando NICs de alto desempenho em vez de FPGAs para construir sistemas HFT. Eu li sobre diferentes abordagens, mas acho difícil comparar como a maioria dos resultados são testados em diferentes conjuntos de entrada. perguntou em 9 de março às 21:06 Heres uma maneira de pensar sobre isso: imagine que você pode fazer algo em um ASIC (ou seja, diretamente no hardware). No entanto, o processo de fabricação é caro e você obtém um design que não pode ser alterado posteriormente. Os ASICs fazem sentido para tarefas predefinidas, como mineração de Bitcoin, algoritmos de processamento de dados conhecidos, etc. Por outro lado, temos CPUs comuns (assim como CPUs e GPUs de coprocessadores) que são de uso geral, mas processam um pouco (em termos instruções concorrentes) conjunto de instruções a uma velocidade muito alta. FPGAs são o meio termo. Eles são emuladores de hardware e, como tal, podem ser considerados 10x mais lentos do que o hardware real, mas ainda assim têm desempenho superior em operações simultâneas do que os CPUs, desde que você seja capaz de utilizar o dado para distribuir sua lógica de acordo. Alguns usos de FPGAs são: Transcodificação de vídeo (por exemplo, decodificação de vídeo HD em TVs) bem como várias placas de aquisição de dados Análise de estrutura de dados fixa (análise Regex) Simulação de sistema discreta (por exemplo, simulando o resultado de um jogo de cartas) aplicações como por exemplo em pesquisa aeroespacial ou científica O problema com FPGAs para usos quant é que ele não é tão bom para cálculos de ponto flutuante, particularmente porque CPUs comuns já estão otimizadas para isso com coisas como SIMD. No entanto, para qualquer estrutura de dados de ponto fixo ou de tamanho fixo, o design do FPGA permite que você configure o dispositivo para fazer muito processamento ao mesmo tempo. Algumas coisas feitas na negociação estão usando FPGA para manipuladores de feeds (análise direta do fluxo de rede), bem como a construção de certas partes da estrutura de negociação (por exemplo, order books) em hardware para poder lidar com a estrutura de dados que muda rapidamente sem carregando a CPU. Os FPGAs visam principalmente tratar da preocupação de processar dados rapidamente sem pagar os custos de propagação. Isso está particularmente em contraste com dispositivos como o GPGPU (ou qualquer placa que mora em PCI, como o Xeon Phi), que paga penalidades por desempenho para obter dados de / para o dispositivo. Dito isso, as opções de DMA também estão melhorando a esse respeito. Os FPGAs são, na verdade, nada mais que os mesmos blocos lógicos repetidos de novo e de novo em todo o silício, com switches configuráveis ​​para conectar os blocos lógicos juntos. Isso torna os FPGAs muito bons - e rápidos - em lidar com problemas repetitivos que podem ser descritos em um circuito de hardware que não muda durante a operação. E você pode ter literalmente milhares ou dezenas de milhares desses circuitos, todos trabalhando em paralelo ao mesmo tempo, em apenas um FPGA. As CPUs, por outro lado, são baseadas na ALU, que carrega instruções, carrega dados, opera nos dados, talvez armazene os resultados e, em seguida, faz tudo de novo. As CPUs então são muito boas - e rápidas - em lidar com problemas que estão continuamente mudando - tanto em tamanho quanto em escopo e em alternar entre diferentes tarefas. A CPU ou núcleo de hoje terá de dezenas a centenas de ALUs com pipelines paralelos para dados e instruções, o que os torna muito rápidos em problemas complexos que podem ser trabalhados em paralelo. Esses projetos tornam os FPGAs mais rápidos em problemas mais simples que podem ser atacados com uma vasta arquitetura paralela - como condensar vários feeds de dados em menos de micro segundos, wire-to-wire ou disparar uma compra, venda ou cancelamento pré-calculado em um preço que corresponda a um padrão específico. As CPUs são mais rápidas em problemas mais complexos que exigem menos paralelismo, como calcular a cesta de compras, vendas e cancelamentos necessários para manter uma carteira ajustada ao risco ou integrar uma série de fontes de preços e notícias de idade e qualidade variáveis ​​nos indicadores de negociação usados comerciantes e administração decidir quais ajustes eles farão no sistema de negociação. Onde os FPGAs são usados ​​em HFT, depende muito da arquitetura de determinada loja. Eles são mais usados ​​para realizar tarefas simples, repetitivas e amplas e executá-las rapidamente. As CPUs são um canivete suíço que pode fazer quase qualquer coisa, especialmente quando os requisitos estão mudando e as dimensões do problema não são totalmente compreendidas desde o início. Answer: 11 14 14 at 17:10 Sua pergunta realmente não faz muito sentido. É como perguntar quanto da fiação na infra-estrutura de negociação usa fibra óptica e quanto dela usa cobre. A melhor resposta que podemos dar a você é que um FPGA não é uma mágica. Esta é uma interpretação incorreta do white paper da Ciscos. Há muito pouca sobreposição entre os casos de uso de malha de comutação e aqueles de um FPGA. que parte dos sistemas de HFT são implementados principalmente em FPGAs atualmente? Atualmente, os FPGAs são frequentemente usados ​​em nossas impressoras e decodificadores de TV. Respondido 9 de março de 14 às 21:55 Quero destacar o bloco de processamento de sinal digital (DSP) com as ULAs. Hoje em dia, os FPGAs têm centenas de blocos programáveis ​​de DSP, os maiores tendo milhares. Agora, de repente, você tem milhares de pequenos processadores à sua disposição, todos capazes de realizar cálculos em paralelo. Isso é muito além do paralelismo fornecido pelo Xeon Phi ou GPUs. Na verdade, se você está fazendo modelagem de preço de opções ou modelagem de risco estocástico em FPGA, você pode obter um aumento de mais de 100 vezes no desempenho em comparação com as mais recentes GPUs e ainda mais em comparação com as CPUs mais recentes. Junto com os blocos de DSP, o outro fator importante nesse ganho de desempenho é o cache de memória. O FPGA tem RAM distribuída integrada que é extremamente rápida, permitindo que a largura de banda de 100 TB / s seja alcançada no nível do caminho de dados. O uso de FPGAs de hoje para estratégias de algoritmos fornece recursos de computação grandes e maciçamente concorrentes que são capazes de fornecer um aumento de 100 a 1000 vezes no desempenho em comparação com as GPUs ou CPUs. A principal ressalva é que você teria que se tornar proficiente em escrever em Verilog ou VHDL :) Sanjay Shah CTO Nanospeed respondeu 5 de agosto, às 18:05 Uma variedade de poderosos, processadores de muitos núcleos estão começando a fazer o seu caminho para o hardware espaço de aceleração que anteriormente era totalmente propriedade de FPGAs. Empresas como Tilera, Adapteva e Coerent Logix fornecem esses processadores aqui nos EUA, com a Enyx da França também fazendo incursões. A verdadeira medida de eficácia desses processadores massivamente paralelos está na maturidade de suas ferramentas de software. É aí que o usuário em potencial deve focar sua atenção. Ninguém quer programar ou depurar dezenas ou centenas de núcleos usando técnicas manuais. Obviamente, não é preciso dizer que a largura de banda de E / S é tão importante. Na minha experiência pessoal neste espaço, estou vendo a adoção pelo cliente de processadores Coerent Logix como coprocessadores ou aceleradores de hardware para aceleração de algoritmos de linguagem C. Apreciando o ciclo de design rápido de um ambiente baseado em C, os programadores de algo podem ajustar o código ao conteúdo de seus corações e não se preocupar com codificação HDL dispendiosa e demorada para FPGAs. O particionamento ideal é que os FPGAs façam o que eles fazem melhor - operações repetitivas fixas - e que os processadores de vários núcleos façam o que fazem melhor: acelerar a produtividade dos desenvolvedores de algoritmos e a velocidade de execução. John Irza, Gerente de Desenvolvimento de Negócios, Coherent Logix, Inc. respondeu em 6 de agosto às 00:42 Quase todas as lojas da HFT usam a arquitetura FPGA. Esses dispositivos precisam ser substituídos com frequência, já que são rapidamente ultrapassados ​​pelas últimas melhorias em velocidade, pipelines, paralelismo, etc. A menos que você esteja pronto para investir 2 milhões por ano, descubra outra estratégia. Muitos caras fazendo movimentos diários de preço com caneta e papel estão fazendo bilhões em Omaha, NB. respondeu 28 de julho às 10:31 Sua resposta 2016 Stack Exchange, Inc

Комментарии

Популярные сообщения из этого блога

Melhor classe de negociação de opções