суббота, 9 июня 2018 г.

Estratégias de negociação algorítmica com exemplos de matlab


Negociação Algorítmica.


Desenvolva sistemas de negociação com MATLAB.


A negociação algorítmica é uma estratégia comercial que usa algoritmos computacionais para gerar decisões comerciais, geralmente nos mercados financeiros eletrônicos. Aplicado em instituições de compra e venda, a negociação algorítmica é a base da negociação de alta freqüência, da negociação FOREX e da análise de riscos e execução associada.


Construtores e usuários de aplicativos de negociação algorítmica precisam desenvolver, testar e implementar modelos matemáticos que detectem e explorem os movimentos do mercado. Um fluxo de trabalho efetivo envolve:


Desenvolvimento de estratégias de negociação, utilizando métodos temporais técnicos, métodos de aprendizagem mecânica e métodos de séries temporais não-lineares Aplicação de computação paralela e de GPU para teste de tempo eficiente e identificação de parâmetros Cálculo de lucro e perda e realização de análise de risco Execução de análise de execução, como modelagem de impacto de mercado, análise de custos de transações e detecção de iceberg Incorporando estratégias e análises em ambientes de negociação de produção.


Exemplos e como fazer.


Análise Walk-Forward: usando o MATLAB para testar sua estratégia comercial 35:15 - Webinar Cointegration e Pairs Trading com Econometria Toolbox 61:27 - Webinar Servidor de Produção MATLAB para Aplicações Financeiras 38:28 - Webinar Começando com o Trading Toolbox, Parte 1: Conecte-se para Interactive Brokers 7:22 - Video CalPERS Analisa a Dinâmica do Mercado de Moedas para Identificar Oportunidades de Negociação Intraday - História do Usuário Negociação Quantitativa: Como Construir Seu Próprio Negócio de Negociação Algorítmica, por Ernest Chan - Algorithmic Trading - Algorithmic Trading Code e Outros Recursos - Arquivo Exchange Financial Analysis & amp; Trading - MathWorks Consulting.


Referência de Software.


Funções da Caixa de Ferramentas de Negociação - Aplicação de Aprendizagem de Classificação de Documentação: Estatística e Ferramenta de Aprendizagem de Máquina Aplicação de movimentos: Gráfico de médias móveis e de atraso avançado - Caixa de ferramentas financeiras Função sharpe: Calcular taxa de Sharpe - Caixa de ferramentas financeiras Função gaoptimset: Criar estrutura de opções de algoritmo genético - Otimização global Toolbox Function Cointegration Testing - Econometria Toolbox Functions Neural Network Time Series Tool - Neural Network Toolbox Documentação.


Escolha o seu país.


Escolha o seu país para obter conteúdo traduzido, quando disponível, e veja eventos e ofertas locais. Com base na sua localização, recomendamos que você selecione:.


Você também pode selecionar um local da seguinte lista:


América Latina (Español) Canadá (Inglês) Estados Unidos (Inglês)


Bélgica (Inglês) Dinamarca (Inglês) Deutschland (Deutsch) España (Español) Finlândia (Inglês) França (Français) Irlanda (Inglês) Italia (Italiano) Luxemburgo (Inglês)


Holanda (Inglês) Noruega (Inglês) Österreich (Deutsch) Portugal (Inglês) Suécia (English) Suíça Deutsch English Français Reino Unido (Inglês)


Ásia-Pacífico.


Austrália (Inglês) Índia (Inglês) Nova Zelândia (Inglês) 中国 (简体 中文) 日本 (日本語) 한국 (한국어)


Explore produtos.


Experimente ou compre.


Aprenda a usar.


Obter Suporte.


Sobre o MathWorks.


Acelerando o ritmo da engenharia e da ciência.


MathWorks é o principal desenvolvedor de software de computação matemática para engenheiros e cientistas.


MatlabTrading.


Blog para MATLAB & # 174; usuários interessados ​​em estratégias de negociação algorítmica, backtesting, negociação de pares, arbitragem estatística, etc.


Quarta-feira, 7 de dezembro de 2016.


Testes e Análises de Estratégias de Negociação Algorítmicas em MATLAB (Parte 4) & # 8211; Algorítmos genéticos.


Otimização de Algoritmos Genéticos.


Apesar do fato de que o princípio do algoritmo genético (evolutivo) é muito bem explicado nos webinars de MathWorks, nos exemplos, no entanto, ele é usado apenas para otimizar a escolha de um grupo de estratégia de um conjunto. Este é um bom exemplo do uso desses algoritmos, no entanto, acontece que há uma necessidade de estabelecer muitas variáveis ​​com intervalos significativos para uma estratégia, você não passa com uma iteração e a paralelização de processos # 8211; os cálculos podem demorar vários dias. Certamente, existem estratégias na fase final de otimização, quando quase certamente sabemos que a estratégia de negociação é bem sucedida, podemos aguardar vários dias também ou alugar todo o cluster - o resultado pode valer a pena. No entanto, se precisarmos "estimar" os resultados de uma estratégia "volumosa" e decidir se vale a pena gastar o tempo, então os algoritmos genéticos podem ser perfeitamente adequados.


Método linear & # 8211; é um modo usual de classificação em que você verá todos os resultados intermédios (sub-ótimos). Ele fornece a máxima precisão. Método paralelo & # 8211; Todos os kernels da sua CPU serão usados. Não permite ver resultados intermediários, mas acelera significativamente a operação. Ele fornece a máxima precisão durante o aumento da velocidade de computação. Método genético & # 8211; Ele usa o algoritmo de otimização evolutiva. Permite ver valores sub-óptimos, mas dá o resultado próximo ao melhor. Não é um método muito preciso, mas é preciso o suficiente para a "execução" inicial da estratégia. Muito rápido.


Segunda-feira, 5 de dezembro de 2016.


Testes e Análises de Estratégias de Negociação Algorítmicas em MATLAB (Parte 3) & # 8211; Visualização do Processo.


Visualização do Processo de Teste.


Na minha experiência de trabalho, muitas vezes eu analisei outras plataformas populares para testes de estratégia de negociação, como a TradeStation, o MetaStock, Multicartas etc. e sempre me surpreendi com a pouca atenção que foi dada à visualização do processo de teste. A coisa é que, quando não vemos os resultados dos valores intermediários, sub-ótimos de parâmetros otimizados, muitas vezes jogamos fora o ouro junto com a sujeira. A questão é devido a uma amostragem muito ampla, a estratégia ajusta os parâmetros da maneira como queremos ver uma "estratégia perfeita" que falha na vida real ou veja uma ou duas promoções, que supostamente são as melhores porque foi selecionado esses dados de intervalo de tempo onde a melhor estratégia de negociação seria "comprar e manter", mas por que então são necessárias outras estratégias?


E se houver mais de 4 dimensões? Quando você vê quais sinais e em que freqüência eles aparecem na faixa de preço, você tem quase toda a representação visual necessária de sua estratégia: a freqüência das transações, sua rentabilidade (curva de renda), a precisão da abertura, a semelhança com outras valores sub-óptimos, etc .; Isso não pode ser dito sobre o desempenho no espaço N-dimensional, onde todas as informações úteis são, de fato, que o valor ótimo não é apenas um, mas existe uma gama inteira de valores sub-ótimos em uma ou mais áreas.


Ao otimizar uma estratégia no WFAToolbox & # 8211; Walk-Forward Analysis Toolbox para MATLAB & # 174 ;, uma vez que um novo valor ótimo é encontrado, os sinais de estratégia de negociação no período em amostra e fora da amostra aparecem imediatamente no gráfico, para que você sempre possa controlar o intervalo de opções você deve atribuir, e também pode pausar a otimização sem esperar o fim do teste, pois fica claro que algo deu errado ou tudo está bem.


Quarta-feira, 30 de novembro de 2016.


Teste e Análise de Estratégias de Negociação Algorítmicas em MATLAB (Parte 2) & # 8211; GUI fácil de usar.


GUI fácil de usar.


Vamos começar com o fato de que não existe uma interface gráfica porque, se presumimos que quase todo o processo de teste e análise de estratégias de negociação é padronizado (é 99%), você gostaria de ter a interface que o ajuda a chamar os dados necessários e inicie o processo de teste com um clique.


Para usuários novos (e não apenas) do MATLAB é muito mais conveniente usar uma GUI com botões e campos de entrada do que procurar no código; portanto, há uma GUI mesmo nas caixas de ferramentas MathWorks na maioria dos casos porque é mais conveniente. Ele permite focar apenas o código da sua estratégia porque o uso de uma GUI não implica, de modo algum, que ela limite de alguma forma a sua capacidade de escrever uma estratégia.


Assim, na WFAToolbox, criamos a possibilidade de escrever qualquer código para sua estratégia, usando qualquer das caixas de ferramentas MATLAB e trabalhando com múltiplos ativos para as estratégias, tais como troca de pares, troca de cesta ou arbitragem de triplet, etc .; mas, ao mesmo tempo, esse código é facilmente integrado na GUI por meio do uso de padrões, que são simples o suficiente para aplicar no código e não limitam as oportunidades.


Terça-feira, 29 de novembro de 2016.


Testes e Análises de Estratégias de Negociação Algorítmicas em MATLAB (Parte 1) - Introdução.


Como tudo começou.


Foi 2008 (se não me enganei) quando foi lançado o primeiro webinar de negociação algorítmica em MATLAB com Ali Kazaam, abordando o tema da otimização de estratégias simples baseadas em indicadores técnicos, etc., apesar de um "caótico" e # 8221; código, as ferramentas eram interessantes o bastante para usar. Eles serviram como ponto de partida para pesquisa e aprimoramento de um modelo de teste e análise que permitiria usar todo o poder das caixas de ferramentas e a liberdade das ações MATLAB durante a criação das próprias estratégias comerciais, ao mesmo tempo em que permitiria controlar o processo de testes e os dados obtidos e suas análises subseqüentes escolheriam um portfólio efetivo de sistemas de negociação robustos.


Por que todo Algotrader deve reinventar a roda?


No entanto, a Mathworks não ofereceu uma solução completa para testar e analisar as estratégias # 8211; esses códigos que você poderia sair dos webinars eram os únicos "elementos" de um teste completo do sistema, e era necessário modificá-los, personalizá-los e adicioná-los à GUI para facilidade de uso. Foi muito demorado, colocando uma questão: seja qual for a estratégia, deve passar pelo mesmo processo de análise e análise, o que permitiria classificar-se como estável e utilizável. então, por que cada algotrader deve reinventar a roda e escrever seu próprio código para estratégias de teste adequadas no MATLAB?


Nós decidimos chamar a solução WFAToolbox - Walk-Forward Analysis Toolbox cuja versão de demonstração está disponível no wfatoolbox desde 2013.


Segunda-feira, 7 de novembro de 2016.


Uau?! O que aconteceu com o blog?


O que aconteceu com o blog?


1. Jev Kuznetsov já não é o dono.


2. Nós mudamos a marca.


O que acontecerá com o blog?


1. Mais postagens e artigos.


Esperamos trazer a vida a este blog postando conteúdos relevantes uma ou duas vezes por semana. Nos primeiros meses, publicaremos principalmente os artigos e vídeos que já temos para tornar mais fácil para os nossos queridos leitores pesquisar informações sobre um recurso e reticular-se sobre eles.


Negociação de pares de arbitragem estatística / estratégias de negociação de reversão / mercado neutro baseadas em cointegração / bollinger bands / kalman filter etc. para commodities, ações e Forex. Tendem as seguintes estratégias com Jurik Moving Average e outros filtros digitais sofisticados; Estratégias de previsão com aprendizado de máquina (Support Vector Machines) e outros métodos; Criando estratégias de negociação robustas usando o gerenciamento de dinheiro de teste visual para reinvestir seu capital (ciência sobre como obter $ 1M de US $ 10K em um ano com o máximo, mas o risco estimado e as recompensas de suor). Talvez depois de ler isso, você pensou que este seria um outro artigo burro para aqueles caras pobres que procuram como se tornar rico através do "trading on forex" e tudo isso. Bem, isso é totalmente falso! Estamos trabalhando no MATLAB, e a maioria de nós somos cientistas e especialistas nesse aspecto, então tudo é sério.


2. Mais interatividade.


Terça-feira, 1 de janeiro de 2013.


Intraday significa reversão.


As regras são simples e semelhantes à estratégia que testei na última publicação:


Se o retorno de barra do par exceder 1 no z-score, troque a barra seguinte.


O resultado parece muito bonito:


Se você acha que este gráfico é muito bom para ser verdade, isso infelizmente é o caso. Não foram considerados custos de transação ou spread de oferta e solicitação. Na verdade, eu duvidava que houvesse algum lucro depois de subtrair todos os custos de negociação.


Ainda assim, este tipo de gráficos é a cenoura pendurada na minha frente, mantendo-me em pé.


Domingo, 30 de dezembro de 2012.


Os pares são mortos?


A partir destes etfs 90 pares únicos podem ser feitos. Cada par é construído como um spread neutro no mercado.


Em cada dia, para cada par, calcule o z-score com base no desvio padrão de 25 dias.


Se z-score & gt; limiar, vá curto, fechar o próximo dia.


Se z-score & lt; O limite vai longo, fechado no próximo dia.


Aqui estão os resultados simulados para vários limiares:


Esta não é a primeira vez que encontrei essa mudança no comportamento de reversão média em etfs. Não importa o que tentei, não tive sorte em encontrar uma estratégia de negociação de pares que funcione em ETFs passados ​​em 2010. Minha conclusão é que esses tipos de modelos simples de stat-arb simplesmente não o cortaram.


WFAToolbox - Walk-Forward Analysis Toolbox.


Complemento MATLAB para desenvolver estratégias de negociação algorítmica em MATLAB da maneira fácil.


Fundamentos do comércio algorítmico: 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 em caixa preta ou simplesmente algo-trading) é o processo de uso de computadores programados para seguir um conjunto definido de instruções para colocar um comércio para gerar lucros a uma velocidade e freqüência impossíveis para um comerciante humano. Os conjuntos definidos de regras são baseados em tempo, preço, quantidade ou qualquer modelo matemático. Além das oportunidades de lucro para o comerciante, o algo-trading torna os mercados mais líquidos e torna a negociação mais sistemática descartando impactos emocionais humanos nas atividades comerciais. (Para mais, consulte Picking the Right Algorithmic Trading Software.)


Suponha que um comerciante siga esses critérios de comércio simples:


Compre 50 ações de uma ação quando sua média móvel de 50 dias excede a média móvel de 200 dias. Vende ações da ação quando sua média móvel de 50 dias está 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 monitorará automaticamente o preço das ações (e os indicadores de média móvel) e colocará as ordens de compra e venda quando as condições definidas forem atendidas. O comerciante não precisa mais manter um relógio para preços e gráficos ao vivo, ou colocar as ordens manualmente. O sistema de negociação algorítmica automaticamente faz isso para ele, identificando corretamente a oportunidade comercial. (Para mais informações sobre as médias móveis, consulte Médias móveis simples, faça as tendências se destacarem.)


[Se você quiser saber mais sobre as estratégias comprovadas e pontuais que podem eventualmente ser trabalhadas em um sistema de comércio alorítico, confira o Curso de Torneio de Dia de Torneio da Invastopedia Academy. ]


Benefícios da negociação algorítmica.


A Algo-trading oferece os seguintes benefícios:


Negociações executadas com os melhores preços Posicionamento instantâneo e preciso da ordem comercial (com altas chances de execução nos níveis desejados) Negociações cronometradas corretamente e instantaneamente, para evitar mudanças de preços significativas Custos de transação reduzidos (veja o exemplo de falta de implementação abaixo) Verificações automatizadas simultâneas em múltiplos condições de mercado Reduziu o risco de erros manuais na colocação dos negócios Backtest o algoritmo, com base nos dados históricos e em tempo real disponíveis Reduzida a possibilidade de erros por comerciantes humanos com base em fatores emocionais e psicológicos.


