Programação assíncrona e multi-tarefa em MQL - página 30

 
fxsaber:

Estamos falando de um cinco.

Você teve esse resultado.order==0 && result.deal==0?

 
Andrey Barinov:

...

A propósito, todas as informações acima não cancelam meu conselho para que você pare de usar o EventChartCustom() e mude completamente para recursos. Acredite em mim, este caminho é melhor e mais universal. E o padrão pode ser aplicado a um gráfico regular, definindo CHART_SHOW 0 (para que não surjam eventos desnecessários).

 
Andrey Barinov:

Você teve esse resultado.order==0 && result.deal==0?

&& não. Mas Resultado.deal == 0 - isso não é suficiente. Além disso, é perigoso fazer algo quando o histórico comercial ainda não teve tempo de se sincronizar.

 
É claro que esta opção multithreading é cara, mas se não houver outra, ela resolverá o problema. Por pouco).
 
fxsaber:

&& - não. Mas Resultado.deal == 0 - isso não é suficiente. Além disso, é perigoso fazer algo quando o histórico comercial ainda não teve tempo de se sincronizar.

Dê-me um exemplo de um problema. Até agora, sempre foi suficiente para mim saber que o pedido foi enviado.

 
Andrey Barinov:

Dê-me um exemplo de um problema. Até agora, sempre fiquei satisfeito com as informações de que o pedido foi enviado.

Há muitas nuances, não consigo me lembrar delas todas de uma só vez. Em um relance

  • Uma ordem de mercado é colocada com sucesso. Tornou-se verdade e 10009. Mas ainda não foi executado.
  • A posição é fechada, mas não há menção a ela na história do comércio.
  • A ordem é executada e a posição é aberta. Mas o pedido ainda não foi apagado do terminal. Assim, a ordem e a posição existem no terminal simultaneamente. Seus rótulos são os mesmos.
 
fxsaber:

Há muitas nuances, não consigo me lembrar delas todas de uma só vez. Em um relance

  • A ordem de mercado é colocada com sucesso. Nós nos tornamos verdadeiros e 10009. Mas ainda não foi executado.
  • A posição é fechada, mas não há menção a ela na história do comércio.
  • A ordem é executada e a posição é aberta. Mas o pedido ainda não foi apagado do terminal. Assim, a ordem e a posição existem no terminal simultaneamente. Seus rótulos são os mesmos.

De fato, há muitas nuances. Você mesmo resolveu muitos desses problemas em MTOrders.

Eu construo minha lógica comercial de tal forma que o resultado.informações de pedidos são suficientes para mim. Durante vários anos, não houve tarefas (problemas) insolúveis.

P.S. Offtopic já.

 
Andrey Barinov:

Peter, você não entende.

UM assessor. Ela também funciona adicionalmente em um gráfico invisível, somente no modo de agente. Não há eventos acontecendo com o agente. Isso significa que o recurso não pode ser pesquisado de forma alguma, o cronômetro não é iniciado, os carrapatos não vêm...

O Expert Advisor pode multiplicar quantos desses agentes quiser. Cada um deles se torna um fio separado.

Você pode esclarecer esta afirmação mais uma vez? Se um modelo for aplicado a um gráfico regular e uma cópia da EA for lançada, todos os eventos normalmente chegarão. Não é?

E se o modelo for aplicado ao _OBJ_CHART, como a EA pode mesmo trabalhar nele se mesmo os carrapatos não vêm?

 
Andrey Barinov:

Há realmente muitas nuances. Você mesmo já resolveu muitos desses problemas em MTOrders.

Eu resolvi tudo lá.

Eu construo minha lógica comercial de tal forma que tenho informações suficientes sobre os resultados. Durante vários anos, não houve tarefas (problemas) insolúveis.

Você tem que levar certos servidores.

P.S. Offtopic já.

Sim, vamos terminar.

 
Реter Konow:

Você pode explicar esta afirmação novamente? Afinal, se você aplicar um modelo a um gráfico normal e executar uma cópia da EA, então todos os eventos entrarão como normais. Não é?

E se um modelo for aplicado ao _OBJ_CHART, como ele pode funcionar plenamente lá se mesmo os carrapatos não vêm?

O gráfico normal tem todos os eventos. O OBJ_CHART só tem OnChartEvent onde a EA principal envia OnTick e OnTimer, se necessário.