Sistema de negociação de participações básicas


Sistemas de Negociação: O que é um sistema de negociação?


Um sistema de negociação é um grupo de parâmetros específicos que se combinam para criar sinais de compra e venda para uma determinada segurança. Os sistemas de negociação podem ser desenvolvidos usando muitas tecnologias diferentes, incluindo Microsoft Excel, MATLAB, TradeStation, R, Python e outras plataformas e idiomas. Os sinais de compra e venda dessas plataformas podem aparecer em um arquivo para você executar ou ser programaticamente executados usando uma corretora que suporte negociações automatizadas.


Existem inúmeros inputs diferentes que podem ser usados ​​na construção de sistemas de negociação. Os indicadores técnicos são os mais comuns, mas muitos sistemas de negociação incorporam dados fundamentais, como receita, fluxo de caixa, dívida por participação acionária ou outros índices financeiros. Outros até incorporam notícias, tweets e outros dados de toda a web que podem fornecer um sinal. O único requisito é que os dados sejam representados de maneira que um computador possa analisar.


Indicadores técnicos.


Nos sistemas de negociação básicos, dois ou mais indicadores técnicos são combinados para criar um sinal de negociação de compra e venda. Por exemplo, um sistema de negociação de crossover médio móvel usa duas médias móveis como parâmetros, a longo prazo e a curto prazo, para criar sinais de negociação. Um sinal de compra é gerado quando o curto prazo cruza acima do longo prazo e um sinal de venda é gerado quando o curto prazo cruza abaixo do longo prazo.


Em sistemas de negociação avançados, técnicas de aprendizado de máquina ou inteligência artificial podem ser usadas para ajustar as configurações desses parâmetros (por exemplo, o número de dias usados ​​em um cálculo de média móvel) ou identificar relações entre preços de segurança e / ou fatores externos. Essas técnicas podem se tornar muito complexas - como é o caso dos fundos hedge, como a Renaissance Technologies LLC, que empregam equipes de matemáticos com PhDs.


Os traders gastam muito tempo otimizando os sistemas de negociação, alterando os valores de cada parâmetro, para reduzir o risco e aumentar os retornos. Por exemplo, as médias móveis de longo prazo no sistema de negociação de crossover médio móvel podem levar a sinais atrasados, de modo que os traders podem experimentar o uso de médias móveis de curto prazo. Os comerciantes também podem explorar a adição de novos parâmetros ao mix para reduzir o risco ou aumentar os retornos.


Vantagens dos sistemas de negociação.


Remove vieses cognitivos. Os vieses cognitivos custam caro à receita de negociação e os sistemas de negociação removem a maioria deles da equação. Os comerciantes que são incapazes de lidar com perdas adivinham suas decisões, enquanto aqueles que perderam dinheiro recentemente podem perder novas oportunidades. Os sistemas de negociação removem os negociadores das decisões de compra e venda reais e criam resultados mais previsíveis. Poupa tempo . Os sistemas de negociação que são desenvolvidos e otimizados podem exigir menos esforço para manter do que se sentar em uma tela durante todo o dia, encontrando oportunidades e colocando negócios. Os operadores também podem desenvolver sistemas de negociação a qualquer hora do dia, o que significa que eles podem gastar horas de mercado longe da tela. Você pode terceirizar parte do trabalho. Muitos desenvolvedores de software se especializam no desenvolvimento de sistemas de negociação. Se você criar as regras, elas poderão implementar e fazer backtest dos sistemas de negociação para ver como eles funcionam. Algumas empresas também vendem sistemas de negociação off-the-shelf, mas geralmente é uma boa idéia ter cautela ao considerá-los.


Desvantagens dos sistemas de negociação.


Requer habilidades desconhecidas. Desenvolver sistemas de negociação por conta própria requer uma sólida compreensão tanto da análise técnica quanto do desenvolvimento de software. Embora você possa terceirizar o desenvolvimento de software, ainda precisará da capacidade de traduzir efetivamente seu conhecimento inato de análise técnica em regras específicas que podem ser implementadas por um algoritmo de computador, em vez de confiar na intuição. Pode ser difícil de otimizar. Os sistemas de negociação devem incluir muitas premissas diferentes, como slippage, custos de transação e mudanças na dinâmica do mercado. Mesmo ao contabilizar esses fatores, é impossível testar os sistemas de negociação antes de transmiti-los ao vivo, o que significa que há um grau de incerteza envolvido. Podem surgir problemas no comércio ao vivo que podem ser caros e difíceis de corrigir. Requer um grande investimento inicial. Os sistemas de negociação demoram muito tempo para desenvolver e testar inicialmente, antes de enviá-los ao vivo. Durante esse período, você não estará gerando receita de negociação, o que pode custar caro para alguns traders. Os sistemas de negociação também exigem manutenção contínua para ajustar os parâmetros e resolver quaisquer alterações no mercado.


Eles realmente funcionam?


Não há escassez de golpistas prometendo sistemas de troca em troca de centenas ou milhares de dólares. Mas também não há dúvida de que houve muitos sistemas de negociação bem-sucedidos no passado e que haverá muito mais no futuro.


O exemplo mais famoso de um sistema comercial bem sucedido foi o desenvolvido e implementado por Richard Dennis e Bill Eckhardt - o Original Turtle Traders. Em 1983, os dois discutiram se um bom comerciante nasceu ou foi criado. Então, eles tiraram algumas pessoas da rua e as treinaram com base no agora famoso Turtle Trading Systems. Eles reuniram 13 traders e acabaram fazendo 80% ao ano nos quatro anos seguintes.


É fácil identificar a maioria dos golpes aderindo à velhice "se é bom demais para ser verdade, então provavelmente é" idioma. Por exemplo, uma garantia de 2.500 por cento de retornos por ano é claramente ultrajante, pois promete que, com apenas US $ 5.000, você poderia ganhar US $ 125.000 em um único ano. Depois de cinco anos, esse valor seria de quase US $ 50 bilhões. Se isso fosse verdade, os criadores poderiam ter se transformado em um bilionário em pouco tempo!


Se você tem uma intuição quando se trata do mercado, e você pode traduzir essa intuição em regras de negociação, então você pode construir um sistema de negociação. Da mesma forma, se você tiver experiência em áreas emergentes, como aprendizado de máquina e inteligência artificial, além de acesso a amplas velocidades de velocidade e execução, poderá criar um sistema de negociação. Os sistemas de negociação não são fáceis de desenvolver e exigem uma compreensão profunda dos mercados, mas podem ser muito lucrativos.


Na próxima seção, veremos como projetar seu próprio sistema de negociação.


Sistemas de Negociação: Diferentes Mercados e Tipos.


Agora você deve estar familiarizado com alguns elementos comuns que compõem um sistema de negociação, bem como as vantagens e desvantagens de usá-los. Vamos basear-nos nesse conhecimento nesta seção para examinar quais mercados são adequados para sistemas de negociação e, em seguida, examinar mais detalhadamente os diferentes gêneros de sistemas de negociação.


Quais mercados funcionam melhor?


Os sistemas de negociação funcionam melhor em mercados estatisticamente previsíveis, com altos níveis de liquidez e baixos custos. Enquanto muitos comerciantes estão cientes do primeiro requisito, relativamente poucos apreciam que os custos desempenham um papel importante no sucesso. Custos baixos - incluindo comissões, spreads e derrapagens - geram mais oportunidades e maiores lucros.


O mercado acionário é o mais conhecido entre os investidores de varejo familiarizados com empresas de primeira linha. Enquanto os preços de longo prazo são impulsionados por investidores institucionais, a ação de preço de curto prazo é dominada por negociações automatizadas e day traders.


Existem vários fatores importantes a serem lembrados:


Diversidade Existem muitos tipos diferentes de ações com características muito diferentes, desde ações blue-chip estáveis ​​a ações voláteis no mercado de balcão. Isso gera muitas oportunidades para os comerciantes usando estratégias como arbitragem estatística. Comissões As comissões são relativamente baixas para a maioria das grandes ações, mas elas podem gerar rentabilidade ao longo do tempo. Os comerciantes devem estar cientes dos efeitos das comissões, desvios, spreads e outros fatores ao criar sistemas de negociação. Foco. Muitos sistemas de negociação de ações estão focados em parâmetros baseados em valor, como aqueles que identificam títulos subvalorizados em comparação com seu desempenho passado, pares ou mercado em geral, bem como a arbitragem estatística.


O mercado de câmbio ou forex é o maior e mais fluido mercado do mundo. Entre governos, bancos e investidores institucionais, trilhões de dólares são negociados no mercado forex a cada dia, o que é uma grande atração para os comerciantes que usam sistemas de negociação.


Existem vários fatores importantes a serem lembrados:


Luidity. O mercado cambial tem maior liquidez do que qualquer outro mercado importante devido ao grande volume de transações. Isso torna o mercado muito atraente para os traders, já que eles podem facilmente escalar seus sistemas de negociação para quantias maiores em dólar. Custos Comerciantes forex não precisam pagar uma comissão, na maioria dos casos, mas há spreads a serem considerados. Os comerciantes devem considerar os spreads em vários pares de moedas e considerar negociar aqueles com spreads mais reduzidos para minimizar o custo. Opções limitadas. Há menos pares de moedas do que ações, o que significa que pode haver menos oportunidades para os operadores. Pares de moedas exóticas fornecem opções adicionais, mas eles tendem a ser muito mais arriscados do que os pares estabelecidos.


Os mercados de futuros são populares entre os traders devido aos seus altos níveis de liquidez e número de opções. Além disso, os mercados futuros permitem níveis mais altos de margem, ou alavancagem, do que muitos outros mercados, o que abre as portas para um maior potencial de ganhos.


Existem vários fatores importantes a serem lembrados:


Custos Os custos e spreads de comissão tendem a ser menores para os futuros do que para as ações, o que se traduz em maior lucratividade para os investidores que desenvolvem sistemas de negociação. Opções Existem mais contratos futuros do que pares de moedas, o que significa mais oportunidades para os traders, mas as ações ainda são as mais diversificadas. Alavancagem Alavancagem pode ser usada para amplificar ganhos, mas os comerciantes devem ter em mente que é uma faca de dois gumes que também pode amplificar as perdas.


Qual mercado é o melhor?


O melhor mercado depende do seu estilo de negociação e preferências individuais. Por exemplo, os comerciantes focados nos seguintes sistemas de tendência podem querer considerar o mercado forex, uma vez que ele tende a tender muito mais do que outros mercados; os interessados ​​em alavancar análises fundamentais em seus sistemas de negociação podem estar limitados a ações; e aqueles que buscam a maior alavancagem podem querer considerar o mercado futuro.


Tipos de sistemas de negociação.


Existem muitos tipos diferentes de sistemas de negociação e decidir sobre o tipo certo de sistema depende muito das suas próprias preferências.


