Tuesday, 6 February 2018

Aprendizagem de máquinas forex


Jon V.


BigData. Iniciantes. Negociação.


BigData. Iniciantes. Negociação.


Machine Beats Human: Usando Aprendizado de Máquinas em Forex.


A aprendizagem e o comércio de máquinas são um assunto muito interessante. Também é um assunto onde você pode gastar toneladas de tempo escrevendo código e lendo documentos e, em seguida, uma criança pode vencê-lo enquanto joga Mario Kart.


Nas postagens nexts, vamos falar sobre:


Otimize entradas e saídas. Isto e só isso pode fazer uma tonelada de diferença em seu rolo de banco. Calcule o tamanho da posição (no caso de você não gostar do critério de Kelly) Encontre a possível correlação entre diferentes pares (negociação em pares). Adoro a correlação EURUSD vs GBPJPY! Calcule suporte e amp; linhas de resistência.


Mas o que é a Aprendizagem de Máquinas?


Os algoritmos de aprendizagem de máquina são algoritmos em que uma máquina pode identificar padrões em seus dados. Yeap, é assim tão simples. Por exemplo, encontre todos os animais nesta foto e desenhe uma caixa ao redor deles. Além disso, nomeie esse animal. Louco, eu sei. Para negociar como você pode imaginar, é bastante semelhante:


Para que uma máquina "aprenda", você precisa ensinar o que é certo ou errado (aprendizado supervisionado) ou dar-lhe um grande conjunto de dados e deixá-lo ficar selvagem (sem supervisão). Para identificar objetos, isso é direto, e o que é negociar?


Eu olhei em volta para ver se há algum programa de aprendizado de máquina que pode identificar as linhas S / R, mas sem sucesso. Então eu decidi escrever o primeiro programa de aprendizagem de máquinas em python que identifica linhas de suporte e resistência em Python. Outro primeiro! Hooray!


Mas como um algoritmo pode identificar essas áreas? Hoooooow? Senhoras e colegas (e robôs), permitam-me que lhe apresente o MeanShift, um algoritmo sem supervisão que é usado principalmente para o reconhecimento de imagens e que é bastante trivial para configurar e executar (mas também muito lento).


A idéia é que este algoritmo me permita dividir meus dados (txs forex) em áreas e então eu posso usar as "bordas" como suporte e linhas de resistência. Ideia legal, mas isso funciona?


Analisamos cerca de 12 milhões de pontos de dados da EURUSD em 2017 e alguns meses de 2018. As linhas de resistência são colocadas automaticamente por um algoritmo de aprendizado de máquina.


O que é realmente legal (e assustador) é que o algoritmo praticamente o engana. NAILS é difícil. Isso fica realmente assustador quando vamos usar o algoritmo para identificar microestruturas e começar a curar.


O sistema é capaz de processar qualquer tipo de dados temporários (ações, forex, ouro, seja o que for) e renderá um gráfico interativo html (como o gráfico acima) com seus dados e a máquina gerada S / L. O código está aqui, então fique louco.


Agora vamos passar pelo código. Depois de ter seu conjunto de dados, você precisa lê-los e limpá-los. Prepare-se para alguns pandas de magia.


Nós deixamos cair os valores vazios (fins de semana) e depois reescrevemos os dados para candelas de 24 horas (ohcl). Isso torna muito mais fácil traçar. Os dados agrupados são os dados que inseriremos no algoritmo ml.


Em seguida, preparamos os dados que vamos usar no algo.


Na próxima publicação, vamos discutir como melhorar esse trabalho, discutir alguns resultados muito interessantes (o algoritmo pode realmente prever sobre o futuro?) E começar a usá-lo em nossa própria negociação. Se você quiser verificar o próximo artigo e ler mais sobre comércio e investimento usando algoritmos, inscreva-se no boletim informativo.


Próxima próxima: Machine Learning Gone Wild - Usando o código!


Se você tiver mais comentários, clique-me no jonromero ou inscreva-se no boletim informativo.


Legal outro. Este é um tutorial de engenharia sobre como construir uma plataforma algotrading para experimentação e FUN. Qualquer sugestão aqui não é um conselho financeiro. Se você perder qualquer (ou todos) o seu dinheiro porque seguiu quaisquer conselhos de negociação ou implantou este sistema na produção, não pode culpar este blog aleatório (e / ou eu). Aproveite a seu próprio risco.


Forex Mecânico.


Negociação no mercado FX usando estratégias mecânicas de negociação.


Aprendizado de máquinas no comércio de Forex: por que muitos acadêmicos estão fazendo tudo errado.


Construir estratégias de aprendizado de máquinas que pode obter resultados decentes em condições de mercado ao vivo sempre foi um desafio importante na negociação algorítmica. Apesar da grande quantidade de interesse e das incríveis recompensas em potencial, ainda não há publicações acadêmicas que possam mostrar uma boa aprendizagem de máquinas modelos que podem resolver com sucesso o problema de negociação no mercado real (no melhor de meus conhecimentos, publique um comentário se você tiver um e eu ficarei mais do que feliz em lê-lo). Embora muitos artigos publicados parecem mostrar resultados promissores, muitas vezes é o caso que esses documentos se enquadram em uma variedade de diferentes problemas de tendência estatística que tornam o sucesso do mercado real de suas estratégias de aprendizagem de máquinas altamente improváveis. Na publicação de hoje, vou falar sobre os problemas que vejo na pesquisa acadêmica relacionada com o aprendizado de máquinas no Forex e como acredito que essa pesquisa poderia ser melhorada para produzir informações muito mais úteis para as comunidades acadêmicas e comerciais.


A maioria das armadilhas no projeto de estratégia de aprendizado de máquinas ao fazer o comércio de Forex é inevitavelmente herdada do mundo de problemas de aprendizagem deterministas. Ao construir um algoritmo de aprendizagem de máquina para algo como o reconhecimento de face ou o reconhecimento de letras, existe um problema bem definido que não muda, o que geralmente é abordado através da construção de um modelo de aprendizado de máquina em um subconjunto dos dados (um conjunto de treinamento) e depois teste se O modelo foi capaz de resolver corretamente o problema usando o lembrete dos dados (um conjunto de testes). É por isso que você tem alguns conjuntos de dados famosos e bem estabelecidos que podem ser usados ​​para estabelecer a qualidade das técnicas de aprendizado de máquinas recentemente desenvolvidas. O ponto chave aqui, no entanto, é que os problemas abordados inicialmente pela aprendizagem por máquinas foram na sua maioria deterministas e independentes do tempo.


Ao se mudar para a negociação, aplicar esta mesma filosofia produz muitos problemas relacionados com o caráter parcialmente não-determinista do mercado e sua dependência temporal. O simples ato de tentar selecionar conjuntos de treinamento e teste introduz uma quantidade significativa de viés (um viés de seleção de dados) que cria um problema. Se a seleção for repetida para melhorar os resultados no conjunto de testes & # 8211; o que você deve assumir acontece em pelo menos alguns casos & # 8211; então o problema também adiciona uma grande quantidade de viés de mineração de dados. Toda a questão de fazer um único exercício de treinamento / validação também gera um problema relacionado à forma como esse algoritmo deve ser aplicado quando a negociação ao vivo. Por definição, a negociação ao vivo será diferente uma vez que a seleção de conjuntos de treinamento / teste precisa ser reaplicada a dados diferentes (como agora o conjunto de testes é dados verdadeiramente desconhecidos). O viés inerente à seleção inicial do período inicial na amostra / fora da amostra e a falta de regras testadas para negociação em dados desconhecidos tornam essas técnicas comuns falhar na negociação ao vivo. Se um algoritmo for treinado com dados 2000-2018 e foi validado por cruzamento com dados 2018-2018, não há motivos para acreditar que o mesmo sucesso acontecerá se for treinado em dados 2003-2018 e depois comercializado de 2018 a 2017, os conjuntos de dados são de natureza muito diferente.


