Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1759
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
o quê, onde e quando e de onde para onde, a resposta é clara.
O tamanho do gráfico em pixels é conhecido, o número de castiçais exibidos, suas datas, travessões são conhecidos, os preços máximos/min são obtidos. Qual é o problema?
Deixe-me ser mais específico
A linha deve ser verificada para um extremo em que barra a 0 ou 1 ? ou em que outra barra?
O tamanho do gráfico em pixels é conhecido, o número de castiçais, suas datas, travessões são conhecidos, os preços máximos/min são obtidos. Qual é o problema?
Posso esboçar 2 problemas em um relance...
1) Se você tiver 1 pixel corresponde a 10 pontos (por exemplo). Quantos pixels você precisaria para cobrir 15 pontos?
2) Se o mínimo e máximo do gráfico for alterado por rolagem, ou mudando a TF ou mudando a escala, será que a exigência de que o círculo deve corresponder a um determinado número de pontos será atendida?
Posso pensar em dois problemas...
1) Se você tiver 1 pixel correspondente a 10 pontos (por exemplo)... Então, quantos pixels seriam necessários para cobrir 15 pontos?
2) Se a escala mínima e máxima forem mudadas por rolagem, ou mudando a TF ou mudando a escala, será que a exigência de que o círculo deve corresponder a um determinado número de pontos será atendida?
1 - Você pode arredondar para números inteiros?
2 - Não é proibido recalcular de acordo com o evento na tabela
Você tem problemas reais ou problemas de construção?Vou tentar ser mais específico.
Momento atual: Vemos 2 linhas no topo e 2 no fundo
Um de cima deu um sinal, e um de baixo deu um sinal - o segundo de baixo (fratura)
Então? O que há de errado com o ZigZag? - Ele sempre mostrará a direção do último intervalo.
e você se livrará imediatamente da próxima tarefa - filtrar as pausas em alguns pontos - Definição do desvio
e outra tarefa futura para pessoas como seu TS - descobrir quantas barras atrás era o intervalo - no meu exemplo, você também pode devolver tal valor
E mais uma vez - meu código ZZ deve ser feito em uma função separada e calcular ZZ para cada linha em cada tic e lembrar para cada linha a última direção de ZZ e o número de barras onde foi o último cálculo - o cálculo será rápido, você pode executá-lo no testador
se você quiser, faça o que dizem nos fóruns - se Buf[1] > Buf[2] && Buf[2] > Buf[3].... provavelmente MA está a descer....
Não, ninguém falou em encaixe. Você precisa que o diâmetro do círculo seja sempre igual a um determinado número em pontos.
Eu posso ter entendido mal, mas o que há de tão difícil em fixar o diâmetro em pips?
A linha deve ser verificada para um extremo em que barra a 0 ou 1 ? ou em que outra barra?
Em zero.
Uma de duas linhas baixas = Bar[1] <Bar[0], uma de duas linhas altas =Bar[1] >Bar[0]
Busca ao longo das 2 linhas superiores e das 2 linhas inferiores
A qualquer momento pode haver uma pausa no segundo mais alto e no primeiro mais baixo, ou no mais baixo e no mais alto, ou no primeiro mais alto e no segundo mais baixo. Ou em ambos ao mesmo tempo.
1 - Você pode arredondar para números inteiros?
2 - Não é proibido recalcular para um evento na tabela.
1) Não é arredondamento é um erro... e muito grande... no meu exemplo é 10, mas em alguns instrumentos poderia ser 100, 1000, 10000, etc... belo arredondamento...
2) Então você dirá ao cliente que é possível, e então fará seu processador 24 por 7 verificar todos os ícones em todos os gráficos a cada segundo para ver se o tamanho do círculo pode mudar ali... + Ele precisará ter certeza de que seu código está sempre ligado. Eu acho que é sabotagem :)
Resumindo... No início você disse que a tarefa pode ser resolvida, mas depois verificou-se que os valores serão aproximados e terão uma grande margem de erro, e o código do cão de guarda deve funcionar para corrigir e ajustar os valores, pendurando o processador...
E você acha que isso se chama resolver o problema? Chama-se agarrar sem pensar, depois convencer/provendar/perguntar que está certo...
Então? O que há de errado com o ZigZag? - Mostrará sempre a direção da última fratura
e você se livrará imediatamente da próxima tarefa - filtrar as pausas em alguns pontos - Definição do desvio
e outra tarefa futura para pessoas como seu TS - descobrir quantas barras atrás era o intervalo - no meu exemplo, você também pode devolver tal valor
E mais uma vez - meu código ZZ deve ser feito em uma função separada e calcular ZZ para cada linha em cada tic e lembrar para cada linha a última direção de ZZ e o número de barras onde foi o último cálculo - o cálculo será rápido, você pode executá-lo no testador
se você quiser, faça o que dizem nos fóruns - se Buf[1] > Buf[2] && Buf[2] > Buf[3].... provavelmente MA vai para baixo....
Olhei novamente, como aplicar ao meu problema - ainda não descobri.
Em zero.
Uma das duas linhas baixas= Bar[1] <Bar[0], uma das duas linhas altas=Bar[1] >Bar[0].
Procuramos ao longo das 2 linhas superiores e das 2 linhas inferiores
A qualquer momento pode haver uma pausa no segundo mais alto e primeiro mais baixo, ou no mais baixo e mais alto, ou no primeiro mais alto e segundo mais baixo. Ou em ambos ao mesmo tempo.
1)Procure por fraturas em todas as linhas.
2) Entre aqueles onde há uma pausa, selecionamos aquele com o extremo 0 bar.
Será que este algoritmo funciona?