Sunday 16 July 2017

Matlab Trading System Development


Demonstração do sistema de negociação em tempo real Olá, se você é novo aqui, você pode se inscrever no feed RSS ou no feed de e-mail para obter atualizações sobre tópicos de Matlab indocumentados. Em 23 de maio de 2013, dei uma apresentação na MATLAB Computational Finance Conference em Nova York. A sala estava repleta de cerca de 200 profissionais do setor financeiro. A energia e o feedback foram tremendos, foi uma ótima experiência. Se você veio à conferência, obrigado por ser uma ótima audiência. Em 19 de setembro de 2013, dei uma variação dessa apresentação na Conferência virtual MATLAB Computational Finance. A apresentação (formato PDF) é fornecida aqui. A gravação de vídeo está disponível aqui. Em ambos os casos, apresentei um aplicativo de demonstração que mostrava como a Matlab pode ser usada para criar um sistema comercial completo de ponta a ponta, destacando o potencial de Matlab8217s como uma plataforma de escolha. Utilizei Interactive Brokers para demonstrar o feed de dados do mercado ao vivo e a entrada da conta, bem como para enviar ordens de negociação ao mercado, através do conector IB-Matlab: o algoritmo de negociação usado na demo é trivialmente simplista (aleatório). Em um sistema da vida real você naturalmente o substituirá por seu próprio algoritmo proprietário. Mas sinta-se livre para usar essa demonstração como ponto de partida para sua aplicação. O código fonte de demonstração é fornecido aqui (tradeDemo. m e arquivos de suporte). Tenha em atenção que isso é fornecido como está, gratuitamente, mas sem garantia ou suporte. Você naturalmente precisaria do IB-Matlab e de uma conta Interactive Brokers para executá-lo. Espero que possamos trabalhar juntos em seus projetos. Envie-me um e-mail se você quiser minha ajuda em qualquer trabalho de consultoria, treinamento ou desenvolvimento. 4 Respostas à demonstração do sistema de negociação em tempo real Tentei a rota do Activex antes de comprar o produto. Há uma grande falha fundamental quando se trata de usar ActiveX com Matlab. Digamos que você está executando um algoritmo e está processando uma função e, ao mesmo tempo, o TWS dispara um Evento. Se você usar ActiveX, o MATLAB NÃO atualizará o preço até que o processamento de sua função tenha sido concluído. Portanto, vários eventos serão perdidos e o preço que você olharia seria diferente. Enquanto em JAVA. Não existe esse problema. Como qualquer evento disparado será imediatamente capturado pelo java que está sendo executado em segundo plano. Então, quando você chama getLastPrice, você receberá o preço correto. Outra falha é, obviamente, o fato de que você pode usar ActiveX SOMENTE com WINDOWS. Considerando que, com a JAVA, você pode usá-lo com o Windows, o Mac, o Linux, etc. Não é uma boa idéia transmitir nos dados do Live Trades, pois ele entra no MATLAB. Imagine, você tem 100 símbolos, que atualizam todos os 200 milhas de hora, então você tem um evento comercial tão rápido e sendo capturado e armazenado no Matlab. Devido ao problema de thread único de MATLAB8217, alguns tiques de Trades serão perdidos e também comerão sua memória. Então, tudo o que você poderá fazer é apenas transmitir dados e não fazer mais nada. Kenan 8211, de fato, a API Java (que é usada pelo IB-Matlab) tem muitas vantagens em relação à API ActiveX (que é usada pela MathWorks8217 Trading Toolbox). Um dos resultados afortunados do uso do Java é que o IB-Matlab pode ser executado em todas as plataformas que executam o Matlab (Windows, Mac, Linux), uma vez que todas essas plataformas possuem Java e um cliente do IB TWS. A API Java também é muito mais rápida e confiável (o conector ActiveX é relatado para deixar os eventos IB de vez em quando). Em relação à latência de cotação de transmissão, isso depende da volatilidade de segurança, do número de títulos monitorados, da largura de banda da rede, do hardware do computador, de outros processos em execução no computador e de uma ampla gama de outros aspectos que podem afetar o desempenho. Em um laptop Lenovo Thinkpad E530 padrão que executa o Matlab R2013a no Win7, cheguei a uma latência de citação de streaming tão baixa quanto 1-2 mSec (ou seja, centenas de eventos do IB por segundo). Naturalmente, YMMV. Marco Ruijken diz: Desenvolvimento Automatizado do Sistema de Negociação com MATLAB Stuart Kozola, MathWorks Quer aprender como criar um sistema de negociação automatizado que possa lidar com várias contas de negociação, várias classes de ativos e comércio em vários locais de negociação Simultaneamente Neste webinar vamos apresentar um exemplo Fluxo de trabalho para pesquisar, implementar, testar e implementar uma estratégia de negociação automatizada, oferecendo a máxima flexibilidade no que e com quem você troca. Você aprenderá como os produtos MATLAB podem ser usados ​​para coleta de dados, análise e visualização de dados, desenvolvimento e calibração de modelos, backtesting, testes avançados, integração com sistemas existentes e, finalmente, implantação para negociação em tempo real. Examinamos cada uma das partes neste processo e veremos como o MATLAB fornece uma plataforma única que permite a solução eficiente de todas as partes desse problema. Os tópicos específicos incluem: Opções de coleta de dados, incluindo dados históricos diários, intradiários e em tempo real Construção de modelos e prototipagem em MATLAB Backtesting e calibração de um modelo Teste avançado e validação do modelo Interação com bibliotecas e software existentes para execução comercial Implementação da aplicação final Em vários ambientes, incluindo. NET, JAVA e Excel Tools para negociação de alta freqüência, incluindo computação paralela, GPUs e geração de código C de MATLAB Product Focus Selecione seu país Estou tentando escrever um programa que encontrará o total de pips (Preço obtido) com uma estratégia. Basicamente, a estratégia é sempre que o preço das ações é de 5. e vamos começar a negociar e continuaremos a negociar, desde que o preço das ações seja superior a 2 e inferior a 9. significado na faixa (2,9). Quando o preço atinge 2 ou 9. nós interrompemos a negociação. Quando eu executo o programa, ele não executa corretamente, ele não entra no segundo loop while. O que falta é total. O total de pips obtidos com uma diferença de estratégia: a diferença do preço das ações por 2 datas consecutivas Sheet1: uma matriz de dados carregada de excel, onde a primeira coluna é data e segunda é estoque preço solicitado 24 de outubro 10 às 21:04

No comments:

Post a Comment