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

 
Mihail Marchukajtes:

Eu tenho um arquivo sujo de 7700 colunas onde levo 24 léguas, então não continue, mas olhe aqui. Aqui está o seu arquivo.

E aqui está o meu.

Qual é a diferença???? Não te vou manter em suspense. Na análise de componentes principais, quando cada coluna é seu próprio sistema de coordenadas, é importante que elas possam ser agrupadas para que pontos de diferentes colunas possam ser plotados no mesmo sistema de coordenadas. A interpretação é simples. Quanto mais vectores verticais e horizontais, mais frio ele é. O que você tem é uma mancha de uniforme.

Se você quiser comprimir informações, verifique primeiro se há autocorrelação e pode deixar com segurança apenas 1 entrada, mas a rede não vai funcionar, porque não há memória.

 
Rorschach:

Se você quiser comprimir as informações, verifique primeiro a autocorrelação, e você pode deixar com segurança apenas 1 entrada, apenas a rede não vai funcionar porque não há memória.

A memória não é a coisa mais importante para uma rede - são os atrasos que a fornecem - mas a qualidade da partição de classes (se estamos a falar de classificação) é muito importante. É necessário obter um conjunto de dados que não tenha inconsistências e que as classes sejam agrupadas. Tudo isso leva a uma separação qualitativa. Eu executei seu arquivo em Rattle (shell gráfica em P) há um método de vetores de referência e o resultado foi 65% de redundância. Ou seja, se o conjunto de dados for um G simples, então não haverá peixes nele. Mas estes métodos não requerem grandes conjuntos de dados. Talvez você esteja usando uma tal configuração de IA que usando todo o conjunto pode obter uma alta pontuação de aprendizagem, mas geralmente é um pouco rebuscada, nada mais.
 
Mihail Marchukajtes:

Para além das estimativas do modelo.

Os preditores indicam o número de colunas no arquivo

258 número total de vectores. Eu removi a classe 0 e deixei a classe 2 renomeada para zero, pois eles foram balanceados em número com a classe 1, 19,60 é erro quadrático, ou melhor, a diferença entre linear reto e quadrático deve tender para zero, 79,141 é generalização capacidade, quando você chega a 100 a diferença entre os erros diminui, 69,767 é espicificação. O gráfico de controle total é 75 com uma Generalizabilidade de 70. A resposta é NÃO SABER que temos 77 vetores do total da amostra onde o gráfico de controle tinha 17.

Na verdade, obtive piores resultados no treino, mas muito melhores na trama de controlo. Além disso, não era um local de teste como o seu, mas um local de controlo, aquele que a rede não tinha visto de todo. O teste é quando ele treina no treinamento para que funcione bem no teste, ou seja, potencialmente a rede vê a seção de teste durante o treinamento. O teste um não. Perguntas????

Adabust deu-me 79 em 79

 
Maxim Dmitrievsky:

Adabust deu-me 79 por 79

Podes trocar o meu modelo pelo OOS?
 
Mihail Marchukajtes:
Talvez você esteja usando uma configuração de IA que possa obter uma alta pontuação de aprendizagem usando o conjunto completo

É exactamente o que é. Deixe-me tentar explicar de outra forma. Suponha que temos um sistema clássico sobre Ma(100) e preço. Cruzar comprar, cruzar vender. Normalmente alimentamos o Ma e o preço à entrada e os sinais do sistema à saída. Isto resulta em economia de insumos, uma vez que a ma é calculada com antecedência e alimentada para a rede na forma pronta. Alternativamente, é possível alimentar a rede não com ma, mas com 100 lags de preço (para que a rede se calcule) sobre a entrada e os sinais do sistema sobre a saída. Nesta forma, as redes não podem ser alimentadas com menos de 100 desfasamentos de preço.

 
Rorschach:

É aqui. Deixe-me tentar explicar de outra forma. Digamos que há um sistema clássico sobre ma(100) e preço. Compra de cruzamento para cima, venda de cruzamento para baixo. Normalmente alimentamos o Ma e o preço à entrada e os sinais do sistema à saída. Isto resulta em economia de insumos, uma vez que a ma é calculada com antecedência e alimentada para a rede na forma pronta. Alternativamente, é possível alimentar a rede não com ma, mas com 100 lags de preço (para que a rede se calcule) sobre a entrada e os sinais do sistema sobre a saída. Nesta forma, a rede não pode ser alimentada com menos de 100 lags de preço.

Pensamentos primitivos e quanto mais cedo você se livrar deles, mais cedo você vai pular do poço dos seus delírios. Você está quebrando uma das principais regras de preparação de modelos. Lembrem-se que estamos aqui uma vez com Alexey Vyazemsky que foi ativo nos Jogos Olímpicos, então como sinal de gratidão eu podkalkal ele sobre os atrasos e o efeito que eu fiquei surpreso. Sou um praticante, e depois um teórico. Permita-me citar parte da minha correspondência na qual a essência do atraso é revelada.

Citação:

Ahem, ahem... engraçado. Bem, não te vou aborrecer. Tens sido bom para mim, por isso vou dizer-te. Eu sou um praticante e muitas vezes me deparo com vários fenômenos, que mais tarde tento explicar em teoria ou trabalhar em detalhes os efeitos que descobri. Mas a parte mais interessante é obter as respostas às minhas perguntas. Então, tínhamos uma pergunta. Como equipar o classificador com dados históricos em vez dos dados atuais ao treiná-lo. Ao construir um modelo preditivo baseado em regressão a ordem dos dados é muito importante, ou seja, se um arquivo de treinamento foi formado a partir do histórico, em nenhum caso eles devem ser trocados ou misturados. É a sequência de dados (indo em ordem estrita) que permite aos modelos preditivos ver todo o histórico da amostra de treinamento e como eu disse os primeiros dados na amostra de treinamento afetam os últimos dados devido ao pedido. Isso é do passado para o futuro e eles nunca devem ser confundidos. Lembre-se que Max tentou uma vez, mas o resultado foi decepcionante. Porque a mistura não é aplicável à regressão. A classificação é outra questão, quando o método de misturar aleatoriamente o conjunto de treinamento é necessário para evitar o treinamento excessivo. Em outras palavras, obtemos uma verdadeira estimativa da qualidade do treinamento, e não uma estimativa inflada porque os dados foram embaralhados com sucesso. Rodamos por 10 épocas, baralhamos o set, rodamos de novo, baralhamos de novo. Neste caso, não existem ligações entre os vectores de treino e, essencialmente, cada vector vai por si.
2020.07.02 22:47
Então eu me perguntava como fornecer aos NS não apenas valores de indicadores para o sinal atual, mas também com a história. Finalmente, tenho uma ideia. É muito simples. Guardamos os indicadores no momento do sinal, depois tomamos os valores do indicador anterior para o sinal actual, depois outro para o sinal anterior, etc. Como resultado, para o sinal atual não apenas seus indicadores, mas também os indicadores de sinais anteriores são salvos. Neste momento, faço um atraso de 24 sinais. Isto é, para o sinal actual, guardo os valores dos indicadores para 24 sinais atrás. Lembro-me de dizer no fórum que o arquivo de treinamento contém 7500 colunas para 50 linhas, mas ninguém conseguiu descobrir de onde ele veio. Problema da área de MO, somos todos muito espertos aqui :-)
2020.07.02 22:52
Agora vamos ao que interessa:
Como devem ter reparado, guardo dados de 15 instrumentos e utilizo estes dados para construir vários indicadores. Eu assumo a função estocástica. Eu assumo o desvio padrão cumulativo e é só isso. Como resultado, tenho 307 barras de entrada únicas que são primárias para o sinal de corrente. Como resultado, pego nestas 307 barras para o sinal corrente e adiciono a ele (o sinal) 307 barras dos 24 sinais anteriores. O significado deste decreto no aparecimento do sinal para apresentar os dados aos NS imediatamente para os últimos 24 sinais. Esta é a transformação que permite à classificação olhar profundamente para a história do sinal actual. É essencialmente um atraso até 24 de profundidade.
2020.07.02 22:59
MAS eu deixei a parte mais interessante para o último parágrafo: Tenho certeza que você já ouviu falar do vtreat addon para P. Então esta besta executa o pré-processamento de dados identificando colunas significativas para a variável de saída. Como regra, após o seu processamento, existem 130-180 colunas realmente significativas. Mas o paradoxo é que os valores actuais dos indicadores do sinal de corrente muito raramente caem nesta amostra. Muito raramente. O mesmo atraso de 24 horas não é um hóspede raro no arquivo pós-processado. Em outras palavras, os valores dos indicadores que estavam disponíveis há 24 lags atrás são críticos para a função alvo. Basicamente, a ideia é tão simples como um 5 kopecks. Guarde uma amostra suficientemente grande, depois multiplique as colunas por uma célula do Excel e pós-processe-as. Isso é que é lucro!


A citação está completa:

A rede não será capaz de fazer nada por si só. O que você dá como entrada é o que você recebe como resultado. Nem todos os atrasos são bons, como mostra a prática, e no seu conjunto não há uma única coluna que ajude a NS a obter de alguma forma um modelo adequado..... Boa Sorte!!!!!

Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
При создании графического объекта функцией ObjectCreate() необходимо указать тип создаваемого объекта, который может принимать одно из значений перечисления ENUM_OBJECT. Дальнейшие уточнения свойств созданного объекта возможно с помощью функций по работе с графическими объектами.
 

E quando feito correctamente, o modelo funciona desta forma.....


 
Valeriy Yastremskiy:

Sim, errado) Aparentemente é tudo falhas na análise, ou nos dados lidos.

É pouco provável que a normalização seja conveniente. O bom é que precisamos de dados de arquivo de notícias no terminal, uma capacidade regular de baixá-los e um serviço para trabalhar com eles. Não creio que não haja arquivos) Mas a julgar pela posição dos criadores, até que os usuários digam sua palavra, o que eles querem, ela não começará, e se começar, primeiro que tudo em uma versão paga).

Bem, sim, o calendário livre e bom é dificilmente possível)

 
Aleksey Nikolayev:

Sim, bem, um calendário livre e bom é dificilmente possível)

Sim, você pode fazer um mau calendário, longo e preciso) no arquivo) é um serviço de menta) sobre agora analisando por si mesmo)
 
Mihail Marchukajtes:

Obrigado, é interessante, não me teria ocorrido usar os sinais anteriores. Isto levanta a questão, talvez a rede seja uma ligação desnecessária?

É isso que torna uma rede interessante para mim, para que não tire os sinais. Caso contrário, seria mais fácil fazer um sistema clássico.

Terei que fazer mais algumas experiências, vou pegar um número muito grande de exemplos no sistema Machka, para que quando o treinamento não haja uma única repetição e eu possa me encaixar em uma única época.