Sistemas de negociação de arbitragem estatística estão entre os mais populares entre os comerciantes quantitativos. Esses sistemas de negociação são frequentemente construídos usando linguagens de programação como MATLAB®, R ou Python e plataformas de alavancagem como Quantopian ou QuantConnect para gerenciar a atividade de negociação. Porém, eles podem ser tão simples quanto o Microsoft Excel com dados históricos ou tão complexos quanto um aplicativo personalizado que faz interface com as trocas.


Os sistemas de negociação orientados por análises técnicas são populares entre os investidores de varejo que buscam automatizar suas estratégias existentes. Muitas vezes, esses sistemas de negociação são construídos usando software fornecido por corretores, como o TradeStation. Essas plataformas têm suas próprias linguagens de programação proprietárias que podem ser usadas para construir estratégias, mas essas estratégias são geralmente limitadas a indicadores técnicos.


As estratégias técnicas podem ser divididas em duas categorias:


Sistemas de Acompanhamento de Tendências. Os sistemas de negociação técnica mais comuns utilizam métodos de acompanhamento de tendência. Em sua forma mais fundamental, esse sistema simplesmente espera por um movimento significativo de preços e depois compra ou vende nessa direção. A desvantagem desses sistemas de negociação é que a tomada de decisão empírica é necessária, os indicadores atrasados ​​são necessários, pode haver efeitos inesperados e os mercados laterais podem eliminar quaisquer oportunidades por um período prolongado de tempo. Sistemas de tendência contrária. Os sistemas de tendência de venda são projetados para comprar na mínima mais baixa e vender na máxima alta. A maior diferença entre os sistemas de tendência de contração e de tendência é que os sistemas de tendência de contração não são autocorretores. Em outras palavras, não há tempo definido para sair de posições e há um potencial de queda ilimitado.


Outros sistemas de negociação.


Existem também muitos outros tipos de sistemas de negociação focados em estratégias mais avançadas, como redes neurais ou aprendizado de máquina. Embora esses sistemas de negociação estejam além do escopo deste tutorial, há muitas novas tecnologias de software livre sendo desenvolvidas que democratizaram esses conceitos avançados, como o TensorFlow do Google. Mas as redes neurais e os aprendizados de máquina não são de forma alguma uma bala de prata para a lucratividade.


Na próxima seção, vamos dar uma olhada nos principais componentes de um sistema de negociação.


Sistemas de Ações.


Software e serviços voltados para análise, negociação e execução de títulos patrimoniais.


MX.3 para negociação.


Imagine Trading System.


Análise de seleção de fornecedores de relatórios de transações e transações.


Incubadora de estratégia de negociação de backtesting algorítmico em CQLite.


Solução de conformidade e vigilância Panopticon.


FlexTrader.


Easy Trade Smart Path.


Hennigan Consulting - Parceiro de Implementação LatentZero.


JHC FIGARO.


FIX Engine, Sistemas de Negociação, Gerenciamento de Risco,


Insight entregue diariamente na sua caixa de entrada.


Nosso boletim informativo líder de mercado é uma fonte inestimável de notícias, insights e análises da indústria de tecnologia financeira.


14 de fevereiro de 2014.


1 de fevereiro de 2016.


15 de dezembro de 2016.


11 de janeiro de 2016.


14 de fevereiro de 2014.


1 de fevereiro de 2016.


15 de dezembro de 2016.


11 de janeiro de 2016.


Insight entregue diariamente na sua caixa de entrada.


Nosso boletim informativo líder de mercado é uma fonte inestimável de notícias, insights e análises da indústria de tecnologia financeira.


Insight entregue diariamente na sua caixa de entrada.


Nosso boletim informativo líder de mercado é uma fonte inestimável de notícias, insights e análises da indústria de tecnologia financeira.


14 de fevereiro de 2014.


1 de fevereiro de 2016.


15 de dezembro de 2016.


11 de janeiro de 2016.


Conectando compradores e vendedores de tecnologia financeira globalmente.


Parte do Contentive Group Ltd.


Conectando compradores e vendedores de tecnologia financeira globalmente.


Parte do Contentive Group Ltd.


Conectando compradores e vendedores de tecnologia financeira globalmente.


Parte do Contentive Group Ltd.


Anúncios da empresa.


O bobsguide conecta compradores e vendedores de tecnologia financeira globalmente.


A bobsguide atrai mais de 70.000 compradores e vendedores de fintech todos os meses. Eles vêm até nós para obter as informações mais recentes de nossa plataforma, encontrar os melhores fornecedores por meio de nosso diretório de produtos de fintech, encontrar novas funções de trabalho ou descobrir talentos digitais para seus negócios por meio de nossas listas de trabalho, aprender sobre eventos importantes ao vivo e digitais e para baixar recursos úteis, como white papers e estudos de caso.


Bancos de Dados Securities Master para Negociação Algorítmica.


Bancos de Dados Securities Master para Negociação Algorítmica.


No comércio algorítmico, o centro das atenções geralmente brilha no componente de modelo alfa do sistema de negociação completo. Essa é a parte do sistema que gera os sinais de negociação, antes da filtragem por um sistema de gerenciamento de risco ou de construção de portfólio. Como tal, os comerciantes de algo geralmente gastam uma parte significativa de seu tempo de pesquisa refinando o modelo alfa para gerar o maior índice backpe de Sharpe antes de colocar seu sistema em produção.


