Skip to main content

Sistema de negociação linux


Sorbis Corp.
Vamos dizer, você é um especialista em negociação e ações e tem experiência há muitos anos com moedas, mas você está ficando cansado de todo o trabalho manual com o estilo antigo de negociação de moda, ao mesmo tempo você encontra um bom software de ações que é não é compatível com o sistema operacional da sua plataforma. Sugere-se que não entre em pânico para comprar um novo computador.
O fato é que você pode usar o software Linux que é oferecido na internet. O Linux, como você deve estar ciente, é um O / S de código aberto oferecido gratuitamente e não possui muitos encargos de licenciamento do Windows e pode ser executado no Windows também. O programa de negociação de ações no Linux tem muitos tipos de escolha que oferecem os seguintes:
As contas podem ser mantidas em diversas moedas. Ser capaz de analisar todo o portfólio para todos os lucros gerados a partir de diferentes negociações e suas comparações em compras. Cada transação é mapeada em sua conta e armazenada de acordo. Todas as contas do seu portfólio são comparadas com os ganhos e perdas. Todos os valores médios importantes são comparados e relatados com base em um preço compartilhado por cada transação. Todas as atualizações de todo o mundo estão em valores monetários em tempo real.
Os programas no Linux O / S também têm a capacidade de serem visualizados pelo Yahoo por suas características diferentes, que incluem a análise como médias móveis e princípio de onda. Você também pode adicionar / armazenar / excluir diferentes avaliações. É protegido também com firewalls e protegido por senha para melhor privacidade e segurança para suas transações contra fraudes para o armazenamento de memória on-line.
É sempre sugerido para praticar com os recursos e opções de menu desses tipos de programas antes de começar a fazer a negociação real. O software irá poupar muito tempo na negociação, uma vez que as ações podem consumir muito tempo, então você é capaz de cuidar de seus assuntos familiares e da vida pessoal.
Esses programas, conforme mencionado, podem avaliar os dados armazenados e o desempenho de cada transação e, após uma análise cuidadosa, todas as informações referentes aos picos de estoque e baixas também são coletadas para serem classificadas de boas a más. Além disso, há uma linguagem de consulta de estrutura (SQL) e recursos de armazenamento de banco de dados para gerenciar os dados.
Todos estes dados acabarão por levar a mostrar os relatórios de desempenho em diferentes moedas, bem como os fundos mútuos e taxas de Forex e quaisquer outras opções, especialmente nos EUA. Um dos relatórios de análise essenciais é Value at Risk a ser observado. .
Em última análise, você não pode usar todos os programas de negociação de ações, mas você precisará fazer uma pesquisa e escolher aquele que atenda às suas necessidades.