A maior parte do dia-a-dia é a negociação de alta freqüência (HFT), que tenta capitalizar a colocação de um grande número de pedidos em velocidades muito rápidas em múltiplos mercados e múltiplos parâmetros de decisão, com base em instruções pré-programadas. (Para obter mais informações sobre o comércio de alta freqüência, consulte Estratégias e Segredos de Empresas de Negociação de Alta Freqüência (HFT).)


O Algo-trading é usado em muitas formas de atividades de comércio e investimento, incluindo:


Investidores de médio a longo prazo ou empresas de compra (fundos de pensão, fundos de investimento, companhias de seguros) que adquirem ações em grandes quantidades, mas não querem influenciar os preços das ações com investimentos discretos e de grande porte. 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, ajudas de algo-trading na criação de liquidez suficiente para os vendedores no mercado. Os comerciantes sistemáticos (seguidores de tendências, comerciantes de pares, hedge funds, etc.) acham muito mais eficiente programar suas regras comerciais e permitir que o programa seja comercializado 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 de negociação algorítmica exige uma oportunidade identificada que seja rentável em termos de melhoria de ganhos ou redução de custos. As seguintes são estratégias de negociação comuns usadas em algo-trading:


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. Estas são as estratégias mais fáceis e simples de implementar através de negociação algorítmica porque essas estratégias não envolvem fazer previsões ou previsões de preços. Os negócios são iniciados com base na ocorrência de tendências desejáveis, que são fáceis e direitas de implementar através 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 as estratégias de negociação de tendências, consulte: Estratégias simples para capitalizar as tendências.)


Comprar um estoque cotado duplo a um preço mais baixo em um mercado e simultaneamente vendê-lo a um preço mais alto em outro mercado oferece o diferencial de preço como lucro ou arbitragem sem risco. A mesma operação pode ser replicada para ações versus instrumentos de futuros, pois os diferenciais de preços existem de tempos em tempos. Implementar um algoritmo para identificar esses diferenciais de preços e colocar as ordens permite oportunidades lucrativas de forma eficiente.


Os fundos do índice definiram períodos de reequilíbrio para que suas participações fossem compatíveis com seus respectivos índices de referência. Isso cria oportunidades rentáveis ​​para comerciantes algorítmicos, que capitalizam os negócios esperados que oferecem lucros de 20 a 80 pontos base, dependendo do número de ações no fundo do índice, apenas antes do reequilíbrio do fundo do índice. Essas 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 neutra do delta, que permitem a negociação de combinações de opções e sua segurança subjacente, onde os negócios são colocados para compensar deltas positivos e negativos, de modo que o portfólio delta 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 bem são um fenômeno temporário que retorna periodicamente ao seu valor médio. Identificar e definir uma faixa de preço e implementar algoritmos com base em isso permite que os negócios sejam colocados automaticamente quando o preço do recurso entra e sai do seu alcance definido.


A estratégia de preços médios ponderados por volume quebra uma grande ordem e libera pedaços menores determinados dinamicamente da ordem para o mercado usando perfis de volume histórico específicos de estoque. O objetivo é executar a ordem perto do preço médio ponderado do volume (VWAP), beneficiando assim o preço médio.


A estratégia de preço médio ponderado no tempo quebra uma grande ordem e libera dinamicamente determinados pedaços menores da ordem para o mercado usando intervalos de tempo uniformemente divididos entre o início e o fim do tempo. O objetivo é executar a ordem perto do preço médio entre os horários de início e término, minimizando assim o impacto no mercado.


Até que a ordem comercial seja totalmente preenchida, este algoritmo continua enviando ordens parciais, de acordo com o índice de participação definido 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 falta de implementação visa minimizar o custo de execução de uma ordem através da negociação do mercado em tempo real, economizando assim o custo da ordem e beneficiando do custo de oportunidade da execução atrasada. A estratégia aumentará a taxa de participação direcionada quando o preço das ações se mover de forma favorável e diminuí-lo quando o preço das ações se mover de forma adversa.


