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

 
Maxim Dmitrievsky #:
Como é isso?

https://www.mql5.com/ru/docs/constants/chartconstants/enum_timeframes

Identificador

Descrição

PERÍODO_CORRENTE

Período atual

PERÍODO_M1

1 minuto

PERÍODO_M2

2 minutos

PERÍODO_M3

3 minutos

PERÍODO_M4

4 minutos

PERÍODO_M5

5 minutos

PERÍODO_M6

6 minutos

PERÍODO_M10

10 minutos

PERÍODO_M12

12 minutos

PERÍODO_M15

15 minutos

PERÍODO_M20

20 minutos

PERÍODO_M30

30 minutos

PERÍODO_H1

1 hora

PERÍODO_H2

2 horas

PERÍODO_H3

3 horas

PERÍODO_H4

4 horas

PERÍODO_H6

6 horas

PERÍODO_H8

8 horas

PERÍODO_H12

12 horas

PERÍODO_D1

1 dia

PERÍODO_W1

1 semana

PERÍODO_MN1

1 mês

Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Периоды графиков
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Периоды графиков
  • www.mql5.com
Периоды графиков - Константы графиков - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Não poderei fazer isso tão rapidamente, não até hoje à noite ou no outro dia.
 
Maxim Dmitrievsky #:
Não poderei fazer isso tão cedo, mais perto da noite, ou em outro dia.
O tempo está bom))))
 
Estouro de memória em TFs pequenos. A memória transborda com 16 osu e arquivo de troca (swap em um mac) de 30gig. Bem, há uma matriz de correlação de 50k por 50k, por exemplo.

O Pandas e o Nampay travam, pois não foram projetados para dados grandes. Vou tentar o dask. Ou filtrar o histórico.

Em suma, esse MO não é compatível com o hardware comum, como essa abordagem.
 
Maxim Dmitrievsky #:
Estouro de memória em TFs pequenos. A memória transborda com 16 osu e arquivo de troca (swap em um mac) de 30gig. Há uma matriz de correlação de 50k por 50k, por exemplo.

O Pandas e o Nampay travam, pois não foram projetados para dados grandes. Vou tentar o dask. Ou filtrar o histórico.

Em suma, o MO não funciona em hardware comum, como essa abordagem.
Você está fazendo a quantificação? O principal objetivo da quantização é reduzir o tamanho dos dados. 4 bytes de float para 1 byte de uchar ou char.
Uma matriz de 16g se tornará 4g.
.


E todos os cálculos são feitos na RAM - você precisa adicionar mais. Atualmente, a memória é barata.

 
Forester #:
Você faz quantificação? O principal objetivo da quantização é reduzir o tamanho dos dados. 4 bytes de float para 1 byte de uchar ou char.
Uma matriz de 16g se tornará 4g.
.


E todos os cálculos são feitos na RAM - você precisa adicionar mais. Atualmente, a memória é barata.

Não sei como calcular a correlação

Não é tão fácil adicionar memória a um macbook). Ainda é extremamente ineficiente para séries temporais, preciso refazê-lo de alguma forma

Especialmente porque vou usar outro TF e precisarei de 5 vezes mais recursos.

Será eficiente calcular por meio de SQL?

 
Maxim Dmitrievsky #:

Não sei como calcular a correlação posteriormente

Não é fácil adicionar memória a um macbook) Ainda é muito ineficiente para séries temporais, preciso refazê-lo de alguma forma

Especialmente porque vou usar um TF mais baixo e precisarei de 5 vezes mais recursos.

Há uma função de cálculo de correlação dupla no alglib. Acho que você pode simplesmente mudar todas as variáveis para char/uchar e tudo funcionará. Há dezenas de outras funções usadas que também precisam ser refeitas. E de CMatrixDouble vá para matrizes dinâmicas ou outra coisa.

Pearson product-moment correlation matrix                        |
//| INPUT PARAMETERS:                                                |
//|     X   -   array[N,M], sample matrix:                           |
//|             * J-th column corresponds to J-th variable           |
//|             * I-th row corresponds to I-th observation           |
//|     N   -   N>=0, number of observations:                        |
//|             * if given, only leading N rows of X are used        |
//|             * if not given, automatically determined from input  |
//|               size                                               |
//|     M   -   M>0, number of variables:                            |
//|             * if given, only leading M columns of X are used     |
//|             * if not given, automatically determined from input  |
//|               size                                               |
//| OUTPUT PARAMETERS:                                               |
//|     C   -   array[M,M], correlation matrix (zero if N=0 or N=1)  |
//+------------------------------------------------------------------+
static bool CBaseStat::PearsonCorrM(const CMatrixDouble &cx,const int n,
                                    const int m,CMatrixDouble &c)


E se você tiver um programa caseiro, terá que fazer a quantização também, se não tiver um pacote pronto que faça isso.

 
Maxim Dmitrievsky #:
seria eficiente ler o SQL?
Não sei
 
Maxim Dmitrievsky #:
Estouro de memória em TFs pequenos. A memória transborda com 16 osu e arquivo de troca (swap em um mac) de 30gig. Há uma matriz de correlação de 50k por 50k, por exemplo.

O Pandas e o Nampay travam, pois não foram projetados para dados grandes. Vou tentar o dask. Ou filtrar o histórico.

Em suma, o MO não funciona em hardware comum, como essa abordagem.

Por que você precisa de uma matriz de correlação?

Há um padrão, há uma matriz de histórico para comparar o padrão, qual é o problema?

 
mytarmailS #:

Por que você precisa de uma matriz de correlação?

Existe um padrão, existe uma matriz de histórico com a qual comparar o padrão, qual é o problema?

Não há padrão, os padrões são pesquisados pela matriz de correlação.