No entanto, um modelo alfa é tão bom quanto os dados que estão sendo alimentados. Este conceito é bem resumido pelo velho ditado da ciência da computação de "lixo, lixo fora". É crucial que dados precisos e oportunos sejam usados ​​para alimentar o modelo alfa. Caso contrário, os resultados serão, na melhor das hipóteses, ruins ou, na pior, completamente incorretos, levando a grandes perdas se o sistema for colocado em produção.


Neste artigo, quero discutir questões relacionadas à aquisição e fornecimento de dados precisos oportunos para um sistema de backtesting de estratégia algorítmica e, finalmente, um mecanismo de execução de negociação. Em particular, estudaremos como obter dados financeiros, como armazená-los, como limpá-los e como exportá-los. No setor financeiro, esse tipo de serviço de dados é conhecido como banco de dados mestre de títulos.


O que é um mestre de valores mobiliários?


Um mestre de títulos é um banco de dados de toda a organização que armazena dados fundamentais, de preços e transacionais para uma variedade de instrumentos financeiros em todas as classes de ativos. Ele fornece acesso a essas informações de maneira consistente para ser usado por outros departamentos, como gerenciamento de risco, compensação / liquidação e negociação proprietária.


Em grandes organizações, uma variedade de instrumentos e dados será armazenada. Aqui estão alguns dos instrumentos que podem ser de interesse para uma empresa:


Acções Equity Options Índices Taxas de Juros Cambiais Futuros Commodities Bonds - Derivativos do Governo e Societários - Caps, Floors, Swaps.


Bases de dados mestre de títulos geralmente têm equipes de desenvolvedores e especialistas em dados garantindo alta disponibilidade dentro de uma instituição financeira. Embora isso seja necessário em grandes empresas, no nível de varejo ou em um fundo pequeno, um mestre em títulos pode ser muito mais simples. Na verdade, embora os grandes mestres de valores mobiliários usem bancos de dados empresariais caros e sistemas de análise, é possível usar software de código aberto de commodity para fornecer o mesmo nível de funcionalidade, assumindo um sistema bem otimizado.


Quais conjuntos de dados são usados?


Para o comerciante algorítmico de varejo ou para o pequeno fundo quantitativo, os conjuntos de dados mais comuns são o preço de fim de dia e histórico intradiário para ações, índices, futuros (principalmente commodities ou renda fixa) e câmbio (forex). Para simplificar esta discussão, nos concentraremos exclusivamente nos dados de fim de dia (EOD) para ações, ETFs e índices de ações. Artigos posteriores discutirão a adição de dados de frequência mais alta, classes de ativos adicionais e dados de derivativos, que possuem requisitos mais avançados.


É fácil obter dados de EOD para ações. Há vários serviços que fornecem acesso gratuitamente por meio de APIs disponíveis na Web:


É fácil fazer o download manual de dados históricos para títulos individuais, mas isso consome tempo se muitas ações precisarem ser baixadas diariamente. Assim, um componente importante do nosso título de títulos atualizará automaticamente o conjunto de dados.


Outra questão é o período de lookback. Até que ponto no passado precisamos ir com nossos dados? Isso será específico para os requisitos da sua estratégia de negociação, mas há certos problemas que abrangem todas as estratégias. O mais comum é a mudança de regime, que é frequentemente caracterizada por um novo ambiente regulatório, períodos de maior / menor volatilidade ou mercados de tendência de longo prazo. Por exemplo, uma estratégia de curto prazo direcional / de tendência a longo prazo provavelmente teria um bom desempenho de 2000 a 2003 ou 2007-2009. No entanto, teria sido difícil para 2003-2007 ou 2009 até o presente.


Minha regra é obter o máximo de dados possível, especialmente para dados de EOD, onde o armazenamento é barato. Só porque os dados existem no seu mestre de segurança, isso não significa que deva ser utilizado. Há ressalvas em torno do desempenho, pois tabelas de banco de dados maiores significam tempos de consulta mais longos (veja abaixo), mas os benefícios de ter mais pontos de amostra geralmente superam quaisquer problemas de desempenho.


Como em todos os dados financeiros, é imperativo estar ciente dos erros, como preços altos / baixos incorretos ou viés de sobrevivência, que discuti longamente com o QuantStart (veja aqui).


O que é usado para armazenar dados?


Existem três maneiras principais de armazenar dados financeiros. Todos eles possuem diferentes graus de acesso, desempenho e capacidades estruturais. Vamos considerar cada um por sua vez.


Armazenamento de Arquivo Simples.


O armazenamento de dados mais simples para dados financeiros e a maneira como você provavelmente receberá os dados de qualquer fornecedor de dados é o formato de arquivo simples. Os arquivos simples frequentemente usam o formato CSV (Comma-Separated Variable), que armazena uma matriz bidimensional de dados como uma série de linhas, com dados de coluna separados por um delimitador (geralmente uma vírgula, mas podem ser espaços em branco, como como um espaço ou tabulação). Para dados de precificação EOD, cada linha representa um dia de negociação através do paradigma OHLC (ou seja, os preços no aberto, alto, baixo e próximo do período de negociação).


A vantagem dos arquivos simples é sua simplicidade e capacidade de serem fortemente compactados para arquivamento ou download. As principais desvantagens residem na falta de capacidade de consulta e no baixo desempenho para iteração em grandes conjuntos de dados. O SQLite e o Excel atenuam alguns desses problemas, fornecendo certos recursos de consulta.


Armazenamento de documentos / NoSQL.


