![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
Eu não entendo. Se algo mudou no banco de dados, a única maneira de descobrir é compará-lo com o estado anterior do banco de dados.
Você pode comparar cada item correspondente do banco de dados. Ou você pode calcular o hash a partir deles e comparar os hashes.
O terminal já sabe desta mudança (OnTrade). É por isso que eu quero saber sobre isso em minha função.
Especialmente relevante para o MT4, onde a mudança de etapa time_msc é de 1000ms.
Pena, isso torna impossível usar a opção mais simples que eu conheço no momento.
O terminal já sabe desta mudança(OnTrade). É por isso que eu quero saber sobre isso em minha função.
Não há nenhum evento comercial no MT4.
O evento comercial não é na MT4.
Apenas não foi encaminhada para a MKL. O terminal não atualiza a lista de negociações em um temporizador.
Apenas não foi ligado ao MCL. O terminal não atualiza a lista de negociações em um temporizador.
Portanto, somente através de verificação.
1. Qual é a maneira mais barata de saber que a chamada de função está no mesmo tique que a chamada anterior?
O tempo (TimeCurrent) pode permanecer o mesmo, tempo em ms de SymbolInfoTick, teoricamente também.
Comparar a licitação, perguntar e ms vezes é bastante caro.
Não sugiro organizar o controle no próprio Expert Advisor, eu quero ter uma função universal independente.
A mesma questão diz respeito às operações comerciais. Como sabemos que algo mudou na lista de pedidos/posições (incluindo os níveis abertos, SL e TP) desde a última execução?
Eu precisaria colocar alguma bandeira no OnTrade (e reinicializá-la quando pronta).
Mas, mais uma vez, eu gostaria de uma solução universal.
Quem tem alguma idéia?
Certo:
Certo:
Obrigado.
Eu não sugiro a opção de organizar o controle na própria EA, eu só quero ter uma função universal independente.
Obrigado.
Como ainda não foi sugerido, vou lhe dar uma idéia de onde eu cavaria, verificar a hora da última PostMessage ou algo parecido, provavelmente sem sentido, não sou tão versado em Api.
Verificar a hora da última PostMessage ou algo parecido é provavelmente um disparate, não sei muito sobre a Api.
Sim, parece um disparate)
Obrigado por tentar.
Irrealista sem controle na própria EA.
Não só isso, não é necessário. A função solicitada será chamada na EA, ou seja, é essencialmente o mesmo controle na EA, só que menos invasivo.