Melhor sistema operacional para Quant Trading?
Melhor sistema operacional para Quant Trading?
Windows, Mac OS X e Linux são todos adequados para a negociação de quant Para a aprendizagem profunda baseada em pesquisa de negociação de quant, o Ubuntu / Linux é a melhor escolha.
Uma pergunta que me fazem frequentemente é qual sistema operacional usar para pesquisa e implementação de negociação quantitativa.
A resposta curta, a partir da data de redação deste artigo, é se você deseja realizar qualquer pesquisa de negociação quântica séria / matemática (aprendizado de máquina / aprendizado profundo) você deve fazer uso do Ubuntu 16.04 LTS Linux, com uma versão de desktop em um máquina de pesquisa local e a versão do servidor em um VPS de negociação ao vivo ou equivalente. É a maneira mais direta de evitar problemas com as bibliotecas de ponta que são necessárias para realizar essa forma de pesquisa.
No entanto, o Ubuntu / Linux provavelmente não é familiar para muitos de vocês, já que o Windows ainda é a escolha de fato do sistema operacional tanto em casa como no ambiente de escritório moderno.
Dado que seu objetivo provável é gastar o máximo de tempo possível pesquisando e desenvolvendo estratégias quantitativas de negociação, em vez de ler pilhas de livros de programação, vale a pena aprender um novo sistema operacional e uma interface de linha de comando (CLI) associada?
Claramente, isso dependerá de suas circunstâncias, do método preferido de negociação de pesquisa, da codificação da linguagem escolhida e da complexidade de seus modelos. Eu gostaria de argumentar que, para a maioria das pesquisas científicas / quantitativas mais complexas orientadas para Python, o aprendizado do Ubuntu / Linux e do CLI renderá imensos dividendos sobre sua carreira quantitativa.
Vamos agora dar uma olhada nos três principais sistemas operacionais que provavelmente serão usados ​​na pesquisa de quant trading.
Microsoft Windows.
Eu vou assumir, para os propósitos deste artigo, que quase todos, se não todos, leitores estão completamente familiarizados com o Windows, então eu não sinto que eu precise explicar o que está aqui, ao contrário dos outros dois sistemas operacionais considerados abaixo!
Por que é vantajoso para Quant Trading?
O Windows é geralmente facilmente disponível (a maioria dos novos computadores vêm com ele como o sistema operacional padrão) e grande parte do software baseado em GUI de negociação de quantia foi escrito exclusivamente para o Windows. Isso por si só torna um concorrente extremamente forte para muita negociação quant.
Enquanto no passado o Windows tinha uma reputação de travar de forma intermitente (por exemplo, a famosa Tela Azul da Morte) atualmente, com versões mais recentes do Windows sendo construídas no antigo kernel do Windows NT, geralmente é extremamente confiável.
Além disso, é simples transferir um sistema de negociação de quantias baseado em GUI do Windows Desktop para o Windows Server, por meio de um serviço baseado em nuvem, como o Microsoft Azure ou o Amazon Web Services.
Todos os principais bancos de dados relacionais são suportados no Windows, incluindo o MySQL, o PostgreSQL, bem como o próprio forte banco de dados da Microsoft, o SQL Server. Existem interfaces GUI intuitivas para esses bancos de dados fornecidos por todos os fornecedores.
Quais são as suas armadilhas?
A principal desvantagem do Windows, pelo menos para o uso de "energia" reside no fato de que ele depende quase exclusivamente da GUI. Esta é uma situação ideal para quase todo uso de desktop, mas para quant trading no nível avançado pode ser uma desvantagem distinta. Modelos quânticos de alta frequência dependem bastante de automação e escalonamento de tarefas, onde o CLI e ferramentas como o Unix cron são extremamente eficazes. Isso torna o Windows significativamente menos atraente à medida que a frequência e o nível de automação desejados de uma estratégia aumentam.
Também ainda tem alguma dificuldade em "tocar bem" com o Python. Embora a distribuição Anaconda resolva em grande parte esse problema, ainda existem bibliotecas nas quais é necessário compilar o código C / C ++ a partir do zero, o que geralmente pressupõe a presença de um compilador C ++, como o GCC. Isso geralmente significa instalar uma ferramenta como o Cygwin. No entanto, uma vez que você chegar a este estágio, eu sinto que vale a pena apenas "começar de novo" e instalar o Ubuntu, ao invés de tentar replicar o Linux dentro do Windows.
Um ponto secundário nos dias de hoje é que o Windows também exige muito dos recursos e, portanto, se a velocidade de execução absoluta for necessária, o Windows pode ser um pouco mais lento que um sistema Linux equivalente (particularmente quando se trata de edições de servidores).
Apple Mac OS X.
Mac OS X é o sistema operacional encontrado na linha de Macs da Apple. Na verdade, é uma versão fortemente modificada de uma distribuição Unix conhecida como BSD. Isso significa que, na verdade, ele tem uma abordagem "melhor dos dois mundos" para uma GUI e uma CLI.
Ele fornece uma GUI baseada em gestos extremamente intuitiva, mas também é extremamente popular entre os desenvolvedores de software, pois possui recursos semelhantes ao Linux integrados.
Eu pessoalmente tenho usado um MacBook Air há alguns anos para o desenvolvimento em Python, embora eu tenha, desde então, gravitado mais em direção ao Ubuntu Desktop para a maioria do meu desenvolvimento comercial de quantum em Python 3.
Por que é vantajoso para Quant Trading?
Sua vantagem reside principalmente no fato de que ele tem uma GUI confortável e um poderoso CLI, semelhante ao Ubuntu. Portanto, é fácil configurar um ambiente de pesquisa quant de Python, usando uma abordagem de ambiente virtual direto ou com um kit de ferramentas pré-compilado, como o Anaconda.
A CLI traz todo o poder de criação de scripts e automação presente nos sistemas Linux, mas o sistema operacional permite fácil compatibilidade com ecossistemas conhecidos, como o Microsoft Office. Para certos usuários, isso pode ser um requisito "dealbreaker".
Os sistemas Mac também têm a reputação de serem extremamente confiáveis ​​e estáveis. Para fornecer uma história pessoal, uma vez fui 251 dias sem uma reinicialização adequada do meu MacBook Air. Atualmente está com 91 dias de atividade enquanto escrevo este artigo!
Quais são as suas armadilhas?
Talvez a principal desvantagem do Mac OS X seja que, devido ao modelo de negócios voltado para o consumidor da Apple, não há um ambiente de servidor equivalente ao qual um modelo de negociação de quantia possa ser facilmente implantado. Em vez disso, um modelo precisará ser portado para uma distribuição de servidor Linux (como o Ubuntu Server).
Esse é um problema não trivial, pois as diferenças nos pacotes e nas abordagens de implantação podem levar a erros de produção catastróficos que podem colocar uma estratégia / portfólio offline. Eu pessoalmente vi isso acontecer em um ambiente de produção em movimento rápido.
Portanto, a solução alternativa comum é utilizar máquinas virtuais (ou uma ferramenta como o Docker) para desenvolver em uma configuração quase idêntica, localmente. No entanto, isso motiva a questão de por que um Mac está sendo usado em primeiro lugar, em vez de uma máquina local que usa o Linux!
De facto, para uma determinada quantidade absoluta de dólares, um laptop / desktop Mac é geralmente menos potente do que uma máquina equivalente por outro fabricante, e. Lenovo Portanto, você está pagando mais pela "marca" da Apple do que pelo poder computacional bruto.
Também é provável que, para o caso de uso específico de trabalho baseado em DL em GPUs, um Mac possa ser problemático para tentar e configurar. Geralmente, é muito mais simples construir uma máquina desktop do zero e colocar o Ubuntu nela para esse propósito.
Ubuntu / Linux.
O Microsoft Windows tem uma filosofia de integração vertical de todos os componentes, rápida facilidade de uso, interface gráfica e abstração de complexidade para o usuário. Para quase todos os casos de uso diário, essa é a abordagem perfeita e é, em grande parte, o motivo pelo qual o Windows e a Microsoft viram tanto sucesso histórico.
O ecossistema Linux é estruturado de maneira diferente. Sua filosofia é baseada em uma interação hierárquica de muitos componentes diferentes, código aberto e disponível gratuitamente, uma mistura de interfaces gráficas e de linha de comando, bem como a capacidade de permitir que o usuário realize operações poderosas e complexas com scripts.
Além disso, existem várias distribuições de Linux que combinam e combinam componentes de maneira diferente. Isso pode ser extremamente confuso para os recém-chegados que são amplamente usados ​​para uma abordagem de "tamanho único" com o Windows ou Mac OS X.
Felizmente, o "mercado" se consolidou em torno de uma distribuição popular conhecida como Ubuntu. O Ubuntu foi originalmente construído sobre outra poderosa distribuição Linux conhecida como Debian, mas desde então tomou uma direção diferente.
Além disso, ao longo de vários anos, o Ubuntu se tornou mais fácil de instalar e experimentar. Ele evoluiu para fornecer uma solução quase "pronta para uso" para tarefas básicas de processamento de texto, planilhas e tarefas gerais de "escritório". Isso facilita a transição do Windows ou Mac para o uso normal da área de trabalho.
Por que é vantajoso para Quant Trading?
A principal vantagem do Ubuntu / Linux reside na sua capacidade de CLI. Ter um mecanismo CLI e de scripts extremamente poderoso permite a automação sofisticada de processos, incluindo gerenciamento de dados, desenvolvimento de mecanismos de backtest, interatividade de corretores e capacidade geral de pesquisa.
É também o "único jogo da cidade" se você deseja operar no limite da modelagem financeira quantitativa com bibliotecas ML / DL avançadas. Para DL, em particular, quase todo o ecossistema de pesquisa é realizado em Python usando TensorFlow e PyTorch, ambos com requisitos de instalação não triviais. Na verdade, estas bibliotecas são muito difíceis de trabalhar com GPUs no Windows e, portanto, o Ubuntu é a única opção realista.
O uso do Linux torna extremamente simples o fornecimento de uma sobreposição de desenvolvimento de software sofisticada para um processo de implantação de modelo comercial de quant. Todo o poder do controle de versão e integração contínua está facilmente disponível em um ambiente Linux / CLI.
Não é por acaso que a maioria dos principais fundos hedge de quant quase exclusivamente usa ambientes Linux e desenvolvidos para pesquisa e desenvolvimento.
Para aqueles que desejam entrar em pesquisas de mercado altamente quantitativas ou baseadas em ML / DL, eu recomendo o uso do Ubuntu Linux como seu sistema operacional.
Quais são as armadilhas?
O maior problema no uso do Ubuntu / Linux é que a maior parte da energia vem do uso extensivo da interface de linha de comando e do script. Essas são habilidades que podem ser aprendidas com relativa rapidez, mas a verdadeira maestria pode levar anos. O Linux tem uma filosofia de "mexer no capô" e isso pode ser muito interessante, ou extremamente cansativo, dependendo de seus objetivos.
Além disso, o Linux não é muito indulgente quando se trata de erros. A natureza da pesquisa de negociação de quantias ML / DL depende de algumas bibliotecas de ponta, como o TensorFlow / PyTorch, que interagem com as GPUs. Portanto, a instalação de drivers, bibliotecas e outras ferramentas pode levar a problemas.
Tais problemas são difíceis de diagnosticar para um recém-chegado, pois as mensagens de erro podem ser relativamente indecifráveis. Isso pode ser extremamente frustrante para aqueles que estão acostumados com o Windows e Mac "apenas trabalhando".
O Linux tem uma abordagem muito mais explícita para permissões de usuário / administrador e isso muitas vezes monopoliza recém-chegados usados ​​para privilégios administrativos sendo amplamente abstraídos no Windows / Mac OS X. Outra fonte de confusão está no gerenciamento de dependências onde certos pacotes (particularmente bibliotecas Python) podem confiar nos pacotes de sistema necessários sendo instalados e configurados corretamente. Podem surgir mensagens de erro obscuras que exigem um certo grau de experiência para diagnosticar.
No entanto, isso também pode ser visto como o "preço" para operar no limite, a fim de criar modelos sofisticados. Apesar dessas questões, há uma comunidade extremamente acolhedora pronta para ajudar novos usuários e a maioria dos erros já foi vista (e diagnosticada) antes.
Em suma.
O Windows e o Mac OS X são ótimos para a maioria das pesquisas de comércio de quantias baseadas em GUI "baunilha". No entanto, eles são em grande parte inadequados para pesquisa DL / ML no limite do sangramento.
O Ubuntu / Linux é a única abordagem realista para o pesado trabalho DL / ML quantitativo, e é extremamente poderoso uma vez que a expertise do CLI tenha sido obtida. No entanto, não é perdoar com relação a erros devido a permissões ou problemas de dependência. Além disso, a filosofia de componentes mistos pode parecer confusa para aqueles usados ​​em sistemas operacionais de tamanho único.
A Quantcademy.
Participe do portal de associação da Quantcademy que atende à crescente comunidade de traders de quantificação de varejo e aprenda como aumentar a lucratividade de sua estratégia.
Negociação Algorítmica Bem Sucedida.
Como encontrar novas ideias de estratégia de negociação e avaliá-las objetivamente para o seu portfólio usando um mecanismo de backtesting personalizado no Python.
Comércio Algorítmico Avançado.
Como implementar estratégias de negociação avançadas usando análise de séries temporais, aprendizado de máquina e estatísticas Bayesianas com R e Python.

Forex Mecânico
Negociação no mercado de câmbio usando estratégias de negociação mecânicas.
Algorithmic Trading from Home: Criando um servidor Linux confiável.
Há algumas semanas, fechei todas as minhas contas do Metatrader 4 para começar a negociar fora dessa plataforma de negociação não profissional. Usando o Oanda Java API & # 8211; que eu acesso usando o front-end python Asirikuy Trader & # 8211; a possibilidade de sair do Windows também se tornou uma realidade. В Negociar com o Linux é algo que eu sempre quis, já que o sistema operacional Linux oferece um nível muito mais alto de estabilidade, com uma implementação de console muito mais poderosa e soluções de código aberto para uma variedade extremamente ampla de aplicativos. Hoje eu vou falar sobre a configuração do meu servidor de negociação Linux para negociação algorítmica, porque eu decidi configurá-lo aqui em vez de usar um Virtual Private Server (VPS) online, com quais precauções eu tive que me preocupar e qual distribuição e sistema especificações eu decidi usar para esta configuração. Depois de ler este artigo, você deve ser capaz de analisar se um servidor de comércio doméstico Linux é a escolha certa para você e o que você precisa levar em conta antes de avançar nessa direção.
Ao decidir se afastar do Windows e em um servidor de negociação Linux, a primeira coisa que considerei foi migrar minha negociação para uma configuração VPS semelhante à configuração do Windows que eu estava usando anteriormente. O Linux VPS é geralmente mais barato ou o mesmo preço para as mesmas especificações técnicas, então pareceu uma boa idéia migrar para um servidor Linux. No entanto, ao rever as ofertas comerciais disponíveis, notei rapidamente alguns problemas com o que estava disponível, o Linux VPS oferecia apenas implementações de núcleo único (pelo mesmo preço que as janelas dual core) e & # 8211; mais importante ainda # 8211; Essas implementações de VPS foram pensadas mais para hospedagem na Web do que para hospedar implementações de software intensivo de processador como aquelas que eu pretendia usar para negociação. Embora a oferta comercial do Windows VPS tenha se adaptado para oferecer soluções que atendam aos traders que usam o MT4, a oferta do Linux VPS se limitou a oferecer o que a comunidade de hospedagem exige (que é o que o Linux VPS usa com mais frequência).
Como eu pagaria cerca de US $ 300 por mês em servidores (para hospedar todas as contas que eu queria negociar), ficou evidente que uma solução doméstica poderia ser mais barata e mais adequada às minhas necessidades. Usando nossas configurações de negociação, o consumo de RAM por conta é de cerca de 30-80 MB, enquanto as necessidades de processamento variam dependendo das estratégias usadas com a maioria das contas consumindo aproximadamente menos de 10% de um processador Intel i7 quando executados (aproximadamente a cada 30 segundos). Para a quantidade de contas que eu quero negociar um processador Intel i7 (que é um quad core) com 8GB de RAM parecia ideal. Eu também decidi ir com uma unidade de estado sólido (100 GB) para ter um armazenamento confiável. O computador está conectado diretamente ao meu roteador de internet usando um cabo ethernet (sem wifi para aumentar a confiabilidade) e também adicionei um modem 4G (cerca de 30 USD / mês) para fornecer acesso à Internet sempre que minha conexão principal estiver inativa. O computador também está conectado a um no-break (fonte de alimentação universal) que contém carga suficiente para permitir cerca de 2 horas de uso contínuo se a energia acabar. Os custos de eletricidade para esta configuração de servidor devem ser de cerca de 25 USD / mês onde eu moro, então os custos totais estão em torno de 55 USD / mês, incluindo a opção de internet secundária.
Em relação ao sistema operacional, decidi instalar o Linux Mint em vez do Ubuntu (para evitar alguns dos bloatwares da Canonical), que oferece uma aparência similar sem as complexidades desnecessárias do Ubuntu para a configuração que eu queria . Eu também decidi ir com uma distribuição de tipo de desktop em vez de uma distribuição de servidor hard-core porque eu ainda quero ser capaz de ter um bom nível de usabilidade do usuário regular (como uma interface de usuário, etc). O computador está conectado a uma das minhas telas e teclado / mouse por meio de um KVM (switch Teclado-Vídeo-Mouse), o que me permite acessar este computador sempre que eu quiser, sem ter uma configuração completamente separada. A instalação de todo o meu software de negociação foi sem problemas. Eu era capaz de compilar a F4 sem problemas (como eu fiz no Ubuntu por um tempo) e lançar o programa Asirikuy Trader para conectar com os servidores de negociação Oanda através da API Java. Eu também configurei um serviço BitTorrent Sync para que eu possa fazer backup de tudo durante o fim de semana (os backups claramente durante a semana não são ideais devido à constante gravação de logs das instâncias de negociação) e também adicionei todas as minhas contas para a inicialização do sistema (através de um script simples). Depois de toda essa configuração eu ainda tenho um bom pedaço do meu disco rígido (+ 50%) livre, então a escolha de 100GB foi a ideal para o que eu queria alcançar.
A configuração acima parece ser muito robusta. O Asirikuy Trader é uma aplicação de consola que está apenas relacionada com a execução algorítmica (sem bloatware como o MT4 com o seu mercado, gráficos, etc.), de modo que os sistemas de negociação são executados de uma forma muito mais eficiente. O programa também é executado dentro de um loop de shell bash, portanto, quaisquer exceções que possam causar a falha do programa são facilmente recuperadas simplesmente iniciando o programa novamente. O Asirikuy Trader também contém funcionalidades de email para que eu possa receber facilmente emails em caso de qualquer falha ou problema com qualquer uma das instâncias de negociação (como desconexões ou outros problemas). Agora eu estou testando implementações de demonstração de todas as configurações que eu quero negociar ao vivo, a fim de resolver quaisquer problemas antes de passar para negociação real ao vivo. Até agora, a execução foi completamente alinhada com as minhas expectativas, finalmente me dando aquela sensação profissional de configuração de negociação que eu sempre estive procurando por & # 8211; mas nunca encontrou & # 8211; com o Metatrader 4.
A partir dessa experiência, devo dizer que o custo / controle / confiabilidade de uma implementação de servidor de negociação Linux pode ser tão bom quanto o de um VPS Linux, desde que você cuide de coisas como redundância de conexão com a Internet, backups e redundância de energia. No caso das implementações do Windows VPS, essa diferença não é tão forte, porque o mercado Windows já se adaptou significativamente às necessidades da comunidade Metatrader (portanto, proporcionando bons índices de desempenho / preço para essas necessidades), mas no mercado Linux não consegui encontrar solução poderosa que me ofereceu um desempenho aceitável para relação de preço. Outra coisa que vale a pena considerar é a latência do servidor, se você estiver longe do servidor de negociação e dos sistemas de negociação que operam com maior frequência, negociando mais perto da fonte (o que um host VPS adequado pode fornecer) pode valer completamente o preço adicional a pagar. No meu caso, as economias são enormes, desde pagar o que custaria 300 USD / mês acabei pagando significativamente menos de 100 USD. Com o preço inicial da configuração do computador (cerca de 600 USD), o investimento valerá a pena depois de alguns meses. Dito isto, estou feliz em dizer que estou agora livre de MT4!
A verdade é que um VPS Windows / Linux nem sempre vale a pena. Dependendo da velocidade de conexão, custos de energia, custos redundantes de conexão à Internet, custos com computadores, etc., uma solução local pode ser muito melhor do que uma solução hospedada remotamente. Isso pode não ser verdade quando você considera as soluções de VPS mais baratas (como o horrível VPSLand), mas a negociação desse tipo de hospedagem é completamente louca, já que seu nível de confiabilidade é extremamente baixo (veja meu open later no VPSLand). Também é verdade que se os custos de energia forem altos, um bom Windows VPS (como no accuwebhosting) pode fazer mais sentido. Se você gostaria de aprender mais sobre negociação fora do MT4 e como você também pode construir seu próprio portfólio comercial para negociar com a Linux, por favor considere juntar-se ao Asirikuy, um site repleto de vídeos educacionais, sistemas de negociação, desenvolvimento e um som honesto e transparente. abordagem para negociação automatizada em geral. Espero que tenha gostado deste artigo ! : o)
9 Responses to & # 8220; Algorithmic Trading from Home: Criando um servidor Linux confiável & # 8221;
Você considerou um servidor dedicado em vez de um VPS? Existem muitos provedores (Hetzner, por exemplo) que oferecem servidores dedicados com conectividade e energia muito melhores do que qualquer coisa que você pode obter com uma configuração doméstica.
Sim, eu considerei isso, mas o custo seria de cerca de 300 USD / mês para o que eu preciso, portanto, não vale o ganho de conectividade, já que minhas configurações não são excessivamente sensíveis ao tempo de execução. Como eu digo em algumas circunstâncias pode valer a pena pagar o custo extra, mas pelo menos no meu caso não vale a pena. Obrigado por comentar!
Agradável! Eu tenho sido um usuário exclusivamente Linux há anos e agora estou executando o Linux Mint Debian Edition. Para incentivar os seus leitores a fazer a mudança para o Linux, eu recomendo este curso da Linux Foundation & # 8211; edx / curso / linuxfoundationx / linuxfoundationx-lfs101x-introdução-1621.
& # 8220; Desde que eu ia pagar cerca de 300 USD por mês em servidores (para hospedar todas as contas que eu queria negociar), & # 8221;
Eu não entendo isso tudo. Por que pagar uma taxa mensal pelos servidores? Você não poderia antes do MT4 de um servidor doméstico e enviar os pedidos? Você parece bastante simples para mim exigir qualquer outra coisa e a colocação não é um problema. Por que você não pode negociar seus sistemas com um computador rápido e uma conexão rápida com a Internet, mas você precisa de servidores?
Obrigado por comentar: o) A questão para mim com o MT4 era simplesmente que o custo da eletricidade necessária para executar as implementações MT4 que eu precisava (mais de 60) nos computadores domésticos era muito mais do que o custo dos servidores. Com o Windows VPS e o MT4, foi simplesmente uma decisão mais barata executar o MT4 a partir de servidores online do que de uma configuração doméstica. Deixe-me saber se você tem outras dúvidas!
Obrigado e como sua conta será menor com o Linux? Nao tem almoço gratis. Como o Linux pode diminuir sua necessidade de hardware? Isso não está claro no seu post.
Aliás, acho que há um i7 de 6 núcleos.
O fato é que as implementações do Linux são muito mais eficientes em comparação com as implementações do MT4, portanto, posso executar muitos outros sistemas a partir do mesmo hardware (já que não preciso de todo o bloatware do MT4). Claramente, se eu estivesse hospedado no Mt4, isso não seria possível (especialmente com as compilações mais recentes que consomem ainda mais memória / CPU). Espero que isso resolva: o)
PS: Obrigado pela dica sobre o 6-core i7, eu vou procurá-lo!
Eu sei que o Commercial Network Services permite que o linux seja instalado em seus vps. Você tem que contatá-los em particular para isso. tinyurl / cnsvpsaf.
Eu os uso para sua implementação do Windows 2008 no datacenter de Nova York. Honestamente, eu não confiaria na internet / energia de casa, muito mais segura em um datacenter sem reinicializações forçadas e latência muito baixa para o broker, já que a maioria deles terá servidores em Nova York, Londres ou talvez Chicago & # 8230;.embora eu acho que até o CME tem servidores em Nova York também.
O CNS tem unidades SSD + processadores i7 (dual, quad ou octa core) dependendo do que você deseja.
Eu não posso editar o meu comentário, mas eu queria acrescentar que a principal razão pela qual os servidores VPS do Linux não foram competitivos é porque há tão pouca demanda deles da comunidade comercial de varejo. Quantas plataformas de negociação de interface gráfica do Linux você conhece? Mac OS X? Windows Aposto que você pode listar 5 no topo da sua cabeça. É do jeito que é, embora eu tenha certeza de que um foi construído para o linux / osx, ele provavelmente seria muito mais estável, escalável e, mais barato, para manter o equivalente no Windows.
Veremos o que acontece quando o Asirikuy se torna mais popular.

linux.
1 229 & # 32; пользователей находятся здесь.
МОДЕРАТОРЫ.
Bem vindo ao Reddit,
a primeira página da internet.
e inscreva-se em uma das milhares de comunidades.
Ато архивированный пост. Вы не можете голосовать или комментировать.
Quer adicionar à discussão?
помощь правила сайта центр поддержки вики реддикет mod orientações связаться с нами.
приложенияи инструменты Reddit para iPhone Reddit para Android móvel кнопки site.
Использование данного сайта означает, что вы принимаете & # 32; пользовательского соглашения & # 32; и & # 32; Политика конфиденциальности. &cópia de; 2018 reddit инкорпорейтед. Все права защищены.
REDDIT e o logotipo ALIEN são marcas registradas da reddit inc.
& pi; Processado pelo PID 112696 em & # 32; app-112 & # 32; em 2018-02-16 16: 09: 18.681658 + 00: 00 executando o código do país 2d1ee9c: UA.

Sistema de negociação linux
Obter via App Store Leia este post em nosso aplicativo!
Sistemas de negociação de baixa latência usando C ++ no Windows?
Parece que todos os principais bancos de investimento usam C ++ no Unix (Linux, Solaris) para seus aplicativos de servidor de baixa latência / alta frequência. Por que o Windows geralmente não é usado como uma plataforma para isso? Existem razões técnicas pelas quais o Windows não pode competir?
Os requisitos de desempenho nos sistemas de latência extremamente baixa usados ​​para negociação algorítmica são extremos. Nesse ambiente, microssegundos contam.
Não tenho certeza sobre o Solaris, mas no caso do Linux, esses caras estão escrevendo e usando patches e personalizações de baixa latência para todo o kernel, a partir dos drivers da placa de rede. Não é que exista uma razão técnica pela qual isso não possa ser feito no Windows, mas existe uma prática / legal - acesso ao código-fonte e a capacidade de recompilá-lo com mudanças.
Tecnicamente, não. No entanto, existe uma razão comercial muito simples: o resto do mundo financeiro é executado no Unix. Os bancos são executados no AIX, o próprio mercado de ações é executado no Unix e, portanto, é simplesmente mais fácil encontrar programadores no mundo financeiro que estão acostumados a um ambiente Unix, em vez de um do Windows.
(Eu trabalhei em banca de investimento por 8 anos) Na verdade, muito do que os bancos chamam de baixa latência é feito em Java. E nem mesmo o Java em tempo real - apenas Java normal com o GC desligado. O principal truque aqui é certificar-se de que você tenha exercido todo o seu código o suficiente para que o jit seja executado antes de você mudar uma VM particular para prod (assim você tem algum loop de inicialização que é executado por alguns minutos - e hot failover) .
As razões para usar o Linux são:
A administração remota ainda é melhor e também de baixo impacto - terá um efeito mínimo nos outros processos da máquina. Lembre-se de que esses sistemas são frequentemente localizados na central, portanto, os links para as máquinas (de você / sua equipe de suporte) provavelmente serão piores do que os dos seus datacenters normais.
Tunability - a capacidade de definir o swappiness como 0, fazer a JVM pré-distribuir páginas grandes e outros truques de baixo nível é bastante útil.
Tenho certeza de que você poderia fazer com que o Windows funcionasse de maneira aceitável, mas não há grande vantagem em fazê-lo - como outros disseram, todos os funcionários que você contratou teriam que redescobrir todos os seus truques de latência em vez de simplesmente executar uma lista de verificação.
A razão é simples, 10 a 20 anos atrás, quando esses sistemas surgiram, os servidores multi-CPU "hardcore" eram APENAS em algum tipo de UNIX. O Windows NT estava no jardim de infância hoje em dia. Então a razão é "histórica".
Sistemas modernos podem ser desenvolvidos no Windows, é apenas uma questão de gosto nos dias de hoje.
PS: Eu estou trabalhando atualmente em um desses sistemas :-)
O Linux / UNIX é muito mais utilizável para usuários remotos simultâneos, facilitando o script em torno dos sistemas, usando ferramentas padrão como grep / sed / awk / perl / ruby ​​/ less nos logs. ssh / scp. todas essas coisas estão ali.
Há também problemas técnicos, por exemplo: para medir o tempo decorrido no Windows, você pode escolher entre um conjunto de funções baseadas no tique do relógio do Windows e o QueryPerformanceCounter () baseado em hardware. O primeiro é incrementado a cada 10 a 16 milissegundos (nota: algumas documentações implicam em mais precisão - por exemplo, os valores de GetSystemTimeAsFileTime () medem até 100 ns, mas eles reportam a mesma borda de 100 n do clock até que atinja novamente). O último - QueryPerformanceCounter () - possui problemas de parada de exibição onde diferentes núcleos / CPUs podem relatar clocks - desde a inicialização que diferem por vários segundos devido a serem aquecidos em momentos diferentes durante a inicialização do sistema. O MSDN documenta isso como um possível bug do BIOS, mas é comum. Então, quem quer desenvolver sistemas de negociação de baixa latência em uma plataforma que não pode ser instrumentada corretamente? (Existem soluções, mas você não encontrará nenhum software instalado convenientemente no boost ou no ACE).
Muitas variantes do Linux / UNIX têm muitos parâmetros facilmente alteráveis ​​para compensar a latência de um único evento em relação à latência média sob carga, tamanhos de fatia de tempo, políticas de agendamento etc. Em sistemas operacionais de código aberto, há também a garantia de poder referem-se ao código quando você pensa que algo deve ser mais rápido do que é, e o conhecimento que uma comunidade (potencialmente enorme) de pessoas tem feito e está fazendo de forma crítica - com o Windows obviamente são principalmente as pessoas que são designadas olhe para isto.
No lado do FUD / reputação - algo intangível, mas uma parte importante das razões para a seleção de sistemas operacionais -, acho que a maioria dos programadores do setor confiaria apenas no Linux / UNIX para fornecer um planejamento e comportamento confiáveis. Além disso, o Linux / UNIX tem uma reputação de travar menos, embora o Windows seja bastante confiável atualmente, e o Linux tem uma base de código muito mais volátil do que o Solaris ou o FreeBSD.
Há várias razões, mas a razão não é apenas histórica. Na verdade, parece que cada vez mais aplicativos financeiros do lado do servidor são executados * em nix hoje em dia (incluindo grandes nomes como a Bolsa de Valores de Londres, que mudou de uma plataforma). Para aplicativos do lado do cliente ou da área de trabalho, seria tolo segmentar qualquer outra coisa além do Windows, já que essa é a plataforma estabelecida. No entanto, para aplicativos do lado do servidor, a maioria dos lugares em que trabalhei são implantados no * nix.
Eu concordo parcialmente com a maioria das respostas acima. Embora o que eu percebi é o maior motivo para usar o C ++ é porque é relativamente mais rápido com uma biblioteca STL muito vasta.
Além disso, o sistema Linux / Unix também é usado para melhorar o desempenho. Eu conheço muitas equipes de baixa latência que vão a um certo ponto de ajustes no kernel do Linux. Obviamente, esse nível de liberdade não é fornecido pelo Windows.
Outras razões, como sistemas legados, custo de licença, recursos também contam, mas são fatores de menor importância. Como "rjw" mencionou, eu vi equipes usar Java também com uma JVM modificada.
Eu sego as opiniões de histórico e acesso à manipulação do kernel.
Além dessas razões, também acredito que, da mesma forma que desativam a coleta de lixo e o mecanismo semelhante em Java ao usar essas tecnologias com baixa latência. Eles podem evitar o Windows por causa da API em alto nível que interage com o sistema operacional de baixo nível e, em seguida, com o kernel.
Então, o núcleo é, naturalmente, o kernel que pode ser interagido usando o sistema operacional de baixo nível. As APIs de alto nível são fornecidas apenas para facilitar a vida dos usuários comuns. Mas no caso de baixa latência, esta é uma camada gordurosa e uma fração de segundos de perda em cada operação. Então, uma opção lucrativa para ganhar alguns segundos fração por chamada.
Além disso, outra coisa a considerar é a integração. A maioria dos servidores, centros de dados, trocas usam o UNIX e não o Windows, portanto, usar os clientes da mesma família facilita a integração e a comunicação.
Então você tem problemas de segurança (muitas pessoas por aí podem não concordar com este ponto) hacking UNIX não é fácil se comparado ao hacking do WINDOWS. Eu não concordo que o licenciamento deva ser o problema para os bancos porque eles gastam dinheiro em cada peça de hardware e software e nas pessoas que os personalizam, então a compra de licenças não será tão grande quando se considera o que elas ganham comprando.

