Aprendizado de máquina no trading: teoria, prática, negociação e não só - página 3270
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Aprendizado de máquina na negociação: teoria, modelos, prática e negociação de algoritmos
Maxim Dmitrievsky, 2023.10.01 10:55 AM
residuals_a = a_mat - a_mat. column_means residuals_b = b_mat - b_mat. column_means a_residual_sums = residuals_a. column_sums b_residual_sums = residuals_b. column_sums residual_products = dot_product( residuals_a. transpose, residuals_b)
correlações = residual_products / sum_products
Esse parece ser um cálculo direto da matriz de correlação.
Certo, obrigado! Não entendo por que a opção errada funcionou com inCols < 100.
Aparentemente
demais. Aleatório - a correlação média é aproximadamente 0, provavelmente.Provavelmente muito. Aleatório - há uma correlação média de aproximadamente 0, provavelmente.
Não é o erro médio que é medido aqui, mas a diferença máxima entre os elementos correspondentes.
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Aprendizado de máquina na negociação: teoria, modelos, prática e algo-trading
fxsaber, 2023.10.01 09:38 pm
É por isso que não está claro como o código errado
obtém uma correspondência.
E o PearsonCorrM2 pode ser acelerado em duas vezes se você contar por triângulo, ou seja, a partir do final. Conte 100 linhas com todos, depois 99 com todos os 0-99, 99 e 100º já contados - você pode simplesmente copiar. ...50ª linha com todos até a 50ª, etc. Bem, não conte com ele mesmo porque =1.
É por isso que não está claro como, com o código errado.
obtém uma correspondência.
Descobri que, se você trocar os cálculos da matriz, obterá uma incompatibilidade.
Ou seja, o lixo da memória durante o cálculo da primeira matriz entrou na nova matriz e, por algum milagre, coincidiu com o resultado desejado.
Acho que se trata de um cálculo frontal da matriz de correlação.
196
500 segundos contra 14 - é por isso que me lembro de ele ser
o mais rápido, devido ao algoritmo.
Bem, sim, se você fizer isso em novas matrizes µl, não será mais rápido?
Acho que todas as 9 funções usadas no PearsonCorrM e no PearsonCorrM2 podem ser reescritas em matrizes e comparadas. Em princípio, levaria uma hora de trabalho para reescrever as declarações e referências da matriz. Ao mesmo tempo, descobriremos se as matrizes são melhores do que as matrizes dinâmicas.
Títulos
IsFiniteMatrix(
IsFiniteVector(
AblasInternalSplitLength(
AblasSplitLength(
RMatrixGemmK(
RMatrixGemm(
RMatrixSyrk2(
RMatrixSyrk(
RankX(
Acho que todas as nove funções usadas no PearsonCorrM e no PearsonCorrM2 podem ser reescritas em matrizes e comparadas. Em princípio, levará uma hora de trabalho para reescrever os anúncios e as referências da matriz. Ao mesmo tempo, descobriremos se as matrizes são melhores do que as matrizes dinâmicas.
Tudo já foi feito: a MQ reescreveu-os para suas matrizes.
500 seg. vs. 14 - foi por isso que me lembrei disso.
O mais rápido, por causa do algoritmo.
Não me dei conta do algoritmo. O NumPy não fica muito atrás apenas devido ao fato de não realizar cálculos repetidos.
O NumPy parece ter um algoritmo diferente do ALglib, pois o desempenho é muito diferente. Mas está claro que em toda a enorme comunidade Python havia algum algoritmista muito forte que dedicou uma quantidade razoável de tempo para estudar essa questão.Isso já foi feito: os MQs os reescreveram para se adequar às suas matrizes.
E ficou mais lento?)
E ficou mais lento ??))))
Compare com a versão antiga do Alglib. Não tenho dados de que ele tenha se tornado mais lento.