Existem algumas classes especiais de algoritmos que tentam identificar "acontecimentos" do outro lado. Esses "algoritmos de sniffing", usados, por exemplo, por um market maker market market têm a inteligência interna para identificar a existência de qualquer algoritmo no lado da compra de uma grande ordem. Essa detecção através de algoritmos ajudará o fabricante de mercado a identificar grandes oportunidades de ordem e permitir que ele se beneficie ao preencher os pedidos a um preço mais alto. Isso às vezes é identificado como front-running de alta tecnologia. (Para obter mais informações sobre negociação de alta freqüê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. São necessários os seguintes:


Conhecimento de programação de computador para programar a estratégia de negociação necessária, programadores contratados ou software de negociação pré-fabricado Conectividade de rede e acesso a plataformas de negociação para colocar os pedidos Acesso a feeds de dados de mercado que serão monitorados pelo algoritmo para oportunidades de colocar pedidos A capacidade e infra-estrutura para voltar a testar o sistema uma vez construído, antes de entrar em operação em mercados reais Dados históricos disponíveis para backtesting, dependendo da complexidade das regras implementadas no algoritmo.


Aqui está um exemplo abrangente: o Royal Dutch Shell (RDS) está listado na Amsterdam Stock Exchange (AEX) e London Stock Exchange (LSE). Vamos construir 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, seguido de ambas as trocas comerciais simultaneamente durante as próximas horas e depois de negociar apenas na LSE durante a última hora à medida que o AEX fecha .


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


Um programa de computador que pode ler os preços atuais do mercado Os feeds de preços de LSE e AEX A taxa de câmbio para a taxa de câmbio GBP-EUR Capacidade de colocação de pedidos que podem rotear a ordem para a troca correta do recurso Back-testing em feeds históricos de preços.


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 é simples de manter e executar. Lembre-se, se você pode colocar um comércio gerado por algo, os outros participantes do mercado podem também. Conseqüentemente, os preços flutuam em milissegundos e até mesmo em microssegundos. No exemplo acima, o que acontece se o seu comércio de compras for executado, mas o comércio de vendas não acontece à medida que os preços de venda mudam quando o seu pedido atinge o mercado? Você vai acabar sentado com uma posição aberta, tornando sua estratégia de arbitragem inútil.


Existem riscos e desafios adicionais: por exemplo, riscos de falha do sistema, erros de conectividade de rede, atrasos de tempo entre ordens comerciais e execução e, o mais importante de tudo, algoritmos imperfeitos. O algoritmo mais complexo é o backtesting mais rigoroso antes de ser posto 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 certificar-se de que o sistema está completamente testado e os limites exigidos são definidos. Os comerciantes analíticos devem considerar a aprendizagem de sistemas de programação e construção por conta própria, ter confiança em implementar as estratégias certas de forma infalível. O uso cauteloso eo teste completo de algo-trading podem criar oportunidades rentáveis. (Para mais informações, consulte Como codificar seu próprio robô Algo Trading.)


Negociação Algorítmica com MATLAB: Seleção de Regras.


Anteriormente, desenvolvemos uma estrutura de teste de volta para calibrar uma estratégia de negociação simples para dados intraday. Nesta demonstração, usaremos a ampliação da abordagem para três sinais: MA, RSI e Williams% R.


Copyright 2010-2012, The MathWorks, Inc. Todos os direitos reservados.


Carregar dados.


Williams% R.


Ao adaptar o código da estratégia de média móvel existente, podemos fazer outras estratégias de negociação com base, por exemplo, no índice de força relativa e Williams% R. A chave aqui é reutilização: precisamos apenas mudar algumas linhas de código para mudar de uma estratégia para a próxima. Podemos dar uma olhada neste indicador com, digamos, uma janela de 50 dias:


Williams% R estratégia de negociação.


Gerar um sinal comercial cada vez que cruzamos certos limiares (até uma compra, baixa é uma venda). Definiremos nossos limiares de negociação em -20% e -80% e variamos apenas o tamanho da janela, mas é claro que podemos ter os três desses parâmetros gratuitos.


WPR desempenho.


Não há motivos para preferir o parâmetro da janela de 50 em relação a outras possibilidades; Permita-nos varrer vários valores para identificar a configuração ideal dos parâmetros.


Gerar sinais de negociação.


Agora vamos gerar três sinais de negociação distintos com base em uma média móvel, o Williams% R descrito acima e um Índice de Força Relativa. Os parâmetros para cada modelo já foram determinados de forma independente; poderíamos facilmente determinar o conjunto ideal de parâmetros como um conjunto, se desejarmos.


Sinais comerciais.


Trace o "estado" do mercado representado pelos sinais. No gráfico inferior, o verde é uma posição longa e o vermelho é uma posição curta.


Gerar população inicial para o Algoritmo Genético.


Gerar população inicial para sinais.


Resolva com Algoritmo Genético.


Encontre a melhor regra de negociação e a proporção máxima de Sharpe (min - relação de cruzamento)


Avalie o Melhor Artista.


Avalie o objetivo com o melhor valor e aponte a convenção de sinal para a relação Sharpe ideal.


Negociação algorítmica: estratégias para otimizar a execução comercial.


Robert Kissell, Kissell Research Group.


Robert Kissell fornece uma visão geral de como o MATLAB pode ser usado pelo profissional da indústria para melhorar a qualidade do comércio e os retornos de portfólio em todas as fases do ciclo de investimento. Ele fornece exemplos práticos e um estudo de caso utilizando as funções de análise de custo de transações (TCA) lançadas recentemente pela MATLAB para ajudar os gerentes de portfólio, comerciantes e analistas a desenvolver estratégias para reduzir os custos de negociação e gerenciar melhor o risco de negociação. Sua apresentação mostrará como o MATLAB está atualmente sendo usado para calcular:


Impacto do mercado (por tempo de comércio, taxa de POV e cronograma de comércio) Cronograma de risco para um cronograma de comércio Análise de estoque (Tamanho, Volatilidade, Tempo, Otimização) Curvas de custo de estoque de construção Análise de custo de liquidação e Análise de sensibilidade.


Sobre o apresentador.


Robert é o presidente e fundador do Kissell Research Group. Possui mais de 20 anos de experiência profissional especializada em economia, modelagem quantitativa, análise estatística e gerenciamento de riscos. Ele aconselha e consulta gestores de carteiras em todo os Estados Unidos e a Europa em gerenciamento adequado de riscos, análise de negociação e técnicas de construção de portfólio. Ele é o autor dos principais livros da indústria Optimal Trading Strategies, The Science of Algorithmic Trading & amp; Gestão de Carteira e Gerenciamento de Riscos Multi-ativos. Robert publicou numerosos trabalhos de pesquisa sobre estratégias de negociação, negociação algorítmica, gerenciamento de riscos e melhor execução. Seu artigo "Modelos Dinâmicos Pré-Comerciais: além da Caixa Negra" ganhou o Prêmio de Prestígio Institucional do Prestigio do Ano.


Foco no produto.


Outros recursos.


Produtos relacionados.


Vídeos e Webinars relacionados.


Escolha o seu país.


Escolha o seu país para obter conteúdo traduzido, quando disponível, e veja eventos e ofertas locais. Com base na sua localização, recomendamos que você selecione:.


Você também pode selecionar um local da seguinte lista:


América Latina (Español) Canadá (Inglês) Estados Unidos (Inglês)


Bélgica (Inglês) Dinamarca (Inglês) Deutschland (Deutsch) España (Español) Finlândia (Inglês) França (Français) Irlanda (Inglês) Italia (Italiano) Luxemburgo (Inglês)


Holanda (Inglês) Noruega (Inglês) Österreich (Deutsch) Portugal (Inglês) Suécia (English) Suíça Deutsch English Français Reino Unido (Inglês)


Ásia-Pacífico.


Austrália (Inglês) Índia (Inglês) Nova Zelândia (Inglês) 中国 (简体 中文) 日本 (日本語) 한국 (한국어)


Explore produtos.


Experimente ou compre.


Aprenda a usar.


Obter Suporte.


Sobre o MathWorks.


Acelerando o ritmo da engenharia e da ciência.


MathWorks é o principal desenvolvedor de software de computação matemática para engenheiros e cientistas.


Negociação automatizada.


Desenvolva sistemas de negociação automatizados com MATLAB.


Negociação automatizada é uma estratégia de negociação que usa computadores para gerar automaticamente decisões de negociação, geralmente em mercados financeiros eletrônicos. Aplicado em instituições de buy-side e sell-side, a negociação automatizada é a base da negociação de alta freqüência, por exemplo, na negociação de ações, negociação forex ou negociação de commodities.


Construtores e usuários de aplicativos comerciais automatizados precisam desenvolver, testar e implantar modelos matemáticos que detectem e explorem os movimentos do mercado. Um fluxo de trabalho efetivo envolve:


Desenvolvimento de estratégias de negociação, utilizando métodos temporais técnicos, métodos de aprendizagem mecânica e métodos não-lineares de séries temporais Aplicação de computação paralela e de GPU para teste de tempo eficiente e identificação de parâmetros Cálculo de lucros e perdas e realização de análise de risco Realização de análises pré-negociação e pós-negociação, incluindo modelos de impacto de mercado e análise de execução Incorporando estratégias e análises em ambientes de negociação de produção, como o Bloomberg® EMSX.


Exemplos e como fazer.


Análise Walk-Forward: Usando o MATLAB para testar sua estratégia comercial 35:15 - Gerenciamento de Execução de Ordem de Webinar com Bloomberg EMSX - Página de Produto Alpha Generation Usando Thomson Reuters News Sentiment e MATLAB 59:53 - Webinar News Sentiment Analysis Usando MATLAB e RavenPack 12:01 - Video Liquidnet Desenvolve Execução Ferramenta de Medição de Desempenho - História de Usuário Negociação Quantitativa: Como Construir Seu Próprio Negócio de Negociação Algorímetro, por Ernest P. Chan - Estratégias de Negociação de Backtesting de Livro em Apenas 8 Linhas de Código (4:13) - Comércio de Algoritmos de Vídeo - Solução Código de Negociação Automatizado e Outros Recursos - MATLAB Central Implemente e Integre Algoritmos MATLAB - MathWorks Consulting.


Referência de Software.


Funções de Trading Toolbox - Documentação movavg: Leading and Lagging Gráfico de médias móveis - Caixa de ferramentas financeiras Função Acesso Dados do mercado e enviar encomendas através de tecnologias de negociação ® X_TRADER ® - Funções da Trading Toolbox Criar e manter ordens, rotas e estratégias através do Bloomberg EMSX - Funções da Trading Toolbox Cointegration Teste - Econometria Funções da caixa de ferramentas de modelagem e predição com NARX e Time Delay Networks - Neural Network Toolbox Documentation.


Escolha o seu país.


Escolha o seu país para obter conteúdo traduzido, quando disponível, e veja eventos e ofertas locais. Com base na sua localização, recomendamos que você selecione:.


Você também pode selecionar um local da seguinte lista:


América Latina (Español) Canadá (Inglês) Estados Unidos (Inglês)


Bélgica (Inglês) Dinamarca (Inglês) Deutschland (Deutsch) España (Español) Finlândia (Inglês) França (Français) Irlanda (Inglês) Italia (Italiano) Luxemburgo (Inglês)


Holanda (Inglês) Noruega (Inglês) Österreich (Deutsch) Portugal (Inglês) Suécia (English) Suíça Deutsch English Français Reino Unido (Inglês)


Ásia-Pacífico.


Austrália (Inglês) Índia (Inglês) Nova Zelândia (Inglês) 中国 (简体 中文) 日本 (日本語) 한국 (한국어)


Explore produtos.


Experimente ou compre.


Aprenda a usar.


Obter Suporte.


Sobre o MathWorks.


Acelerando o ritmo da engenharia e da ciência.


MathWorks é o principal desenvolvedor de software de computação matemática para engenheiros e cientistas.

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

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