Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1112

 
Alexey Viktorov:

Na OnChartEvent, você também precisa saber o nome exato do objeto. E você não tem um até ter o objeto em si.

É, na criação, em sparam.

Em geral, funciona no OnChartEvent, mas não funciona no testador.

 
Andrey Sokolov:

É, na criação, em sparam.

Em geral, funciona no OnChartEvent, mas não funciona no testador.

Tente esta lógica:

se houver um novo objeto ...

 
Andrey Sokolov:

É, na criação, em sparam.

Em geral, funciona no OnChartEvent, mas não funciona no testador.

Mas com o que devo compará-lo? Como você distingue que este é o objeto certo? Como você sabe que funciona com o mesmo carrapato?

Artyom Trishkin:

Tente esta lógica:

Se houver um novo objeto ...

Vai estar no próximo tique, não importa o quanto seja difícil.

 
Artyom Trishkin:

Tente esta lógica:

se houver um novo objeto ...

Por favor, esclareça como exatamente

 
Alexey Viktorov:

Mas com o que você compara a sparam? Como se pode saber se é o objeto certo? A parte do nome.

Como você pode saber se funciona com o mesmo tique? - Ao produzi-lo para impressão.

 
Andrey Sokolov:

Mas com o que você compara a sparam? Como se pode saber se é o objeto certo? A parte do nome.

Como você pode saber se funciona com o mesmo tique? - Saída de impressão.

1. Olhe para os outros objetos para ver se essas partes do nome correspondem.

2. Imprime o tempo em segundos? E com que freqüência há carrapatos?

 
Alexey Viktorov:


Será, por assim dizer, no próximo tique.

Bem, espere..., em um timer de milissegundos podemos saber o Volume atual. Desde que o Volume não tenha mudado (tique atual), verificamos se um novo objeto apareceu. Assim que o número de objetos passados não for igual ao número de objetos atuais, enquanto que o Volume atual é igual ao Volume passado - apanhado pela aparência de algum objeto dentro do tick atual - faça o que você precisa.
Ou eu estou enganado? Deve ser verificado...

SZZ. Como vemos - quando um novo objeto aparece no temporizador, enviamos o evento do usuário, no qual escrevemos as informações necessárias. Todo o processamento da aparência do novo objeto desta forma será feito no manipulador de eventos. E não é certo que a suposição esteja correta, e vale a pena o trabalho...

 
Artyom Trishkin:

Espere um minuto, em um timer de milissegundos podemos saber o Volume atual. Desde que o Volume não tenha mudado (tique atual), verificamos se um novo objeto apareceu. Assim que o número de objetos passados não for igual ao número de objetos atuais, enquanto que o Volume atual é igual ao Volume passado - apanhado pela aparência de algum objeto dentro do tick atual - faça o que você precisa.
Ou eu estou enganado? Deve ser verificado...

SZZ. Como vemos - quando um novo objeto aparece no temporizador, enviamos o evento do usuário, no qual escrevemos as informações necessárias. Todo o processamento de novos objetos ocorridos desta forma será feito no manipulador de eventos. E não é certo que a suposição esteja correta e que valha a pena o trabalho...

Se não estiver no testador, OnChartEvent é suficiente, mas no testador nem o timer nem o trabalho OnChartEvent funcionam.

Até agora, a questão é fazer com que funcione no testador com o mesmo tick.

 
Alexey Viktorov:

1. Olhe para os outros objetos para ver se essas partes do nome correspondem. - Isso é bom o suficiente para mim.

2. Imprime o tempo em segundos? Com que freqüência os carrapatos ocorrem? - Não há atraso perceptível, você pode ver por si mesmo, o código é mínimo

 
Artyom Trishkin:

Espere um minuto, no timer de milissegundos podemos saber o Volume atual. Desde que o Volume não tenha mudado (tique atual), verificamos se um novo objeto apareceu. Assim que o número de objetos passados não for igual ao número de objetos atuais, enquanto que o Volume atual é igual ao Volume passado - apanhado pela aparência de algum objeto dentro do tick atual - faça o que você precisa.
Ou eu estou enganado? Deve ser verificado...

SZZ. Como vemos - quando um novo objeto aparece no temporizador, enviamos o evento do usuário, no qual escrevemos as informações necessárias. Todo o processamento de novos objetos ocorridos desta forma será feito no manipulador de eventos. E não é certo que a suposição esteja correta, e vale a pena o trabalho...

Como eu entendo a tarefa:

Em um gráfico há um indicador que desenha marcas e um EA que lê essas marcas.

O Consultor Especialista precisa ler em um tick a marca que o indicador desenhou no mesmo tick. Onde está a garantia de que o indicador funcionará mais rápido do que o Expert Advisor? O evento ocorrerá simultaneamente no indicador e no Expert Advisor. Em segundo lugar, mesmo em um código, após ObjectCreate é impossível ler as propriedades do objeto, apesar do fato de que o objeto já foi criado.

Duvido muito da possibilidade de tal proeza. Mas eu ficaria muito feliz se eu estivesse errado.

Razão: