Serviços , nova funcionalidade no arquiteto do MT5, o funeral do MT4 está prestes a ser inaugurado. - página 6

 
Petros Shatakhtsyan:


Sim, mas você também tem que considerar que há apenas um timer, não é assim, então VC++, e se você tiver muitas verificações de tempo, você pode simplesmente perder muitos carrapatos, e tudo se transformará em minhoca.

Não é um problema. Apenas em um timer você faz uma verificação cada vez que o timer inicia e os outros X segundos após a última verificação relevante.
 
Alexey Kozitsyn:
Não é um problema. É que em um timer você faz uma verificação a cada corrida do timer, e os outros X segundos após a última verificação relevante.


Eu não entendo. Você sabe quanto custa executar um temporizador. É possível executá-lo mais de 1 vez.

Eu disse que cada tique é importante e você está falando de segundos. Todos eles devem trabalhar em paralelo, independentemente uns dos outros.

 
Petros Shatakhtsyan:


Eu não tenho. Você sabe quanto custa para executar o temporizador. É possível executá-lo mais de 1 vez.

Eu disse que cada tique é importante e você está falando de segundos.

A execução do timer custa exatamente tanto quanto é necessário para a tarefa, se não puder ser feita de outra forma. Não precisa ser executado muitas vezes, basta fazer uma verificação 3 vezes em 3 corridas e outra 1 vez em 3 corridas. Espero que a idéia esteja clara agora.

 
Petros Shatakhtsyan:


Seria ineficiente se a EA manejasse cada tick, mesmo que milissegundos sejam usados no temporizador.

Precisa de uma maneira mais fácil de obter todos os carrapatos diretamente da visão geral do mercado.

A através de OpTisk não é possível, porque só funciona quando o próximo tick chega onde a EA está.


É claro que haverá alguma perda... mas haverá uma perda na velocidade de execução da lógica de toda a EA
 
Maxim Dmitrievsky:

Bem, como uma opção executada sobre o símbolo mais volátil. claro que haverá alguma perda... mas também haverá uma perda na velocidade de execução de toda a lógica da EA


É por isso que eu lhe disse para fazer outro OnTick que receberá carrapatos de todos os símbolos que estão atualmente disponíveis na visão geral do mercado. Uma variante simples e rápida.

E não apenas isso. Você também deve ter uma função que devolva a real alavancagem que cada símbolo tem.

 
Petros Shatakhtsyan:


E assim foi dito para fazer outro OnTick, que recebeu os carrapatos de todos os símbolos atualmente disponíveis na visão geral do mercado. Uma opção simples e rápida.

Na verdade, OnTick() pula carrapatos. Mesmo OnCalculate() salta carrapatos. Além disso, os carrapatos podem vir em pacotes. Portanto, o temporizador não é algo muito caro, ainda mais quando se analisa muitos caracteres. O principal é tornar o cálculo econômico.
 
Alexey Kozitsyn:
Na verdade, OnTick() pula carrapatos. Mesmo OnCalculate() salta carrapatos. Além disso, os carrapatos podem vir em pacotes. Portanto, o temporizador não é algo muito caro, ainda mais quando se analisa muitos caracteres. O principal é fazer um cálculo econômico.

Bem, você pode fazer isso também através de um temporizador. O bom é que temos o EventSetMillisecondTimer, mas é ruim que ele também inicie o OnTimer. Deveríamos ter acrescentado o OnMillisecondTimer.
 
Petros Shatakhtsyan:

Bem, você pode fazer isso com um temporizador. É bom que o EventSetMillisecondTimer exista, mas é ruim que ele também inicie o OnTimer. Você deveria ter adicionado o OnMillisecondTimer.

O que o impede de fazer desta maneira?

void OnTimer()
{
if( condition1 )
   {...копируем тики...}
if( condition2 )
   {...иной расчет, который не нужно запускать так часто, как condition1...}
}
E no geral, seria bom se acrescentássemos o campo de símbolo como o manipulador do OnBookEvent().
 
Alexey Kozitsyn:
Na verdade, OnTick() pula carrapatos. Até a OnCalculate() salta carrapatos. Além disso, os carrapatos podem vir em pacotes. Portanto, o temporizador não é algo muito caro, ainda mais quando se analisa muitos caracteres. O principal é fazer um cálculo econômico.

O temporizador também saltará carrapatos, se você precisar contá-los até o carrapato, você precisa contá-los pelo volume do carrapato ali... mas também não vai economizar... carrapatos podem vir muito rapidamente e em lotes, sim
 
Maxim Dmitrievsky:

o temporizador também falhará, se você precisar ir direto para o carrapato que você precisa para acompanhá-los, pelo volume do carrapato lá... mas também não vai economizar... carrapatos podem vir muito rápido e muito, sim
Nada pode salvar isso. Você não pode processar absolutamente cada carrapato.
Razão: