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

 
elibrarius:

Ainda não tenho a certeza se é correcto pensar nos gráficos como semelhantes quando as diferenças de inclinação são tão grandes. Usando o mesmo exemplo:

a variante encontrada dá uma recuo a partir do ponto de tendência superior ou do fim da tendência, transferindo-a para o gráfico padrão dará uma previsão de uma continuação da tendência decrescente em vez de uma inversão - essencialmente um sinal inverso. Algo não está bem aqui....

mas se você dirigir o testador raramente encontrará variantes com grande diferença na inclinação, isso significa que em um certo limite será um padrão ascendente mas não descendente e sua estrutura será diferente com baixa correlação com a atual e é por isso que nunca acontece
 
Maxim Dmitrievsky:
tudo verdade, apenas uma grande diferença na inclinação dos padrões, você pode limitar a pesquisa se a inclinação for muito diferente, não para levar em conta tais variantes, mas se você executar o testador raramente encontrará variantes com uma diferença muito grande na inclinação, ele diz que em um certo limite não será realmente um padrão de queda, mas um padrão de subida e a estrutura terá uma baixa correlação com a atual

Bem, 10-15 graus (por olho) quanto menos? E é melhor não encontrar nada do que um sinal falso.

PS. medida em photoshop - 18 graus

 
Elibrarius:
bem 10-15 graus (a olho nu) quanto menos? E é melhor não encontrar nada do que um sinal falso.


Mesmo com perfeita coincidência de 50%, ele prevê na direção errada).

E a propósito, sim, a curva prognóstica não é contada correctamente aqui, fiz asneira algures... e perdi a versão antiga.

 
Maxim Dmitrievsky:

ele está até a fazer uma combinação perfeita de 50% e a prever na direcção errada).

Como você está fazendo uma previsão com base em uma variante, com uma centena de variantes semelhantes, a precisão da previsão seria maior. Mas a previsão média será de zero ))

Mau tanto para um como para muitos. Eu deveria alimentar o otimizador com esta tarefa.

 
Elibrarius:

Como você está fazendo uma previsão em uma linha, com uma centena de outras semelhantes, a previsão seria mais confiável. Mas a previsão média será de zero ))

É mau tanto para uma linha como para muitas. Devemos alimentar esta tarefa para optimizar.


Sim, mas antes de tudo deve ser correto, a previsão não deve puxar linhas como essa, apenas mostra a direção correta )

Mas é tudo treta via correlação de qualquer maneira, foi por isso que desisti...

 
Maxim Dmitrievsky:

Como mínimo, precisamos fazer transformações afins dos gráficos, pois os padrões estão em diferentes ângulos de inclinação (estruturas autoafinadas), e, em segundo lugar, pesquisar em diferentes intervalos de tempo. Mas não ajuda quando se usa a correlação - ela encontra padrões muito diferentes .

Se o principal problema de correlação é que"encontra padrões que não são muito semelhantes", então podemos simplesmente definir requisitos mais rigorosos para o erro aceitável e apenas padrões muito semelhantes serão encontrados. Mas isso não ocorrerá em todos os bares, mas às vezes (uma vez em várias horas, como no seu Expert Advisor com um ângulo de inclinação). Novamente, o otimizador irá escolher o erro aceitável.
Além disso, na minha variante a correlação Pearson não é contada diretamente, como no seu caso, mas o erro total (com peneiramento do erro máximo aceitável em cada barra). Neste caso, as variantes mais correlacionadas com o padrão são certamente encontradas, por isso comparei com a correlação.

 
Dr. Trader:

Suponha que existem dois conjuntos de preços, com 5 preços em cada
o primeiro é a1,a2,a3,a4,a5
O segundo é b1,b2,b3,b4,b5.

1) O gráfico de preços pode ser impedido, ou seja, pode ser colocado horizontalmente a partir de algum arranjo girado. Isto pode ser feito com uma regressão linear - encontre-a, e use a matriz de erros em vez da série de preços original. Se este passo vai ajudar a encontrar padrões, não sei, ainda não estudei o seu efeito em detalhe. Até agora não usei este passo eu mesmo.

2) É questionável chamar uma linha de preços de padrão; tem de haver uma descrição matemática da forma formada por estes preços. Por exemplo, podemos encontrar o aumento de preço em cada barra e usar estes aumentos como uma certa descrição padrão.
o primeiro padrão é obtido pela fórmula a5-a4, a4-a3, a3-a2, a2-a1
o segundo é b5-b4, b4-b3, b3-b2, b2-b1.

3) "similaridade" de padrões - ou correlação (não verifiquei eu mesmo), ou distância cartesiana pelo teorema de Pitágoras (verifiquei, e funcionou muito bem) -
sqrt( ((a5-a4)-(b5-b4))^2 + ((a4-a3)-(b4-b3))^2 + ((a3-a2)-(b3-b2))^2 + ((a2-a1)-(b2-b1))^2 )
ou outra coisa qualquer, acho que deve haver melhores opções.

1. Você o faz - aumentando a tolerância ao erro ao entrar mais fundo na história.

2. Cálculo do erro Lop-side (soma dos valores delta de abs. em cada barra) Os gráficos devem ser somados preliminarmente em barra zero.
Abs(a5-b5)+ abs(a4-b4)+abs(a3-b3)+abs(a2-b2)+abs(a1-b2)

Cálculo do erro de acordo com a sua variante
abs((a5-a4)-(b5-b4))+abs((a4-a3)-(b4-b3)+....
transformar o 1º elemento
abs((a5-a4)-(b5-b4)) = abs((a5-b5)+(b4-a4)) -

(a5-b5)+(b4-a4) = delta 5 + ( - delta 4), isto é semelhante à soma dos deltas, ou seja, dos erros. Mas esta não é a soma dos valores absolutos dos deltas, mas apenas a soma, e de deltas com sinais diferentes! Se os erros nos bares vizinhos tiverem o mesmo sinal, compensam-se mutuamente (devido ao facto de o segundo delta ter um sinal negativo). Mesmo um erro enorme de +1000pts e +1000pts será reduzido a zero na sua fórmula. E vai marcar como semelhante, um gráfico com um outlier de +1000pts em 2 barras. Embora no elemento seguinte, apenas 1 destes valores aberrantes será calculado e o erro resultante irá descartar esta variante.
Mas mesmo assim, esta função de cálculo de erros pode falhar como uma variante semelhante, como uma série com deltas: 0, +10, +15, +12, +5. Sua fórmula para essa combinação dará menos erro (25 pt) do que apenas a soma dos valores absolutos do delta em cada barra (42 pt).

3. esta é a mesma fórmula que no ponto 2 com os mesmos inconvenientes.

 
elibrarius:

O mais simples é mudar a largura da janela passo a passo através de toda a sequência e encontrar a soma dos valores de abs. do delt:

0,0,0 e 1,2,3 erro = (1-0)+(2-0)+(3-0)=6

0,0,1 e 1,2,3 erro = (1-0)+(2-0)+(3-1)=5

0,1,2 e 1,2,3 erro = (1-0)+(2-1)+(3-2)=3

1,2,3 e 1,2,3 erro = (1-1)+(2-2)+(3-3)=0

2,3,1 e 1,2,3 erro = (2-1)+(3-2)+Abs(1-3) = 4

Onde o erro mínimo é a máxima semelhança.


E a convolução é a mesma, mas em vez de adição e módulo é uma multiplicação e o máximo é escolhido, é mais rápido.

0,0,0 e 1,2,3 erro = 0*1+0*2+0*3 = 0

 
Gianni:

E a convolução é a mesma, mas em vez de adição e módulo uma multiplicação e máximo é escolhido, é mais rápido

0,0,0 e 1,2,3 = 0*1+0*2+0*3 = 0

É um processador legal que você tem! ))
O meu adiciona e subtrai mais rapidamente do que multiplica, e encontra módulo simplesmente equacionando bit 64 a zero.
 
elibrarius:

3. esta é a mesma fórmula que no ponto 2 com as mesmas desvantagens.


É tudo uma fórmula, só a transformei em três passos para torná-la mais clara. Então os sinais não serão um problema, já que há uma quadratura.