Wednesday 9 August 2017

Sistema De Comércio Lua


Programas de automação de comércio Forex Aviso de investimento de alto risco: a negociação de divisas e contratos para diferenças de margem traz um alto nível de risco e pode não ser adequado para todos os investidores. Existe a possibilidade de que você possa sustentar uma perda em excesso de seus fundos depositados e, portanto, você não deve especular com o capital que não pode perder. Antes de decidir trocar os produtos oferecidos pela FXCM, você deve considerar cuidadosamente seus objetivos, situação financeira, necessidades e nível de experiência. Você deve estar ciente de todos os riscos associados à negociação na margem. A FXCM fornece conselhos gerais que não levam em consideração seus objetivos, situação financeira ou necessidades. O conteúdo deste site não deve ser interpretado como um conselho pessoal. A FXCM recomenda que você procure o conselho de um consultor financeiro separado. Clique aqui para ler o aviso de risco total. A FXCM é uma negociante de câmbio mercantil e varejista da Futures Commission com a Commodity Futures Trading Commission e é membro da National Futures Association. NFA 0308179 Forex Capital Markets, LLC (FXCM LLC) é uma subsidiária operacional do grupo de empresas FXCM (coletivamente, o Grupo FXCM). Todas as referências neste site para FXCM se referem ao Grupo FXCM. Tenha em atenção que as informações contidas neste site destinam-se apenas a clientes de varejo, e certas representações aqui contidas podem não ser aplicáveis ​​aos Participantes de Contrato Elegíveis (ou seja, clientes institucionais), conforme definido na Lei de Câmbio de Mercadorias, seção 1 (a) (12). Direitos autorais copiam 2017 Forex Capital Markets. Todos os direitos reservados. 55 Water St. 50th Floor, Nova Iorque, NY 10041 USACreate Your Own Forex Indicators Você criou seu próprio indicador Agora você pode baixar nosso SDK Marketscope Indicore para depurar e testar sua estratégia. Marketscope Indicore Marketscope Indicore é ideal para as necessidades de API mais comuns, construídas especificamente para negociação algorítmica. É usado melhor para backtesting e otimização de estratégia quando você está construindo sua própria estratégia comercial. Estratégias de código aberto pré-construídas (15) e indicadores (53) Dados gratuitos em mais de 80 instrumentos em 40 meses de dados Uma gama completa de tipos de pedidos, incluindo pedidos de mercado, limite, parada e parada-limite Começando Já possui uma conta FXCM Uma conta FXCM, incluindo a conta de prática gratuita8212no balanço mínimo requerido Um IDE ou editor de texto que executa o Aprendizagem de Máquina LUA (ie SciTE) e Automated Trading The Big Short (Eu gosto) Pesquisando estratégias de negociação com backtests rentáveis ​​- UPDATE Eu tive alguns muito interessantes Conversas desde que ofereci o meu quadro de negociação intradía não público em troca de informações sobre estratégias rentáveis, razão pela qual eu quero ampliar indefinidamente esta chamada inicialmente limitada no tempo. Note que não estou à procura de ideias de estratégia. Eu tenho muitos desses eu mesmo. O desafio não consiste em chegar a uma idéia, mas em escolher o caminho certo e testá-lo até o final, quando você sabe que funciona ou não. O fator crítico aqui é o tempo. Então, o que eu essencialmente negocio é o tempo que investei no desenvolvimento de uma estrutura de negociação intradiária sólida e sólida contra o tempo que você investiu no desenvolvimento de uma estratégia de negociação rentável. Pode ser uma estratégia de estoque, ETF, futuro ou opção. Todas as discussões e informações trocadas serão mantidas confidenciais. Eu, claro, estou aberto para discutir apenas idéias, mas não espere que eu as teste para você e não me quebre se as implemento sem pedir sua aprovação. Convocação de propostas Procura de estratégias de negociação com backtests rentáveis ​​Até 15 de junho. Estou aceitando propostas de estratégias de negociação promissoras sobre ações, moedas e índices de estoque de commodities. A estratégia deve ser rentável em backtesting e tem uma proporção de sharpe anualizada de pelo menos 1,0. Em 1. de julho, as duas estratégias mais promissoras serão selecionadas e seus autores podem escolher uma das seguintes opções: 1) Obtenha uma cópia completa e gratuita do quadro de negociação aprimorado e não-público baseado em R que desenvolvi e usei Desde 2012 e que os autores podem usar para negociar suas estratégias com Interactive Brokers. (A versão pública simplificada pode ser baixada aqui) 2) Entre em um acordo de cooperação no qual eu comprometo-se a implementar sua estratégia em R e em papel, por um período máximo de três meses. Todos os negócios individuais serão compartilhados com os autores quando ocorram. Além disso, o código R que é específico da estratégia (e não o código da estrutura comercial) será entregue aos autores da estratégia. O que enviar: uma descrição escrita da estratégia, além de uma lista de trades mais os timeseries de retorno do backtest ou código Roctavepython executável que calcula diretamente os timeseries de retorno do backtest, juntamente com o conjunto de dados completo dos preços usados ​​no backtest. Envie para o meu e-mail disponível na seção Contato Atualização do quadro de negociação intraday puro da R Finalmente achei o tempo para fazer isso. Muito atrasado. A estrutura agora é executada com as versões mais recentes (unix) do IB TWSGW (versão 9493 e superior). Isso, por si só, exigiu uma reescrita parcial de várias funções do pacote IBrokers R, excelente, mas agora desactualizado, de Jeff Ryan. Além disso, a configuração padrão para negociação EURUSD foi atualizada de modo que agora é um pedaço de bolo para executar a estratégia dummy exemplo. Basta clonar o repo git para sua máquina local. GithubcensixINTRADAY-PartAB e siga o README. Algo sobre Hardware Eu ainda sou fã de possuir meu próprio metal. Claro, fazer as coisas com imagens de máquinas configuráveis ​​na nuvem é popular, porque você não precisa passar pelo aborrecimento de gerenciar seu próprio hardware, mas não é esse aborrecimento realmente apenas um problema para grandes organizações, onde muitos milhares de usuários devem ficar felizes em Custo mínimo. Assim, a nuvem não é apenas uma solução para um problema de pessoas que têm que gerenciar a escala, mas ao mesmo tempo tentam vender - naquela solução para o joe individual lá fora, que, enfrentá-lo, realmente não precisa disso. Enfim, como eu disse, sou fã de possuir meu próprio metal. O hardware barata fora da prateleira pode obter um longo caminho se você tomar o tempo para configurá-lo corretamente. Uma área de trabalho RAM de 16-64Gb com uma ou duas GPUs fará tudo o que você precisar. Parece que as estratégias de backtesting usam muito mais recursos de computação do que a negociação real ao vivo, e é por isso que atualmente você pode configurar e executar uma estratégia intradía de qualquer laptop decente com confiança, enquanto que para o backtesting e a pesquisa, você realmente gostaria que o monstro GPU CPU RAM Acima ou um pequeno e pequeno cluster de supercomputas, como descrevi recentemente aqui. Pure R Intraday trading framwork Download completo disponível Eu fiz INTRADAY-PartA. tar. gz e INTRADAY-PartB. tgz disponíveis para download. Censixdownloads. html Encontrando relacionamentos entre ativos que podem ser usados ​​para arbitragem estatística Em vez de se concentrar em prever a direção do preço e a volatilidade dos preços com os modelos não-lineares derivados dos métodos de aprendizagem automática, uma alternativa seria tentar descobrir relações de preços exploráveis ​​entre ativos da mesma classe E reagir (comércio) quando o erro de preços acontece, em outras palavras, fazer arbitragem estatística. Em certo sentido, isso é de alguma forma mais fácil do que tentar prever os preços, uma vez que o único que se faz é encontrar uma relação relativamente estável, linear ou não linear entre um grupo de pelo menos dois recursos e assumir que, a partir do momento de Sua detecção, essa relação continuará por algum tempo no futuro. Negociar sob este pressuposto é então muito um processo reativo que é desencadeado por movimentos de preços que divergem significativamente do relacionamento modelado. Parceria tradicional A negociação e a negociação de ativos em uma relação VECM (Vector Error Correction Model) são bons exemplos para statarb usando modelos lineares. Então, por que não usar uma rede neural simples de uma camada ou mesmo um RBM para descobrir uma relação de preço não-linear entre dois ativos não cointegrados e se esse processo de descoberta for bem-sucedido, troque-o de maneira semelhante a um par clássico. As coisas se tornam ainda mais interessantes quando grupos com mais do que apenas dois ativos são considerados. Este seria então o equivalente não-linear de um VECM. Variável de Seleção de Recursos vs. Profundidade Digamos que temos um alvo de previsão de timeseries univariáveis ​​que pode ser de regressão ou classificação de tipo, e nós precisamos decidir quais recursos de entrada selecionar. Mais concretamente, temos um grande universo de timeseries que podemos usar como insumos e gostaríamos de saber quantos devemos escolher (largura) e também o tempo atrás que queremos procurar por cada um (profundidade). Há um espaço bidimensional de escolhas, delimitado pelos seguintes quatro casos extremos, sob o pressuposto de que temos um total de séries N e podemos, no máximo, olhar para trás K timesteps: (1) escolher apenas uma série e lookback Um timestep, (2) escolher apenas uma série e lookback K timesteps, (3) escolher N série e lookback um timestep, (4) escolher N series e lookback K timesteps. A escolha ótima provavelmente não será daquelas, uma vez que (1) e (2) podem não conter informações suficientes e (3), e especialmente (4) não serão viáveis ​​devido ao processamento de sinais de conexão ou ao excesso de ruído aleatório. A maneira sugerida de se aproximar disso é começar pequena em (1), ver o desempenho que você obtém e, em seguida, aumentar o tamanho do espaço de entrada, tanto em profundidade quanto em profundidade, até que você tenha atingido um desempenho de previsão satisfatório ou até que você esgotou Seus recursos de computação e precisam abandonar toda a abordagem: (ou comprar uma nova (farm of) desktop (s) :) Usando Autoencoders Empilhados e Máquinas Boltzmann Restritas em R 12 de fevereiro de 2014 Autoencoderes Empilhados (SAs) e Máquinas Boltzmann Restritas ( RBMs) são modelos muito poderosos para a aprendizagem sem supervisão. Infelizmente, no momento da escrita, parece que não existem implementações R diretas disponíveis, o que é surpreendente, uma vez que ambos os tipos de modelos existem por um tempo e R possui implementações para muitos outros tipos de modelos de aprendizagem de máquinas. Como solução alternativa, as SAs poderiam ser implementadas usando um dos vários pacotes de rede neural de R bastante rápido (nnet, AMORE) e RBMs, bem, alguém deveria escrever uma boa implementação R para eles. Mas dado que o treinamento de ambos os tipos de modelo requer muitos recursos computacionais, também queremos uma implementação que possa usar GPUs. Então, no momento, a solução mais simples que parece ter é usar Theano. Ele pode usar GPUs e fornece implementações de autoencoders e RBMs empilhados (desativados). Além disso, o código PythonTheano para várias outras variantes de máquinas Boltzmann mais exóticas também está flutuando ao redor da rede. Podemos usar rPython para chamar essas funções Python de R, mas o desafio é o dado. Obter grandes conjuntos de dados de um lado a outro entre R e Python sem usar a serialização ascii que rPython implementa (muito lento) precisa ser resolvido. Uma implementação pelo menos igualmente potente de autoencoders que suporta o uso de GPU está disponível através da estrutura Torch7 (demo). No entanto, as funções Torch7 são chamadas de usar lua e chamá-las de dentro de R, em vez disso, exigirá algum trabalho no nível C. Em conclusão: use Theano (Python) ou Torch7 (lua) para modelos de treinamento com suporte de GPU e escreva os modelos treinados para o arquivo. Em R, importe o modelo treinado a partir do arquivo e use para predição. Atualização 25 de abril de 2014: A seguinte solução agradável Ligue para Python de R para Rcpp deve nos aproximar um pouco de usar Theano diretamente de R. What Frequencies to Trade. 13 de janeiro de 2014 Ao tentar encontrar padrões de mercado exploráveis ​​que se poderia negociar como comerciante de varejo, uma das primeiras questões é: quais frequências de negociação para olhar Mensal Semanal Diariamente ou intradía em qualquer lugar entre 5 segundos a 1 hora Com tempo limitado disponível para Realizando pesquisas em todos esses prazos, isso se torna uma questão importante a ser respondida. Eu e outros observamos que parece haver uma relação simples entre a frequência comercial e a quantidade de esforço necessária para encontrar uma estratégia lucrativa que seja puramente quantitativa e tenha um risco aceitável. Em resumo: quanto menor (mais lento) a frequência em que deseja trocar, mais inteligente será sua estratégia lucrativa. Tradefreqvssmartness Como exemplo, pode-se olhar para o fim (muito) de alta freqüência do espectro, onde as estratégias de mercado baseadas em matemática realmente muito simples podem ser muito lucrativas, se você conseguir ficar perto o suficiente para o mercado. Fazendo um grande salto no domínio da frequência diária, está se tornando muito mais difícil encontrar estratégias quantitativas que são lucrativas enquanto ainda estão baseadas em matemática bastante simples. Negociar semanalmente e mensalmente, usando apenas métodos quantitativos ou indicadores técnicos apenas é uma receita muito boa para o desastre. Então, assumindo por um momento que essa relação é realmente verdadeira e considerando que podemos e queremos usar técnicas de aprendizado de máquina sofisticadas em nossas estratégias de negociação, poderemos começar com uma janela de freqüência semanal e trabalhar em direção a freqüências mais altas. O comércio semanal não precisa ser automatizado e pode ser feito a partir de qualquer interface de corretagem baseada na web. Podemos desenvolver uma bolsa de estratégias, usando dados históricos publicamente disponíveis em combinação com nosso algoritmo de aprendizagem favorito para encontrar padrões de mercado negociáveis ​​e, em seguida, executar a estratégia manualmente. Nesta escala, todo o esforço deve ser encontrado e ajustar a estratégia quantitativa e muito pouco pensamento deve ser implementado na execução comercial. Esforço de automação comercial: 0. Esquerda de estratégia necessária: 100 O comércio diário deve ser automatizado, a menos que você possa realmente dedicar uma parcela fixa do seu dia para monitorar os mercados e executar negócios. Integrar algoritmos de aprendizagem de máquinas com negociação diária automatizada não é uma tarefa trivial, mas pode ser feito. Esforço de automação comercial: 20, inteligência de estratégia necessária: 80 Nos intervalos de tempo intradiários, variando de minutos e segundos a sub segundos, o esforço que você terá que assumir para automatizar seus negócios pode situar-se em qualquer lugar entre 20 e 90. Felizmente, o menor A escala de tempo torna-se mais burda sua estratégia pode ser, mas é estúpido, é claro, um conceito relativo aqui. Esforço de automação comercial: 80, inteligência de estratégia necessária: 20 quais recursos usar. Hand-crafted vs. aprendido 10 de dezembro de 2013 Em um ponto no projeto de um sistema de aprendizagem (máquina), você será inevitável se perguntar quais são os recursos para alimentar seu modelo. Existem pelo menos duas opções. O primeiro é usar recursos artesanais. Esta opção normalmente lhe dará bons resultados se os recursos estiverem bem projetados (é claro que é uma tautologia, pois você só os chamará bem projetados se lhe derem bons resultados). O design de recursos criados à mão requer conhecimento especializado sobre o campo ao qual o sistema de aprendizagem será aplicado, ou seja, classificação de áudio, reconhecimento de imagem ou no nosso processo comercial. O problema aqui é que você pode não possuir nenhum desses conhecimentos especializados (ainda assim) e será muito difícil chegar ou ter muito tempo ou provavelmente ambos. Portanto, a alternativa é aprender os recursos dos dados ou, em outras palavras, usar a aprendizagem sem supervisão para obtê-los. Um requisito aqui é que você realmente precisa de muitos dados. Muito mais do que você precisaria para recursos feitos à mão, mas, novamente, ele não precisa ser rotulado. O benefício no entanto é claro. Você realmente não precisa ser um especialista no campo específico para o qual você projeta o sistema, ou seja, comércio e finanças. Então, enquanto você ainda precisa descobrir qual subconjunto dos recursos aprendidos será o melhor para o seu sistema de aprendizagem, isso também é algo que você teria que fazer com os recursos criados à mão. Minha sugestão: tente projetar alguns recursos criados à mão por você mesmo. Se eles não realizam e você tem bons motivos para acreditar que é possível ter melhores resultados do que aqueles que você está recebendo, use métodos de aprendizagem sem supervisão para aprender recursos. Você pode até criar um sistema híbrido que use recursos projetados e aprendidos juntos. Por que eu uso ferramentas de código aberto para construção de aplicativos de negociação 19 de novembro de 2013 Quando comecei a procurar minha própria negociação automática, eu tinha três requisitos no conjunto de ferramentas que eu queria usar. 1) Eles devem custar o mínimo possível para começar, mesmo que isso significasse que eu tinha que fazer muita programação e personalizações eu mesmo (isso custaria tempo) 2) Deveria haver uma comunidade de pessoas de mentalidade semelhante lá fora Usando essas mesmas ferramentas para um propósito semelhante. 3) As ferramentas devem permitir-me ir tão profundamente nas entranhas do sistema quanto necessário, mesmo que, no início, meu objetivo fosse mais descobrir o básico. Eu não queria me encontrar em uma situação em que dois anos abaixo eu precisaria mudar para um conjunto diferente de ferramentas, só porque as que eu tinha começado não me permitiram fazer o que eu queria por causa de problemas com Fontes fechadas e licenciamento restritivo. Como resultado, cheguei a escolher R como o meu idioma de escolha para o desenvolvimento de algoritmos de negociação e comecei a usar os Interactive Brokers, pois eles fornecem uma API para interagir com seu sistema de corretagem. Embora existam muitas ferramentas de negociação agradáveis ​​que se conectam ao IB Trader Workstation e algumas podem ser usadas para negociação automatizada, nenhuma delas oferece o mesmo poder, flexibilidade e apoio comunitário que o projeto R possui. Além disso, R tem realmente um incrível repositório de pacotes de aprendizado de estatística e de aprendizado gratuitos e muito adavanced, algo que é essencial se você quiser criar algoritmos de negociação. Cópia de direitos autorais Censix 2013 - 2015

No comments:

Post a Comment