As bases de dados de armazenamento de documentos / NoSQL, embora certamente não sejam um conceito novo, ganharam proeminência significativa nos últimos anos devido ao seu uso em empresas de "escala da web", como Google, Facebook e Twitter. Eles diferem substancialmente dos sistemas RDBMS, pois não há conceito de esquemas de tabelas. Em vez disso, há coleções e documentos, que são as analogias mais próximas das tabelas e registros, respectivamente. Existe uma ampla taxonomia de lojas de documentos, cuja discussão está bem fora deste artigo! No entanto, algumas das lojas mais populares incluem MongoDB, Cassandra e CouchDB.


As lojas de documentos, em aplicações financeiras, são mais adequadas a dados fundamentais ou metadados. Os dados fundamentais para ativos financeiros vêm em muitas formas, como ações corporativas, declarações de lucros, arquivamentos na SEC, etc. Assim, a natureza sem esquema dos bancos de dados NoSQL é bem adequada. No entanto, os bancos de dados NoSQL não são bem projetados para séries temporais, como dados de preços de alta resolução e, portanto, não os consideraremos mais neste artigo.


Sistemas de gerenciamento de banco de dados relacional.


Um sistema de gerenciamento de banco de dados relacional (RDBMS) utiliza o modelo relacional para armazenar dados. Esses bancos de dados são particularmente adequados aos dados financeiros porque diferentes "objetos" (como trocas, fontes de dados, preços) podem ser separados em tabelas com relacionamentos definidos entre eles.


O RDBMS faz uso da Linguagem de Consulta Estruturada (SQL) para realizar consultas de dados complexas em dados financeiros. Exemplos de RDBMS incluem Oracle, MySQL, SQLServer e PostgreSQL.


As principais vantagens do RDBMS são sua simplicidade de instalação, independência de plataforma, facilidade de consulta, facilidade de integração com os principais softwares de backtest e recursos de alto desempenho em larga escala (embora alguns argumentem que este último não é o caso!). Suas desvantagens costumam ser devidas à complexidade da customização e às dificuldades de alcançar o desempenho, sem o conhecimento subjacente de como os dados do RDBMS são armazenados. Além disso, eles possuem esquemas semi-rígidos e, portanto, os dados geralmente precisam ser modificados para se adequarem a esses projetos. Isso é diferente dos armazenamentos de dados NoSQL, em que não há esquema.


Para todos os artigos sobre implementação de precificação histórica futura no QuantStart, faremos uso do MySQL RDBMS. É livre, de código aberto, multiplataforma, altamente robusto e seu comportamento em escala é bem documentado, o que o torna uma escolha sensata para o trabalho quant.


Como os dados históricos são estruturados?


Existe um corpo significativo de teorias e pesquisas acadêmicas realizadas no campo da ciência da computação para o design ideal para armazenamentos de dados. No entanto, não vamos entrar em muitos detalhes, pois é fácil se perder em minúcias! Em vez disso, apresentarei um padrão comum para a construção de um mestre de segurança de ações, que você pode modificar conforme achar adequado para seus próprios aplicativos.


A primeira tarefa é definir nossas entidades, que são elementos dos dados financeiros que serão mapeados para as tabelas no banco de dados. Para um banco de dados mestre de ações, prevejo as seguintes entidades:


Trocas - Qual é a fonte original final dos dados? Fornecedor - De onde é obtido um determinado ponto de dados? Instrumento / Ticker - O ticker / símbolo para o patrimônio ou índice, juntamente com informações corporativas da empresa ou fundo subjacente. Preço - O preço real de um determinado título em um determinado dia. Ações corporativas - A lista de todos os desdobramentos ou ajustes de dividendos (isso pode levar a uma ou mais tabelas), necessários para ajustar os dados de precificação. Feriados Nacionais - Para evitar a classificação incorreta de feriados comerciais como erros de dados perdidos, pode ser útil armazenar feriados nacionais e referências cruzadas.


Existem problemas significativos no que diz respeito ao armazenamento de tickers canônicos. Eu posso atestar isso com experiência em primeira mão em um fundo de hedge lidando com esse problema exato! Diferentes fornecedores usam diferentes métodos para resolver tickers e, assim, combinar várias fontes de precisão. Além disso, as empresas tornam-se falidas, estão expostas a atividades de fusões e aquisições (ou seja, adquirem e mudam nomes / símbolos) e podem ter múltiplas classes de ações negociadas publicamente. Muitos de vocês não terão que se preocupar com isso, porque seu universo de tickers estará limitado aos constituintes maiores do índice (como o S & P500 ou o FTSE350).


Como os dados são avaliados quanto à precisão?


Dados históricos de preços de fornecedores são propensos a muitas formas de erro:


Ações Corporativas - Tratamento incorreto de desdobramentos e ajustes de dividendos. É preciso ter absoluta certeza de que as fórmulas foram implementadas corretamente. Picos - Pontos de preços que excedem em muito determinados níveis históricos de volatilidade. É preciso ter cuidado aqui, pois esses picos ocorrem - veja o May Flash Crash para um exemplo assustador. Os picos também podem ser causados ​​por não levar em conta os desdobramentos quando eles ocorrem. Os scripts de filtro de pico são usados ​​para notificar os operadores sobre essas situações. Agregação do OHLC - Dados OHLC livres, como do Yahoo / Google, são particularmente propensos a situações de 'agregação de tick ruim', onde pequenas trocas processam pequenos negócios bem acima dos preços de troca 'principais' do dia, levando a máximas / mínimos inflacionados excessivamente uma vez agregado. Isso é menos um "erro" como tal, mas é mais um problema para ser cauteloso. Dados em falta - Os dados em falta podem ser causados ​​por falta de negociações num período de tempo específico (comum em dados de resolução de segundos / minutos de small-caps illuid), por feriados ou simplesmente por um erro no sistema de troca. Os dados em falta podem ser preenchidos (isto é, preenchidos com o valor anterior), interpolados (linearmente ou de outro modo) ou ignorados, dependendo do sistema de negociação.


Muitos desses erros dependem de julgamento manual para decidir como proceder. É possível automatizar a notificação de tais erros, mas é muito mais difícil automatizar sua solução. Por exemplo, é preciso escolher o limite para ser informado sobre picos - quantos desvios padrão usar e durante o período de lookback? Um stdev muito alto perderá alguns picos, mas muito baixo e muitos noticiários incomuns levarão a falsos positivos. Todas essas questões exigem um julgamento avançado do trader de quantificação.


Também é necessário decidir como corrigir erros. Os erros devem ser corrigidos assim que forem conhecidos e, em caso afirmativo, deve ser realizada uma trilha de auditoria? Isso exigirá uma tabela extra no banco de dados. Isso nos leva ao tópico de back-filling, que é uma questão particularmente insidiosa para o backtesting. Trata-se de correção automática de dados ruins a montante. Se o fornecedor de dados corrigir um erro histórico, mas uma estratégia de negociação com backtested estiver em produção com base em pesquisas de dados ruins anteriores, é necessário tomar decisões com relação à eficácia da estratégia. Isso pode ser um pouco mitigado por estar plenamente ciente de suas métricas de desempenho da estratégia (em particular, a variação em suas características de ganhos / perdas para cada negociação). Estratégias devem ser escolhidas ou projetadas de tal forma que um único ponto de dados não possa distorcer o desempenho da estratégia em grande medida.


Como esses processos são automatizados?


O benefício de escrever scripts de software para realizar o download, armazenamento e limpeza dos dados é que os scripts podem ser automatizados por meio de ferramentas fornecidas pelo sistema operacional. Em sistemas baseados em UNIX (como Mac OSX ou Linux), pode-se fazer uso do crontab, que é um processo em execução contínua que permite que scripts específicos sejam executados em horários definidos ou em períodos regulares. Existe um processo equivalente no MS Windows conhecido como o Agendador de Tarefas.


Um processo de produção, por exemplo, pode automatizar o download de todos os preços do final do dia do S & P500 assim que forem publicados por meio de um fornecedor de dados. Em seguida, executará automaticamente os scripts de filtragem de dados e spike em falta, alertando o profissional por email, SMS ou outra forma de notificação. Neste ponto, todas as ferramentas de backtesting terão automaticamente acesso a dados recentes, sem que o operador tenha que levantar um dedo! Dependendo se o seu sistema de negociação está localizado em um desktop ou em um servidor remoto, você pode escolher, no entanto, ter um processo semi-automatizado ou totalmente automatizado para essas tarefas.


Como os dados são fornecidos para software externo?


Uma vez que os dados são atualizados automaticamente e residindo no RDBMS, é necessário inseri-los no software de backtesting. Esse processo será altamente dependente de como o seu banco de dados está instalado e se o seu sistema de negociação é local (por exemplo, em um computador desktop) ou remoto (como em um servidor Exchange co-localizado).


Uma das considerações mais importantes é minimizar a entrada / saída excessiva (I / O), pois isso pode ser extremamente caro, tanto em termos de tempo quanto de dinheiro, assumindo conexões remotas onde a largura de banda é cara. A melhor maneira de abordar esse problema é mover somente os dados por uma conexão de rede que você precisa (via consulta seletiva) ou exportar e compactar os dados.


Muitos RDBMS suportam a tecnologia de replicação, que permite que um banco de dados seja clonado em outro sistema remoto, geralmente com um grau de latência. Dependendo da sua configuração e quantidade de dados, isso pode ser apenas da ordem de minutos ou segundos. Uma abordagem simples é replicar um banco de dados remoto em uma área de trabalho local. No entanto, esteja avisado que os problemas de sincronização são comuns e consomem muito tempo para serem corrigidos!


Tentarei discutir algumas situações de exemplo abaixo, mas há muitas maneiras de abordar esse problema e elas serão altamente específicas para sua configuração individual:


Se você estiver usando o MySQL, então você pode fazer uso de uma linguagem de script de código aberto, como o Python (através da biblioteca MySQLdb ou SQLAlchemy ORM) para se conectar ao banco de dados e executar consultas sobre ele.


Bibliotecas de análise de dados mais recentes, como pandas, permitem acesso direto ao MySQL (veja este tópico para um exemplo).


Você também pode usar seu idioma / ambiente favorito (C ++, C #, Matlab) e um link ODBC para se conectar a uma instância do MySQL.


MS SQLServer.


O SQLServer foi projetado para ser facilmente conectado a linguagens MS. NET, como C # e Visual Basic, por meio do LINQ ORM. Você também pode se conectar ao SQLServer com Python, via pyODBC.


Existem claramente muitas outras combinações de armazenamento de dados e ambiente de backtesting. No entanto, vou deixar a discussão dessas configurações para artigos posteriores!


Próximos passos.


Em artigos futuros, vamos discutir os detalhes técnicos de implementação para mestres de valores mobiliários. Em particular, vamos instalar o MySQL, configurá-lo para dados de preços e obter dados EOD do Yahoo / Google finance e explorá-los através da biblioteca de análise de dados do pandas.


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.


Uma abordagem de ponta para seleção e negociação de ações.


Filosofia.


Sistema de Negociação de Ações.


O Equity Trading System (ETS) aplica uma abordagem top-down para picking de estoque de baixo para cima. O ETS utiliza uma variedade de métricas quantitativas para classificar os estoques individuais diariamente. Ao quantificar e combinar vários fatores de retorno, o ETS nos permite identificar ações com características vencedoras - com o objetivo de fornecer aos nossos clientes resultados de desempenho favoráveis.


Metodologia.


Nosso modelo de classificação de patrimônio usa uma combinação indevida de modelagem quantitativa e macro-análise fundamental e top-down. Baseia-se em anos de pesquisa acadêmica, bem como em nossa própria experiência interna e externa.


A parte quantitativa do modelo emprega fatores que provaram ser valiosos na previsão de retornos excedentes futuros. Esses fatores de retorno, que vão desde razões de avaliação a medidas de sentimento, ajudam a gerar alfa para nossos clientes. A análise quantitativa refere-se à análise financeira ou de negócios que visa compreender ou prever comportamentos ou eventos através do uso de medições e cálculos matemáticos, modelagem estatística e pesquisa.


Para calcular a pontuação geral do ETS, os estoques são classificados primeiro de acordo com cada fator de retorno individual. A pontuação percentual resultante varia de 0 a 100%, com 100% sendo o estoque mais bem classificado para essa pontuação específica.


Estas classificações individuais são então combinadas usando um modelo de ponderação dinâmica para obter a pontuação final do ETS, que também é expressa como um percentil.


Por fim, alavancamos nosso relacionamento com empresas de pesquisa terceirizadas com experiência em modelagem quantitativa, análise macroeconômica de cima para baixo para fornecer uma sobreposição de setor e estilo, que distorce a classificação geral de acordo com as exibições de macro atuais.


Em termos gerais, a análise quantitativa pode ser melhor compreendida como simplesmente uma maneira de medir ou avaliar as coisas através do exame dos valores matemáticos das variáveis. A principal vantagem da análise quantitativa é que ela envolve o estudo de valores precisos e definitivos que podem ser facilmente comparados uns com os outros, como as receitas ou ganhos anuais de uma empresa.


A cobertura é fornecida para as ações negociadas nas principais bolsas de valores dos países do MSCI World Developed Markets Index, desde que tenham informações suficientes para permitir um cálculo preciso da Pontuação do ETS.


Combina uma ampla variedade de anomalias do mercado de ações usando um algoritmo sofisticado para gerar uma única métrica que pode ser usada para separar futuros vencedores de perdedores. Aproveita as terceiras partes, bem como nossas próprias visualizações macro para adicionar uma sobreposição discricionária no modelo quantitativo. e produz pesquisas inovadoras no campo das estratégias de negociação de ações.


Desenvolvemos quatro disciplinas distintas baseadas em capital. Gerenciamos duas disciplinas de grande capitalização, uma de pequena / média capitalização e uma de capitalização. As disciplinas de equidade Large Cap Core e Small / Mid Cap normalmente deterão três ações por setor econômico. Conseqüentemente, o número total de ações mantidas nessas disciplinas será igual a 30. As disciplinas Large Cap Value e All Cap não forçarão uma ponderação igual dos setores econômicos do mercado nem limitarão o número total de participações acionárias. As quatro disciplinas do ETS são as seguintes:


Núcleo de Grandes Tampas Disciplinado ETS Disciplinado Grande Tampão Valor ETS Disciplinado Pequeno / Médio Tampão ETS Disciplinado Todos os Tampões ETS.


O desempenho passado não é garantia de resultados futuros.


3 lucrativas estratégias de negociação Ichimoku.


Neste artigo, mostro três estratégias usando o sistema de negociação Ichimoku. Na verdade, como o sistema é tão versátil, vejo três estratégias de negociação Ichimoku diferentes. Mostro então os resultados de como essas estratégias de negociação atuam no par EUR / USD forex.


Eu realizei estas análises para descobrir o quão bom é o sistema Ichimoku na identificação de tendências. As estratégias de negociação são simples e não exigem julgamento ou interpretação indevida.


Ichimoku Kinko Hyo.


Ichimoku é um sistema comercial que se originou no Japão. Desenvolvido pelo jornalista Goichi Hosoda, ele é projetado para ajudar os comerciantes a identificar e negociar com a tendência dominante. As linhas parecem bastante complicadas no gráfico, mas podemos usá-las facilmente como parte de uma estratégia de negociação automatizada.


Conversão e Linha de Base.


A linha vermelha é a Linha de Conversão (tenkan sen) e é a mais rápida a reagir. A linha azul é a Linha de Base (kijun sen). A linha de base é mais lenta, e nós a usamos para confirmação.


Ichimoku Cloud.


A coisa mais incomum sobre o Ichimoku é a nuvem. A nuvem é uma área de movimento lento no gráfico que ajuda a identificar a tendência e fornece suporte e resistência.


A nuvem é composta de duas linhas: Senkou A e Senkou B. Senkou A é a mais rápida e faz a borda interna da nuvem. Senkou B é mais lento e forma a borda externa.


Chikou Span.


O Chikou Span é a linha verde. É feito plotando o preço de fechamento 26 períodos atrás.


As estratégias de negociação Ichimoku.


Todas as três estratégias de negociação são longas ou curtas. Cada estratégia de negociação começa com um capital de US $ 100.000. As regras das estratégias são:


Estratégia 1: Negocie por muito tempo quando a Linha de Conversão cruzar acima da Linha de Base. Negoceie quando a linha de conversão cruzar abaixo da linha base. Estratégia 2: Negociação Longa quando o preço de fechamento ultrapassa a linha de base. Trade Short quando o preço de fechamento cruza abaixo da linha de base. Estratégia 3: Negociação Longa quando o preço de fechamento ultrapassa a linha Senkou Span B (linha de nuvem lenta). Trade Short quando o preço de fechamento cruza abaixo da linha Senkou Span B.


A análise nesta página foi realizada usando um modelo Tradinformed Backtest. Estas são uma excelente maneira para os comerciantes testarem suas estratégias. Os modelos são criados no Excel e permitem que você teste diferentes mercados, tente diferentes indicadores e condições de entrada. Para ver os modelos mais recentes, confira a Loja Tradinformed.


O Ichimoku é um indicador fascinante. Se você quiser saber mais sobre isso, assim como muitos outros indicadores, confira a página sobre 21 Indicadores Técnicos.


Os dados utilizados para o backtest são o par EUR / USD forex no período de tempo diário. Eu testei os dados de maio de 1992 a dezembro de 2014.


I. Estratégia de Negociação.


Desenvolvedor: Larry Connors (Estratégia de Negociação do RSI de 2 Períodos), Welles Wilder (O Oscilador de Momento do RSI). Fonte: (i) Connors, L., Alvarez, C. (2009). Estratégias de Negociação de Curto Prazo que Funcionam. Jersey City, NJ: Mercados de Negociação; (ii) Wilder, J. W. (1978). Novos Conceitos em Sistemas de Negociação Técnica. Greensboro: pesquisa de tendência. Conceito: O sistema de negociação de ações com base no RSI de 2 períodos (Índice de Força Relativa). Objetivo de pesquisa: Verificação de desempenho da estratégia de negociação simples que compra recuos em um mercado em alta. Especificação: Tabela 1. Resultados: Figura 1-2. Filtro de negociação: O RSI de 2 períodos fecha abaixo de RSI_Threshold (Valor padrão: RSI_Threshold = 5). Carteira: Cinco mercados de ações futuros (DJ, MD, NK, NQ, SP). Dados: 36 anos desde 1980. Plataforma de Teste: MATLAB®.


II. Teste de sensibilidade.


Todos os gráficos em 3-D são seguidos por gráficos de contorno 2D para Fator de Lucro, Índice de Desempenho da Úlcera, Índice de Desempenho da Úlcera, CAGR, Desembolso Máximo, Percentual de Negociações com Lucros Lucros e Média. Vitória / Média Índice de Perda. A imagem final mostra a sensibilidade da curva de capital.


Variáveis ​​testadas: RSI_Threshold & amp; Exit_Look_Back (Definições: Tabela 1):


Sistemas de Ações.


Software e serviços voltados para análise, negociação e execução de títulos patrimoniais.


MX.3 para negociação.


Imagine Trading System.


Análise de seleção de fornecedores de relatórios de transações e transações.


Incubadora de estratégia de negociação de backtesting algorítmico em CQLite.


Solução de conformidade e vigilância Panopticon.


FlexTrader.


Easy Trade Smart Path.


Hennigan Consulting - Parceiro de Implementação LatentZero.


JHC FIGARO.


FIX Engine, Sistemas de Negociação, Gerenciamento de Risco,


Insight entregue diariamente na sua caixa de entrada.


Nosso boletim informativo líder de mercado é uma fonte inestimável de notícias, insights e análises da indústria de tecnologia financeira.


14 de fevereiro de 2014.


1 de fevereiro de 2016.


15 de dezembro de 2016.


11 de janeiro de 2016.


14 de fevereiro de 2014.


1 de fevereiro de 2016.


15 de dezembro de 2016.


11 de janeiro de 2016.


Insight entregue diariamente na sua caixa de entrada.


Nosso boletim informativo líder de mercado é uma fonte inestimável de notícias, insights e análises da indústria de tecnologia financeira.


Insight entregue diariamente na sua caixa de entrada.


Nosso boletim informativo líder de mercado é uma fonte inestimável de notícias, insights e análises da indústria de tecnologia financeira.


14 de fevereiro de 2014.


1 de fevereiro de 2016.


15 de dezembro de 2016.


11 de janeiro de 2016.


Conectando compradores e vendedores de tecnologia financeira globalmente.


Parte do Contentive Group Ltd.


Conectando compradores e vendedores de tecnologia financeira globalmente.


Parte do Contentive Group Ltd.


Conectando compradores e vendedores de tecnologia financeira globalmente.


Parte do Contentive Group Ltd.


Anúncios da empresa.


O bobsguide conecta compradores e vendedores de tecnologia financeira globalmente.


A bobsguide atrai mais de 70.000 compradores e vendedores de fintech todos os meses. Eles vêm até nós para obter as informações mais recentes de nossa plataforma, encontrar os melhores fornecedores por meio de nosso diretório de produtos de fintech, encontrar novas funções de trabalho ou descobrir talentos digitais para seus negócios por meio de nossas listas de trabalho, aprender sobre eventos importantes ao vivo e digitais e para baixar recursos úteis, como white papers e estudos de caso.

Комментарии

Популярные сообщения