O sucesso do algoritmo de medição também é um problema muito relevante aqui. Inevitavelmente, os algoritmos de aprendizado da máquina utilizados para negociação devem ser medidos pelo mérito por sua capacidade de gerar retornos positivos, mas algumas medidas medem o mérito de novas técnicas algorítmicas, tentando comparar suas habilidades para obter as previsões corretas. As previsões corretas não são, necessariamente, iguais às negociações lucrativas, como você pode facilmente ver ao criar classificadores binários. Se você tentar prever a próxima direção da vela, você ainda pode fazer uma perda se você estiver na maior parte direita em pequenas velas e errado em velas maiores. Na verdade, a maioria desses tipos de classificadores e # 8211; a maioria daqueles que não trabalham & # 8211; acabar por prever a direcionalidade com uma precisão acima de 50%, ainda não acima do nível necessário para superar as comissões que permitiriam negociação de opções binárias rentáveis.


Para construir estratégias que estão na maior parte livres dos problemas acima, sempre defendai uma metodologia em que o algoritmo de aprendizado da máquina é treinado antes da tomada de qualquer decisão de treinamento. Ao usar uma janela em movimento para treinar e nunca tomar mais de uma decisão sem reconquistar todo o algoritmo, podemos livrar-se do viés de seleção que é inerente à escolha de um único conjunto na amostra / fora da amostra. Desta forma, todo o teste é uma série de exercícios de treinamento / validação que acabam garantindo que o algoritmo de aprendizagem da máquina funcione mesmo em conjuntos de dados de treinamento tremendamente diferentes. Eu também defendo a medição do desempenho real de backtesting para medir o mérito de um algoritmo de aprendizado de máquina e, além disso, eu chegaria a dizer que nenhum algoritmo pode valer o seu sal sem ser comprovado em condições reais de fora da amostra . O desenvolvimento de algoritmos dessa maneira é muito mais difícil e não encontrei um único documento acadêmico que acompanhe esse tipo de abordagem (se perdi, sinto-me livre para postar um link para que eu possa incluir um comentário!).


Isso não significa que esta metodologia seja completamente livre de problemas, no entanto, ainda está sujeita aos problemas clássicos relevantes para todos os exercícios de construção de estratégia, incluindo viés de ajuste de curva e viés de mineração de dados. É por isso que também é importante usar uma grande quantidade de dados (eu uso mais de 25 anos para testar sistemas, sempre treinando depois de cada aprendizado aprendendo a decisão derivada) e realizar exames adequados de avaliação de viés de mineração de dados para determinar a confiança com que nós pode dizer que os resultados não provêm de chance aleatória. Meu amigo AlgoTraderJo & # 8211; que também é membro da minha comunidade comercial # 8211; Atualmente, está crescendo um tópico no ForexFactory seguindo esse mesmo tipo de filosofia para desenvolvimento de aprendizagem em máquina, enquanto trabalhamos em alguns novos algoritmos de aprendizado de máquinas para minha comunidade comercial. Você pode se referir ao seu tópico ou postagens no meu blog para vários exemplos de algoritmos de aprendizado de máquinas desenvolvidos dessa maneira.


Se você quiser saber mais sobre os nossos desenvolvimentos na aprendizagem de máquinas e como você também pode desenvolver suas próprias estratégias de aprendizagem de máquinas usando o framework F4, considere se juntar ao Asirikuy, um site cheio de vídeos educacionais, sistemas de negociação, desenvolvimento e um som, honesto e uma abordagem transparente para negociação automatizada.


5 Respostas para a "Aprendizagem de Máquinas em Forex Trading": por que muitos acadêmicos estão fazendo tudo errado e # 8221;


Excelente artigo, os problemas que você destaca são certamente válidos para a robustez do sistema!


Uma pergunta que tenho, é normal dizer uma EA para fazer muito bem em um certo par e fazer terrível em todos os outros?


Ou, se uma EA robusta faça bem em pelo menos vários pares, sem qualquer alteração nas configurações!


Obrigado, por seus grandes pensamentos.


Essa questão é interessante; o). Eu acredito que a questão é melhor formulada como # 8220; pode um sistema que sobrevive em apenas um par gerar retornos quando negociados ao vivo? & # 8221; A resposta é sim (tanto da teoria quanto da minha própria experiência). Ter retorna em apenas um par não significa que o sistema seja & # 8220; mau & # 8221; Isso simplesmente significa que ele explora uma ineficiência histórica que só está presente em um instrumento. Desde que você cuide de fontes de polarização (como viés de mineração de dados e viés de ajuste de curva), não há razão para isso não funcionar.