Instale o Terminal no Linux.
O Linux é um sistema operacional de computador semelhante ao Unix montado sob o modelo de desenvolvimento e distribuição de software livre e de código aberto. Os sistemas Linux são amplamente utilizados em smartphones e hardware de servidor. Muitos usuários domésticos de PCs preferem a série MS Windows.
Um dos recursos do Linux é a ausência de um kit de distribuição unificado. Diferentes grupos de desenvolvedores trabalham em várias versões do Linux, incluindo Debian, Mint, Ubuntu, OpenSUSE, Gentoo, etc. Neste artigo, vamos considerar um dos kits de distribuição mais populares - o Ubuntu.
O terminal do cliente pode ser instalado e executado em computadores com Linux usando o Wine. O Wine é um software gratuito que permite que os usuários dos sistemas baseados em Unix executem um aplicativo desenvolvido para os sistemas Microsoft Windows. Entre todas as versões do Wine existe uma para o Ubuntu.
Note que o Wine não é um aplicativo totalmente estável. Assim, algumas funções nos aplicativos que você inicia podem funcionar incorretamente ou não funcionar.
A configuração preliminar deve ser executada antes da instalação. Todos os aplicativos são instalados no Ubuntu a partir dos pacotes contidos nos repositórios. O caminho para o repositório WineHQ PPA deve ser adicionado para instalar o Wine. Abra o Ubuntu Software Center e execute "Software Sources" comando em & quot; Editar & quot; cardápio.
Clique em & quot; Adicionar & quot; na nova janela.
Os seguintes dados devem ser especificados em & # 1040; & # 1056; & # 1058; Linha (Advanced Package Tool): ppa: ubuntu-wine / ppa. Clique em & quot; Adicionar origem & quot ;. Isso conclui a configuração preliminar.
Para instalar o Wine, abra o site oficial winehq, vá para a seção Downloads e escolha o kit de distribuição para o Ubuntu. Clique no link apropriado para instalar a versão mais recente do Wine. Atualmente, a última versão estável é o Wine 1.4.1. Você também pode baixar a versão beta do Wine 1.5.21, que tem muitas melhorias, mas pode parecer menos estável. O sistema solicitará que você abra o link através do Ubuntu Software Center. Concorda com isso e o Centro de Software pedirá para iniciar a instalação do Wine:
Clique em & quot; Instalar & quot; e aguarde a conclusão da instalação. Quando a instalação estiver concluída, já será possível executar arquivos executáveis ​​do Microsoft Windows no Ubuntu.
Instalando o Wine a partir da linha de comando.
Você pode usar a linha de comando (que é chamada & quot; Terminal & quot; no Ubuntu) para instalar o Wine sem usar o Ubuntu GUI.
Execute o seguinte comando para adicionar o repositório WineHQ PPA, a partir do qual o Wine será instalado:
sudo add-apt-repositório ppa: ubuntu-wine / ppa.
Após sua execução, atualize os dados do pacote APT usando o seguinte comando:
sudo apt-get update.
Após a sua execução, você pode iniciar a instalação do Wine. Execute o seguinte comando:
sudo apt-get install wine1 .5.
A versão 1.5 do Wine será instalada. Após a execução, o Wine está pronto para uso.
Iniciando o Terminal do Cliente.
Para instalar o terminal, baixe o instalador & quot; mt4setup. exe & quot ;. Depois que o download estiver concluído, inicie o arquivo de configuração. O sistema determinará automaticamente que você está tentando executar um arquivo projetado para o Microsoft Windows e oferecerá para abri-lo com o Wine. Selecione esta opção e clique em & quot; OK & quot ;.
O instalador do terminal do cliente será lançado. Conclua todas as etapas de instalação:
Após a conclusão da instalação, você pode começar a usar o terminal executando o arquivo terminal. exe.
Outra maneira de começar a usar o terminal de negócios no Ubuntu é copiar a pasta inteira do terminal do cliente instalado anteriormente no Microsoft Windows:
Após a conclusão da cópia, basta executar o arquivo terminal. exe do terminal. O vinho será usado automaticamente para abrir o arquivo.
Problemas conhecidos.
Como já foi mencionado acima, o Wine não é um software completamente estável. Assim, algumas funções do terminal do cliente podem funcionar incorretamente. Atualmente, os seguintes problemas são descobertos:
Exceto pelo problema acima, você pode desfrutar de todos os recursos do terminal comercial no Ubuntu.
Diretório de dados do terminal.
O Wine cria uma unidade lógica virtual com o ambiente necessário para os programas instalados. O caminho padrão da pasta de dados do terminal instalado é o seguinte:

Comments