Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 1112

 

Para o ML, os dados são muito mais importantes do que um bom modelo.

Por isso, pode vir a ser útil, vou partilhar:

Coleta de ticks do MetaTrader 5 diretamente para o banco de dados MySQL via libmysql em tempo real

MT5_ticks_to_MySQL

Você pode obter a história em si aqui:

http://ticks.alpari.org

 
itslek:

Para o ML, os dados são muito mais importantes do que um bom modelo.

Por isso, pode vir a ser útil, vou partilhar:

Coleta de ticks do MetaTrader 5 diretamente para o banco de dados MySQL via libmysql em tempo real

MT5_ticks_to_MySQL

A história em si pode ser encontrada aqui:

http://ticks.alpari.org

Em um arquivo CSV normal a tarefa é resolvida com o mesmo sucesso e velocidade. E, além disso, não tens de te preocupar com nada.

 
Yuriy Asaulenko:

A tarefa é resolvida num ficheiro CSV normal com a mesma rapidez e com o mesmo sucesso. E, além disso, não tens de te preocupar com nada.

eh, não entendo e comento de imediato)

Concordo, é mais conveniente carregar o histórico para o CSV. Mas para trabalhar online com modelos já feitos...

 
itslek:

eh, não entendo e comento de imediato)

Concordo, é mais conveniente carregar o histórico para o CSV. Mas para trabalhar online com modelos prontos...

Online tantas carraças não são necessárias. E eles vão caber na memória.

E não online, não é preciso muita velocidade para exportar. Você importa do CSV para o banco de dados manualmente.

 
Vizard_:

+1

Concordo que os dados são mais importantes do que o modelo, mas o método de construção também é importante. Neste caso considero-o 50/50.

É importante que o modelo dê mais de 50% de modelos generalizados em repetidas otimizações. Ou seja, 5 ou mais modelos em 10 otimizações devem ser generalizados a um nível suficiente. Porque é que é assim? Porque ao selecionar entre 10 modelos, a probabilidade de selecionar o modelo que está trabalhando é maior. De que serve o algoritmo se ele produz apenas 2 modelos generalizados em 10 otimizações? A probabilidade de o Expert Advisor escolher o modelo de trabalho é muito baixa e, portanto, este algoritmo também é de pouca utilidade.

É importante que os dados sejam a causa da função alvo, pelo menos 20 por cento ou mais. Se houver um motivo nos dados de entrada, a responsabilidade de encontrá-lo está no algoritmo de otimização.


Eu ainda estou interessado em verificar meus resultados em outros algoritmos e entender o que é o sucesso. A disponibilidade de dados ou otimizador Reshetova, que é tudo odiado aqui, mas para isso será necessário testar na vida real, e levando em conta o fato de que as pessoas aqui miseravelmente. ALFÂNDEGA........

Se mais alguém está a fazer esta pergunta, acho que posso responder-lhe como: Eu preparo os dados. Você treina sua IA, após o treinamento nós testamos o modelo nos feedbacks (de preferência no mundo real), se a EA funcionar e estivermos convencidos que o modelo funciona, significa que seu algoritmo de otimização funciona (eu não preciso dele) e, portanto, devemos nos concentrar em encontrar dados de entrada. Se eu não conseguir arranjar um modelo funcional com os meus dados, então preciso de afinar o algoritmo. Acho que os principiantes se interessarão por isso e, entretanto, eu também me certificarei do meu sucesso. Os dados ou a disponibilidade de um poderoso otimizador Reshetov.

So.... quem aceita este desafio?????

 
Mihail Marchukajtes:

Concordo que os dados são mais importantes do que o modelo, mas o método de construção também é importante. Neste caso considero-o 50/50.

É importante que o modelo dê mais de 50% de modelos generalizados em repetidas otimizações. Ou seja, 5 ou mais modelos em 10 otimizações devem ser generalizados a um nível suficiente. Porque é que é assim? Porque ao selecionar entre 10 modelos, a probabilidade de selecionar o modelo que está trabalhando é maior. De que serve o algoritmo se ele produz apenas 2 modelos generalizados em 10 otimizações? A probabilidade de o Expert Advisor escolher o modelo de trabalho é muito baixa e, portanto, este algoritmo também é de pouca utilidade.

É importante que os dados sejam a causa da função alvo, pelo menos 20 por cento ou mais. Se houver um motivo nos dados de entrada, a responsabilidade de encontrá-lo está no algoritmo de otimização.


Eu ainda estou interessado em verificar meus resultados em outros algoritmos e entender o que é sucesso. A disponibilidade de dados ou otimizador Reshetova, que é tudo odiado aqui, mas para isso será necessário testar na vida real, e levando em conta o fato de que as pessoas aqui miseravelmente. ALFÂNDEGA........

Se mais alguém está a fazer esta pergunta, acho que posso responder-lhe como: Eu preparo os dados. Você treina sua IA, após o treinamento nós testamos o modelo nos feedbacks (de preferência no mundo real), se a EA funcionar e estivermos convencidos que o modelo funciona, significa que seu algoritmo de otimização funciona (eu não preciso dele) e, portanto, devemos nos concentrar em encontrar dados de entrada. Se eu não conseguir arranjar um modelo funcional com os meus dados, então preciso de afinar o algoritmo. Acho que os principiantes se interessarão por isso e, entretanto, eu também me certificarei do meu sucesso. Os dados ou a disponibilidade de um poderoso otimizador Reshetov.

So.... quem aceita este desafio?????

Já tem metas nos dados? Que métrica?)

Se você reduzir o desafio a uma simples forma de competição de aprendizagem de máquina, você pode atrair não só traders)

 
itslek:

As etiquetas nos dados já estão definidas? Qual é a métrica?)

Se você reduzir a tarefa a uma simples forma de competição de aprendizagem de máquina, você pode atrair mais do que apenas comerciantes)

Sim, os dados do alvo já lá estarão. Estamos a falar de modelos de classificação. Aqui o problema é diferente, como podemos verificar estes modelos obtidos no seu sistema???? De preferência a sério...

 
Mihail Marchukajtes:

Sim, os dados do alvo já lá estarão. Estamos a falar dos modelos de classificação. O problema aqui é outro, como você pode verificar esses modelos obtidos em seus sistemas???? De preferência no verdadeiro...

Para começar, verifique pelo menos uma amostra atrasada. Suponha que você forneça os dados para 2012-2016. Teste de 2017. 2018 deixa-o para o teste final (para que não houvesse nenhum ajuste).

Espere com o real) não compartilhe a pele não matou o urso ;) primeiro você precisa fazer um modelo que possa ao menos passar a validação, e depois tente enrolar este elefante no produto. Estas são duas tarefas completamente diferentes.

 
Eu não sei o que fazer comele:

Para começar, pelo menos verifique uma amostra atrasada. Suponha que você forneça dados para 2012-2016. Teste de 2017. Você mantém 2018 para o teste final (para que não haja nenhum ajuste).

Esperar com o real) não dividir a pele não matar o urso ;)

Então como vou verificar o modelo? Se eu fizer a validação no MT tester. Depois de optimizarmos, poderemos carregar o modelo no MT4?

 
Mihail Marchukajtes:

Então, como verifico o modelo? Se eu o verificar no testador de MT. Após a optimização, poderemos carregar o modelo no MT4?

E o meu ponto é este. Primeiro, coloque o problema no vácuo. Com a sua métrica.


Se quiseres correr no testador com a rede de arrasto e todas as outras coisas boas:

forneça dados em .csv com targeting (entendo que você tem esta classificação binária). em seguida, treine o modelo e preveja targeting. o resultado é carregado como uma lista de respostas do modelo no mesmo testador e executado. Mas fazê-lo para cada modelo é outra variante de encaixe, é melhor pensar em métricas ou metas. E no testador, devemos correr apenas a última variante.

Para o tempo real é um incômodo separado e nem todos os modelos podem ser embrulhados em uma dll.