Agora, se você tem um sistema que funciona em vários símbolos, o viés de mineração de dados será exponencialmente menor para um sistema igual que só funciona em um símbolo e o viés de ajuste de curva também será menor devido ao uso de mais dados. Então eu diria que é melhor, mas definitivamente não é necessário.


Mas lembre-se, mire seus preconceitos estatísticos!


Estou tão feliz que você disse que não precisa lucrar com todos os pares! Também o ajuste de curva, como se conhece o limite de ajustes permitido antes de se ajustar?


Finalmente, fiz um teste muito simples usando o padrão de média móvel em MT4, para ver quais pares reagiriam mais amplamente às MAs. Eu testei 52 pares para ver quantos & # 8216; Moving Period & # 8217; entre (1-20) obteriam lucro, independentemente da redução. Eu me perguntei o que você faz dos resultados!


* Período de teste de 5 anos.


* Drawdown não medido.


* 52 pares testados.


* Configurações testadas (Períodos 1-20).


1 23 pares, não obteve lucro em nenhuma configuração de barra de 1-20.


2 6 pares, só conseguiram lucro em 1 configuração.


Apenas 3 pares, obteve lucro em 5 ou mais configurações diferentes.


Apenas 4 5 pares, obteve lucro em 10 ou mais configurações diferentes.


1 BTCUSD 19 Configurações de 20, obteve lucro.


Você precisa fazer uma distinção entre viés de ajuste de curva e viés de mineração de dados (ou, pelo menos, esses dois tipos diferentes de viés, no entanto, você pode querer chamá-los). Curvar-ajuste bias é um viés criado por encontrar uma ineficiência em um conjunto de dados, ele responde a pergunta: meu sistema está encontrando algo geral ou algo específico para os dados que estou usando ?. O viés de mineração de dados responde a pergunta: o meu sistema está encontrando uma verdadeira ineficiência histórica ou são os resultados apenas por causa do meu processo de mineração (ou seja, provenientes de chance aleatória)?


Ao aumentar os espaços de parâmetros e os graus de liberdade, você está aumentando o viés de mineração de dados (você é mais provável encontrar um sistema apenas por acaso, em vez de um sistema que negocia uma ineficiência histórica real). Você pode medir o viés de mineração de dados usando um teste como a verificação de realidade da White & # 8217; s. Fazer esse tipo de teste é fundamental para um projeto de estratégia confiável.


Leia mais sobre esta distinção entre os preconceitos aqui:


Leia também este artigo sobre o assunto:


Antes de abordar as complexidades do design do sistema de negociação e encontrar estratégias de negociação, recomendo fortemente obter uma sólida formação em estatísticas (os cursos de estatística de cours são um excelente início gratuito). As estatísticas lhe darão o poder de analisar seus próprios resultados e abordar metodicamente tais questões: o)


