kvn: Não vou discutir sobre a LR. ENTÃO ONDE ESTÁ O ERRO NO CÓDIGO INDICADOR???????
Quem diabos sabe. Ninguém sabe que algoritmo você está tentando implementar. Primeiro escreva uma idéia, depois fórmulas e depois uma explicação - este pedaço de código faz isto e aquilo. E ninguém vai adivinhar.
mais uma vez como a LR é calculada // O indicador é calculado usando a fórmula: LR = at+b // onde LR - preço"médio" de fechamento previsto, //t - ponto no tempo,(n1 variável no indicador)Pt - preço de fechamento dos últimos n períodos.(Fechar[n2]) //a = (n*SUMM(t*Pt) -SUMM(t)*SUMM(Pt))/(n*SUMM(t^2) - (SUMM(t))^2) - ângulo tangente da linha de regressão, //b = 1/n*(SUMM(Pt) - a*SUMM(t)), - deslocamento horizontal}
código indicador acima.
Ele calcula de n=1 a 100 incorretamente, depois sai n=22 e o resultado está correto, acho que o laço está escrito incorretamente, mas não sei onde.
Parece estar dessincronizada. Para a barra n x é necessário nn, sendo que o índice para y
n2=n+n1-1 = n+nn-1
Há muitos indicadores de regressão nas proximidades, por exemplo, https://forum.mql4.com/ru/10446/page39, se você procurar por todos eles, é melhor navegar a partir do final.
lna01: Parece estar dessincronizada. Para a barra n x leva nn, com o índice para y sendo
n2=n+n1-1 = n+nn-1
E em geral há muitos indicadores de regressão nas proximidades, por exemplo https://forum.mql4.com/ru/10446/page39, se você estiver procurando por todos eles. é melhor começar no final.
n1 não é igual a nn, mas varia de 1 a nn - o período do indicador. e n - número de barras a serem recalculadas (para trabalhar mais rápido e sem puxar a cauda inteira)
Em geral https://forum.mql4.com/ru/10446/page39 não é uma regressão linear, mas sim um derivado do MA.
lna01: Parece estar dessincronizada. Para a barra n x leva nn, com o índice para y sendo
n2=n+n1-1 = n+nn-1
n1 não é igual a nn, mas varia de 1 a nn - período do indicador. e n é o número de barras a serem recalculadas (para trabalhar mais rápido e não para arrastar a cauda inteira)
Em geral https://forum.mql4.com/ru/10446/page39 não é uma regressão linear, mas sim um derivado do MA.
Bem, que se lixe, vamos assumir que o LR é deliberadamente deslocado por um período de tempo. Proponho o seguinte: substituir a expressão complicada
b=(1/nn)*(ssm3-a*ssm2);
substituir por
b=(1.0/nn)*(ssm3-a*ssm2);
(o principal erro foi aqui). E se o turno não for necessário, substitua por
LR=a*nn+b;
para
LR=a+b;
Depois disso, compare o que é desenhado por este indicador com o de at_LR0.mq4 e tente descobrir porque não é um derivado do MA e como se livrar corretamente da cauda.
P.S. Para não se preocupar com os parâmetros, deixe que os indicadores sejam colocados no gráfico horário e defina o período do seu indicador para mais um.
(o principal erro foi aqui). OBRIGADO pela dica. Eu não teria adivinhado, é uma pena que não esteja escrito no manual de linguagem. Acontece que onde quer que uma das variáveis seja um número inteiro, a constante deve ser escrita como um número fracionário. Vou manter isso em mente. E quanto ao DR ou não, é um assunto privado. Coloque meu indicador no gráfico e preste atenção aos pontos de inflexão da linha. É sempre o fim da tendência e não um mau ponto de saída. E sua interseção com o MA (qualquer) também é agradável.
Eu ficaria muito grato em receber informações sobre como tornar o indicador mais rápido, como aumentar a velocidade MT. E talvez alguém saiba onde estão as informações sobre a velocidade de execução de vários operadores de MT (por exemplo, quantos ciclos de relógio são executados em diferentes operadores do loop).
kvn: (o principal erro foi aqui). OBRIGADO pela dica. Eu não teria adivinhado, é uma pena que não esteja escrito no manual de linguagem. Acontece que onde quer que uma das variáveis seja um número inteiro, a constante deve ser escrita como um número fracionário. Entendi.
Se você estiver se referindo a fundição, ela é descrita na MQL4 e em todas as outras linguagens de programação.
kvn: Além disso, eu ficaria muito grato por qualquer informação sobre como tornar a mesa giratória mais rápida, como aumentar a velocidade MT. E se alguém souber se há alguma informação sobre a velocidade de execução de diferentes declarações de MT (por exemplo, quantos ciclos de relógio diferentes declarações são executados).
Quanto à MT, é útil para o usuário tentar minimizar o número de buffers indicadores. As velocidades de execução dos operadores são geralmente aprendidas de forma independente, utilizando os operadores Print e GetTickCount. Embora seria bem-vindo se alguém pudesse digerir isto e publicar um artigo.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Não vou discutir sobre a LR. ENTÃO ONDE ESTÁ O ERRO NO CÓDIGO INDICADOR???????
como a LR é calculada
// O indicador é calculado usando a fórmula: LR = at+b
// onde LR - preço"médio" de fechamento previsto,
//t - ponto no tempo,(n1 variável no indicador)Pt - preço de fechamento dos últimos n períodos.(Fechar[n2])
//a = (n*SUMM(t*Pt) -SUMM(t)*SUMM(Pt))/(n*SUMM(t^2) - (SUMM(t))^2) - ângulo tangente da linha de regressão,
//b = 1/n*(SUMM(Pt) - a*SUMM(t)), - deslocamento horizontal}
código indicador acima.
Ele calcula de n=1 a 100 incorretamente, depois sai n=22 e o resultado está correto, acho que o laço está escrito incorretamente, mas não sei onde.
Parece estar dessincronizada. Para a barra n x leva nn, com o índice para y sendo
E em geral
há muitos indicadores de regressão nas proximidades, por exemplo
https://forum.mql4.com/ru/10446/page39, se você estiver procurando por todos eles.
é melhor começar no final.
n1 não é igual a nn, mas varia de 1 a nn - o período do indicador.
e n - número de barras a serem recalculadas (para trabalhar mais rápido e sem puxar a cauda inteira)
Em geral https://forum.mql4.com/ru/10446/page39 não é uma regressão linear, mas sim um derivado do MA.
Parece estar dessincronizada. Para a barra n x leva nn, com o índice para y sendo
e n é o número de barras a serem recalculadas (para trabalhar mais rápido e não para arrastar a cauda inteira)
Em geral https://forum.mql4.com/ru/10446/page39 não é uma regressão linear, mas sim um derivado do MA.
E se o turno não for necessário, substitua por
para Depois disso, compare o que é desenhado por este indicador com o de at_LR0. mq4 e tente descobrir porque não é um derivado do MA e como se livrar corretamente da cauda.
P.S. Para não se preocupar com os parâmetros, deixe que os indicadores sejam colocados no gráfico horário e defina o período do seu indicador para mais um.
OBRIGADO pela dica. Eu não teria adivinhado, é uma pena que não esteja escrito no manual de linguagem.
Acontece que onde quer que uma das variáveis seja um número inteiro, a constante deve ser escrita como um número fracionário. Vou manter isso em mente.
E quanto ao DR ou não, é um assunto privado.
Coloque meu indicador no gráfico e preste atenção aos pontos de inflexão da linha. É sempre o fim da tendência e não um mau ponto de saída.
E sua interseção com o MA (qualquer) também é agradável.
Eu ficaria muito grato em receber informações sobre como tornar o indicador mais rápido, como aumentar a velocidade MT.
E talvez alguém saiba onde estão as informações sobre a velocidade de execução de vários operadores de MT (por exemplo, quantos ciclos de relógio são executados em diferentes operadores do loop).
(o principal erro foi aqui).
OBRIGADO pela dica. Eu não teria adivinhado, é uma pena que não esteja escrito no manual de linguagem.
Acontece que onde quer que uma das variáveis seja um número inteiro, a constante deve ser escrita como um número fracionário. Entendi.
Além disso, eu ficaria muito grato por qualquer informação sobre como tornar a mesa giratória mais rápida, como aumentar a velocidade MT.
E se alguém souber se há alguma informação sobre a velocidade de execução de diferentes declarações de MT (por exemplo, quantos ciclos de relógio diferentes declarações são executados).