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

 
mytarmailS #:

porque não é para isso que ele serve.

Por que ninguém escreve sites em C++?

Eu apenas escolhi o que era mais familiar, mais semelhante ao mql, e o que era menos familiar (não familiar) foi chamado de jerky. Você deveria ter aprendido...

Não é difícil aprender nada. Mas o grão racional sugeriu que não há sentido ou vantagens em seus ofícios.

Comecei a escrever códigos em Python imediatamente, sem quase estudá-los. Depois, foram necessárias algumas bibliotecas básicas e pronto.

Não há tarefas em que o R ganhe. A estatística é um mito. Algumas pessoas justificam sua escolha dessa forma, como Sanych.
 
Maxim Dmitrievsky #:
Comecei a escrever código em Python imediatamente, sem quase aprender. Depois, foram necessárias algumas bibliotecas básicas e pronto.

Bem, tudo bem, ela foi projetada dessa forma....

Mas por que esses ataques passivo-agressivos ao R o tempo todo? É a melhor linguagem para suas tarefas, é para isso que foi criada,

Python é uma linguagem geral com a pretensão de ser fácil de aprender...


O principal não é isso, mas fazer negócios bonitos com a ajuda de algoritmos.


 
mytarmailS #:

porque não é para isso que ele serve.

Por que ninguém escreve sites em C++?

Cada linguagem tem sua própria tarefa, e é por isso que existem tantas delas.

Eu apenas escolhi o que era mais familiar, mais semelhante ao mql, e o que era menos familiar (não familiar) foi chamado de jerky. E você deveria ter estudado...

provavelmente você não sabe o suficiente sobre o assunto... oback-end em C++ está em alta demanda e é quase o trabalho mais caro.

 
Maxim Kuznetsov #:

você provavelmente não está totalmente ciente... oback-end em C++ está em alta demanda e é quase o trabalho mais caro.

provavelmente você não está ciente de que um site não é apenas um backend ;)

 

Nem todo mundo acompanha o desenvolvimento da MQL5, mas ela tem métodos padrão para matrizes e vetores.

Esses são os métodos padrão da linguagem, não de bibliotecas de terceiros. Com a introdução de tipos de matriz/vetor/complexo, a linguagem se tornou muito poderosa para análise estatística e matemática pesada.

Função

Ação

Categoria

Ativação

Calcula os valores da função de ativação e grava no vetor/matriz passado

Aprendizado de máquina

ArgMax

Retorna o índice do valor máximo

Estatísticas

ArgMin

Retorna o índice do valor mínimo

Estatísticas

ArgSort

Retorna o índice ordenado

Manipulações

Assign

Copia uma matriz, um vetor ou uma matriz com conversão automática

Inicialização

Média

Calcula uma média ponderada de valores de matriz/vetor.

Estatísticas

Cholesky

Calcula a decomposição de Cholesky

Transformações

Clipe

Restringe elementos de matriz/vetor a um intervalo especificado de valores aceitáveis

Manipulações

Col

Retorna um vetor de coluna. Grava o vetor na coluna especificada

Manipulações

Cols

Retorna o número de colunas na matriz

Características

Compare

Compara elementos de duas matrizes/vetores com a precisão especificada

Manipulações

CompareByDigits

Compara elementos de duas matrizes/vetores para correspondência com precisão de dígitos significativos

Manipulações

Cond

Calcula o número condicional de uma matriz

Características

Convolve

Retorna uma convolução linear discreta de dois vetores

Derivadas

Copiar

Retorna uma cópia de uma determinada matriz/vetor

Manipulações

CopyRates

Obtém a série histórica da estrutura MqlRates do período-símbolo especificado na quantidade especificada em uma matriz ou vetor

Inicialização

CopyTicks

Obtém ticks da estrutura MqlTick em uma matriz ou vetor

Inicialização

CopyTicksRange

Obtém uma matriz ou vetor de ticks da estrutura MqlTick no intervalo de datas especificado.

Inicialização

CorrCoef

Calcula o coeficiente de correlação de Pearson (coeficiente de correlação linear)

Derivativos

Correlate

Calcula a correlação cruzada de dois vetores

Derivativos

Cov

Calcula a matriz de covariância

Produtos

CumProd

Retorna o produto cumulativo de elementos de matriz/vetor, incluindo elementos ao longo do eixo fornecido.

Estatísticas

CumSum

Retorna a soma cumulativa de elementos de matriz/vetor, incluindo elementos ao longo do eixo fornecido

Estatísticas

Derivative

Calcula os valores da derivada da função de ativação e grava no vetor/matriz passado

Aprendizado de máquina

Det

Calcula o determinante de uma matriz quadrada não degenerada

Características

Diag

Extrai uma diagonal ou constrói uma matriz diagonal

Manipulações

Ponto

Produto escalar de dois vetores

Derivadas

Eig

Calcula os valores próprios e os vetores próprios direitos de uma matriz quadrada

Transformações

EigVals

Calcula os valores próprios de uma matriz geral

Transformações

Eye

Retorna uma matriz com uns na diagonal e zeros em outros lugares

Inicialização

Preenchimento

Preenche uma matriz ou vetor existente com um determinado valor

Inicialização

Plano

Permite que um elemento da matriz seja acessado usando um único índice em vez de dois índices

Manipulações

Completo

Cria e retorna uma nova matriz preenchida com o valor especificado.

Inicialização

GeMM

Multiplicação geral de duas matrizes (General Matrix Multiply)

Produtos

Hsplit

Divisão horizontal de uma matriz em várias submatrizes. O mesmo que Split com eixo = 0.

Manipulações

Identity (Identidade)

Cria uma única matriz com o tamanho especificado

Inicialização

Init

Inicializa uma matriz ou vetor

Inicialização

Inner

Produto interno de duas matrizes

Derivativos

Inversa

Calcula o inverso (multiplicativo) de uma matriz quadrada não degenerada usando o método Jordaan-Gauss

Soluções

Kron

Retorna o produto de Kronecker de duas matrizes, uma matriz e um vetor, um vetor e uma matriz ou dois vetores

Produtos

Perda

Calcula os valores da função de perda e grava no vetor/matriz passado

Aprendizado de máquina

LstSq

Retorna a solução de mínimos quadrados de equações algébricas lineares (para matrizes não quadradas ou degeneradas)

Soluções

LU

Fatoração LU de uma matriz como o produto de uma matriz triangular inferior e uma matriz triangular superior

Transformações

LUP

Fatoração LUP com permutação parcial, que se refere à decomposição LU somente com permutação de linha: PA=LU

Transformações

MatMul

Produto matricial de duas matrizes

Derivadas

Max

Retorna o valor máximo em uma matriz/vetor

Estatísticas

Média

Calcula a média aritmética dos valores dos elementos

Estatísticas

Mediana

Calcula a mediana dos elementos da matriz/vetor

Estatísticas

Mínimo

Retorna o valor mínimo na matriz/vetor

Estatísticas

Norm

Retorna a norma da matriz ou do vetor

Características

Uns

Cria e retorna uma nova matriz preenchida com uns

Inicialização

Externo

Calcula o produto externo de duas matrizes ou dois vetores

Produtos

Percentil

Retorna o percentil especificado dos elementos ou elementos da matriz/vetor ao longo do eixo especificado.

Estatísticas

PInv

Calcula uma matriz pseudo-inversa usando o método Moore-Penrose

Soluções

Potência

Eleva uma matriz quadrada a um grau inteiro

Produtos

Prod

Retorna o produto de elementos de matriz/vetor, que também pode ser realizado para um determinado eixo

Estatísticas

Ptp

Retorna o intervalo de valores de matriz/vetor ou o eixo de matriz fornecido

Estatísticas

QR

Calcula a fatoração qr de uma matriz

Transformações

Quantil

Retorna o quantil especificado de valores de elementos de matriz/vetor ou elementos ao longo do eixo especificado

Estatísticas

Classificação

Retorna a classificação da matriz usando o método Gaussiano

Características

RegressionMetric

Calcula a métrica de regressão como o erro de desvio da linha de regressão desenhada no conjunto de dados especificado

Estatísticas

Reshape

Altera a forma de uma matriz sem alterar seus dados

Manipulações

Redimensionar

Retorna uma nova matriz com forma e tamanho alterados

Manipulações

Row (Linha)

Retorna uma linha de vetor. Grava o vetor na linha especificada

Manipulações

Linhas

Retorna o número de linhas na matriz

Características

Tamanho

Retorna o tamanho do vetor

Características

SLogDet

Calcula o sinal e o logaritmo do determinante da matriz

Características

Solve

Resolve uma equação matricial linear ou um sistema de equações algébricas lineares

Soluções

Classificar

Classificar por local

Manipulações

Espectro

Calcula o espectro de uma matriz como o conjunto de seus valores próprios do produto AT*A

Características

Divisão

Divide uma matriz em várias submatrizes

Manipulações

Std

Retorna o desvio padrão de valores de elementos de matriz/vetor ou elementos ao longo de um determinado eixo.

Estatísticas

Sum

Retorna a soma de elementos de matriz/vetor que também pode ser executada para o(s) eixo(s) fornecido(s)

Estatísticas

SVD

Decomposição de valor singular

Transformações

SwapCols

Troca colunas em uma matriz

Manipulações

SwapRows

Troca as linhas em uma matriz

Manipulações

Traço

Retorna a soma das diagonais da matriz

Características

Transpor

Transpõe (troca os eixos) e retorna a matriz modificada

Manipulações

Tri

Constrói uma matriz com uns na diagonal fornecida e abaixo e zeros em outros lugares.

Inicialização

TriL

Retorna uma cópia da matriz com elementos zerados sobre a k-ésima diagonal. Matriz triangular inferior

Manipulações

TriU

Retorna uma cópia da matriz com elementos zerados abaixo da k-ésima diagonal. Matriz triangular superior

Manipulações

Var

Calcula a variação dos valores dos elementos da matriz/vetor

Estatísticas

Vsplit

Divisão vertical de uma matriz em várias submatrizes. O mesmo que Split com eixo=1

Manipulações

Zeros

Cria e retorna uma nova matriz preenchida com zeros

Inicialização

Документация по MQL5: Методы матриц и векторов
Документация по MQL5: Методы матриц и векторов
  • www.mql5.com
Методы матриц и векторов - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
mytarmailS #:

Bem, ótimo, é assim que se pretende.....

Mas por que esses ataques passivo-agressivos ao R o tempo todo? É a melhor linguagem para suas tarefas, é para isso que foi projetada,

Python é uma linguagem genérica com a pretensão de ser fácil de aprender...


O principal não é isso, mas fazer negócios bonitos com a ajuda de algoritmos.


Não preciso de suas negociações, preciso de backtests!
Negociar não é uma questão de ciência, é mais situacional. As negociações de hoje são +, as de amanhã são -.
Havia uma arbitragem normal quando você podia comprar flores para as mulheres e carros para si mesmo e, depois, de alguma forma, ela foi deflacionada. E não importa quais estatísticas você use, Mikola não fará uma flor de pedra.

Outro problema com os neurônios é a escolha dos modelos. Um deles está funcionando há um ano, os outros estão sendo descartados. Então, um egípcio grita com você dizendo que você o enganou. O que você vai fazer? Essa é a natureza das coisas. E as estatísticas de alguma forma passam novamente. Portanto, a escolha foi óbvia - para máxima simplicidade e conveniência.
 
Maxim Dmitrievsky #:
Não preciso de suas ofertas, preciso de seus backtests!
Negociar não é uma questão de ciência, é mais situacional. As negociações de hoje estão em alta, as de amanhã
Com todo o meu conhecimento, não sei como algoritmizá-lo, apenas tenho uma compreensão da situação e isso é tudo...
O MO é como um indicador, e 99% do robô intelectual está por trás de mim...

1) Ou é assim e está funcionando.

2) Ou tudo é automático e nunca funciona.


Por enquanto, estou sentado na 1), mas sonhando com a 2)

 
mytarmailS #:
Apesar de todo o meu conhecimento, não sei como algoritmizá-lo, apenas tenho uma compreensão da situação e isso é tudo....
O IO é como um indicador, e 99% do robô inteligente está atrás de mim...

1) Ou é isso, e funciona.

2) Ou está tudo no automático e nunca funciona.


Estou sentado na 1), mas estou sonhando com a 2).

Se você descobrir como validar melhor sua criação de FF, ela será automática. É uma ideia legal.
 
Maxim Dmitrievsky #:
Você descobre como validar melhor seu ofício de FF e isso será automático. Essa é uma ideia legal.

Basta validá-la como um algoritmo normal.

Não estou falando sobre isso como uma descoberta, eu a inventei há mais de um ano...

O homem perguntou como treinar o AMO para obter lucro, eu apenas lhe mostrei como...

 
mytarmailS #:

basta validá-lo como um algoritmo normal.

Não estou falando sobre isso como uma descoberta, eu inventei essa coisa há mais de um ano....

O homem perguntou como treinar o AMO para obter lucro, acabei de lhe mostrar como.

Ele não funcionará como um normal. Você precisa de um ajuste automático complicado para dados desconhecidos, filtragem de sinais de ruído etc. para fazer quase a mesma coisa que um ser humano.