[& # 8230;] Aprendizagem de máquinas no comércio de Forex: por que muitos acadêmicos estão fazendo tudo errado [Forex mecânico] Construir estratégias de aprendizagem de máquinas que podem obter resultados decentes em condições de mercado ao vivo sempre foi um desafio importante na negociação algorítmica. Apesar da grande quantidade de interesse e das incríveis recompensas em potencial, ainda não há publicações acadêmicas que possam mostrar bons modelos de aprendizagem de máquinas que possam solucionar com sucesso o problema comercial no real m [& # 8230;]


Aprendizagem de máquinas nos meus padrões de negociação forex.


Бюджет $ 1000-2500 USD.


Freelancer Роботи Машинне навчання Aprendizagem de máquinas nos meus padrões de negociação forex.


Eu tenho uma maneira específica de negociar que usa retrações de fibonacci, extensões de fibonacci, suporte / resistência e ação de preço (castiçais). É muito difícil codificar um sistema que faz o que eu faço, já que é intuição.


Espero que possamos treinar uma máquina para analisar o meu estilo de negociação e aprender com isso lentamente. Se a negociação for feita no metatrader 4 ou em qualquer plataforma de negociação popular, isso está bem comigo. O resultado final deve ser ver uma máquina que eu treinei pode levar os negócios para mim.


Запропонуйте попрацювати над цим проектом зараз! Термін подання заявок закінчується за 5 дні (-в)


Вкажіть свій бюджет та часові рамки.


Опишіть свою пропозицію.


Отримайте плату за свою роботу.


Реєстрація та подання заявок у проекти є безкоштовними.


1 фрілансер у середньому готовий виконати цю роботу за $ 2941.


Інші роботи від цього роботодавця.


Схожі роботи.


Потрібно найняти фрілансера для роботи?


Це безкоштовно - зареєструватися, написати, що саме вам потрібно, і отримати безкоштовно цінові пропозиції за кілька секунд.


Допомога та підтримка.


Про нас.


Додатки.


Freelancer & reg; é uma marca registada da Freelancer Technology Pty Limited (ACN 142 189 759)


Direitos autorais e cópia; 2017 Freelancer Technology Pty Limited (ACN 142 189 759)


Aprendizado de máquinas para negociação.


Oferecido no Georgia Tech como CS 7646.


Programa Nanodegree.


Engenheiro de Aprendizagem de Máquinas.


Faça modelos preditivos.


Acelere sua carreira com a credencial que o acompanha rapidamente ao sucesso do trabalho.


Sobre este curso.


Este curso apresenta os alunos aos desafios do mundo real de implementar estratégias de negociação baseadas em aprendizado de máquinas, incluindo os passos algorítmicos da coleta de informações para pedidos de mercado. O foco é sobre como aplicar abordagens de aprendizado de máquina probabilística para decisões de negociação. Consideramos abordagens estatísticas como regressão linear, KNN e árvores de regressão e como aplicá-las a situações reais de negociação de ações.


Custo do curso.


Aprox. 4 meses.


Nível de habilidade.


Incluído no curso.


Rich Learning Content.


Ensinado por profissionais da indústria.


Comunidade de apoio ao aluno.


Junte-se ao caminho da grandeza.


Este curso gratuito é o seu primeiro passo para uma nova carreira com o Programa Nanodegree do Engenheiro de Aprendizado de Máquinas.


Curso gratuito.


Aprendizado de máquinas para negociação.


Melhore o seu conjunto de habilidades e aumente a sua hirabilidade através de uma aprendizagem inovadora e independente.


Programa Nanodegree.


Engenheiro de Aprendizagem de Máquinas.


Acelere sua carreira com a credencial que o acompanha rapidamente ao sucesso do trabalho.


Leads do curso.


Tucker Balch.


Arpan Chakraborty.


O que você aprenderá.


Este curso é composto por três mini-cursos:


Mini-curso 1: manipulação de dados financeiros no Python Mini-curso 2: Investimento computacional Mini-curso 3: Algoritmos de Aprendizado de Máquinas para Negociação.


Cada mini-curso consiste em cerca de 7 a 10 lições curtas. As tarefas e os projetos são intercalados.


Estudantes da OMS em queda de 2018: haverá dois testes - um meio de meio após mini-curso 2 e um exame final.


Pré-requisitos e requisitos.


Os estudantes devem ter fortes habilidades de codificação e alguma familiaridade com os mercados de ações. Nenhuma experiência financeira ou de aprendizado de máquina é assumida.


Observe que este curso atende estudantes que se concentram em ciência da computação, bem como estudantes de outras especialidades, como engenharia de sistemas industriais, gerenciamento ou matemática que tenham experiências diferentes. Todos os tipos de alunos são bem-vindos!


Os tópicos ML podem ser "revisar" para estudantes de CS, enquanto peças de finanças serão revisadas para estudantes de finanças. No entanto, mesmo se você tiver experiência nesses tópicos, você achará que os consideramos de uma maneira diferente da que você já viu antes, em particular com o objetivo de implementar para negociação.


A programação será principalmente em Python. Utilizaremos inúmeras bibliotecas numéricas como NumPy e Pandas.


Por que tomar este curso.


No final deste curso, você deve ser capaz de:


Compreender as estruturas de dados utilizadas para negociação algorítmica. Saiba como construir software para acessar dados de capital vivo, avaliá-lo e tomar decisões comerciais. Compreenda 3 algoritmos de aprendizagem de máquina populares e como aplicá-los a problemas comerciais. Compreenda como avaliar o desempenho de um algoritmo de aprendizagem de máquina para dados de séries temporais (dados de preço de estoque). Saiba como e por que as técnicas de mineração de dados (aprendizagem em máquina) falham. Construa um sistema de software comercializado que usa dados diários atuais.


Algumas limitações / restrições:


Usamos dados diários. Este não é um curso HFT, mas muitos dos conceitos aqui são relevantes. Nós não interagimos (negociamos) diretamente com o mercado, mas vamos gerar alocações de capital que você poderia negociar se quisesse.


O que eu ganho?


Vídeos de instrutor Aprenda fazendo exercícios Ensinados por profissionais da indústria.


Cursos relacionados.


Aprendizado de máquinas: Aprendizagem não supervisionada.


AI baseada no conhecimento: sistemas cognitivos.


Informática de saúde na nuvem.


Big Data Analytics em Saúde.


Implantando um cluster Hadoop.


Construção e Validação de Modelos.


Cursos populares.


Inteligência Artificial - Visão de Computador.


Search Engine Optimization (SEO)


Auto-dirigindo o engenheiro de automóveis - Advanced Deep Learning.


Programas em destaque.


Somente na Udacidade.


Programas.


O negócio.


"Nanodegree" é uma marca registrada da Udacity. &cópia de; 2018 & ndash; 2017 Udacity, Inc.


Udacity não é uma universidade credenciada e não conferimos graus.


Classe Central.


Ciência da Computação.


Humanidades.


Ciência dos dados.


Desenvolvimento pessoal.


Art & amp; Desenhar.


Engenharia.


Saúde & amp; Remédio.


Matemática.


Educação e Ensino.


Programação.


No MIT e Georgia Tech, os MOOCs estão aparecendo no campus.


Pela primeira vez, estudantes do campus podem ganhar crédito de um MOOC ".


através do relatório MOOC.


Lista maciça de provedores MOOC ao redor do mundo.


Onde encontrar MOOCs: o guia definitivo para provedores MOOC.


através do relatório MOOC.


Experiências Coursera com um único preço de assinatura para todo o catálogo.


Por US $ 49 / mês, os alunos podem obter acesso completo ao catálogo completo da Coursera & # x27; s.


através do relatório MOOC.


Registo.


Compartilhe este curso.


Udacidade: Aprendizado de máquinas para negociação.


Georgia Institute of Technology e Georgia Tech Online Mestrado em Ciência da Computação com Tucker Balch.


#### Ao final deste curso, você deve ser capaz de:


- Compreender as estruturas de dados utilizadas para negociação algorítmica.


- Saiba como construir software para acessar dados em tempo real, avaliá-lo e tomar decisões comerciais.


- Compreender 3 algoritmos de aprendizagem de máquinas populares e como aplicá-los a problemas comerciais.


- Compreender como avaliar o desempenho de um algoritmo de aprendizado de máquina para dados de séries temporais (dados de preço de estoque).


- Saiba como e por que as técnicas de mineração de dados (aprendizagem em máquina) falham.


- Construir um sistema de software de negociação de ações que use dados diários atuais.


- Usamos dados diários. Este não é um curso HFT, mas muitos dos conceitos aqui são relevantes.


- Não interagimos (comércio) diretamente com o mercado, mas vamos gerar alocações de capital que você poderia negociar se quisesse.


- Mini-curso 2: Investimento computacional.


- Mini-curso 3: Algoritmos de Aprendizado de Máquinas para Negociação.


Divulgação: Para suportar nosso site, a Class Central pode ser compensada por alguns provedores de cursos.


Aprenda a udacidade de marketing digital.


Ganhe experiência no mundo real ao executar campanhas ao vivo conforme você aprende com os melhores especialistas.


Torne-se um datacamp Data Scientist.


Aprenda Python & amp; R em seu próprio ritmo. Comece agora de graça!


FAQ Visualizar tudo.


13 comentários para Udacity's Machine Learning for Trading.


Classe Central.


Obtenha recomendações de cursos personalizados, acompanhe assuntos e cursos com lembretes e muito mais.

No comments:

Post a Comment