Multimoeda - assessor multitemporal - página 7

 
Fast528:

Não entendo o que o impede de obter dados indicadores sobre a barra zero, o que isso tem a ver com uma nova barra?

Porque o sinal tem que aguardar constantemente, durante qualquer sinal, e não uma nova barra + além daquela em todos os períodos e vários pares de moedas

 
Tango_X:

Porque você tem que esperar pelo sinal o tempo todo, durante cada tique e não durante uma nova barra, e em todos os períodos de tempo e em vários pares de moedas.

Você recebe o sinal em um temporizador em 1 segundo. Você guarda tudo isso na matriz [símbolo][período]. Então monitore constantemente o novo sinal no temporizador, e se houver um sinal, então compare seu valor com o valor salvo anteriormente - se o valor não corresponder, o sinal é novo, e você pode trocar, se o valor corresponder, é um sinal antigo - pule-o

 
Tango_X:

Porque o sinal tem que esperar constantemente, durante qualquer sinal, e não uma nova barra + para isso também em todos os períodos e vários pares de moedas

Portanto:

  1. Transferir o código do indicador para o Expert Advisor.
  2. Iniciar o mecanismo de busca do sinal a partir do timer (pelo menos a cada 16 ms).
Desde que você dependa do indicador, haverá uma probabilidade de faltar o sinal. Se o código estiver na EA, você não vai perdê-lo.

 
Реter Konow:

Portanto:

  1. Transferir o código indicador para a EA.
  2. Execute o mecanismo de busca de sinal a partir do timer (pelo menos a cada 16ms).
Enquanto você estiver dependente do indicador, haverá uma chance de perder o sinal. Se o código estiver no Expert Advisor, você não vai perdê-lo.

Como então chamar o indicador do EA no temporizador com períodos e pares diferentes - você pode dar um exemplo simples?

 
Tango_X:

Como você então chama o indicador do EA no temporizador com períodos e pares diferentes - você pode dar um exemplo simples?

Mova o código completamente e se livre do indicador. Se possível.

Se você precisar do indicador para suporte visual de negociação, execute-o separadamente.

Você só precisa da parte de cálculo do indicador.


Uma última coisa:

Se você solicitar o indicador por um momento depois que o sinal tiver passado - então você o perdeu e nem mesmo o reconhecerá.

Se você tiver o código indicador em sua EA, poderá comparar os valores antes e depois e determinar que o sinal foi momentâneo. Ou seja, você será capaz de reagir ao sinal que faltou, porque você saberá do fato de ter faltado ao comparar os valores escritos na matriz.

Isto pode ser muito mais difícil e menos eficiente quando a comunicação é feita através de um indicador.

 
Obrigado a todos pelas dicas! Vou tentar cada um deles e acho que vou encontrar algo para mim
 
O Expert Advisor pode perder os sinais de tiquetaque, isto é feito especialmente pelos desenvolvedores. É por isso que você deve então trabalhar com carrapatos já na história, haverá atrasos, mas o sinal não será perdido. Mas eu acho que OHLC de uma barra de um minuto é suficiente para recuperar quase qualquer sinal perdido.
 
Aleksey Vyazmikin:
O Expert Advisor pode pular os sinais de tiquetaque, ele foi especificamente projetado pelos desenvolvedores. Portanto, você deve trabalhar com carrapatos já existentes na história. Haverá atrasos, mas o sinal não será perdido. Mas eu acho que OHLC de uma barra de um minuto é suficiente para recuperar quase qualquer sinal perdido.

Como se pulam os carrapatos??? Que desenvolvedores fazem isso de propósito? Do que você está falando?

 
ElenaVVT:

Como se pulam os carrapatos??? Que desenvolvedores fazem isso de propósito? O que você quer dizer?

Renat escreveu anteriormente que o Expert Advisor executa os cálculos na aparência de um novo tick e espera até que um novo tick apareça. Se houvesse mais tick durante o processamento de dados, eles não são colocados na fila, mas são simplesmente pulados, caso contrário o terminal congelaria.

Eventos do terminal do cliente

NewTick

O evento NewTick é gerado quando novas cotações chegam e é tratado pela função OnTick() em Expert Advisors anexos. Se a função OnTick executada na cotação anterior for executada quando uma nova cotação chegar, a cotação recebida será ignorada pelo Expert Advisor, porque o evento correspondente não é colocado na fila de eventos da EA.

Todas as novas citações que vêm durante a execução do programa são ignoradas pelo programa até que a próxima execução da função OnTick() seja concluída. Depois disso, a função só é iniciada quando chega uma nova citação.

O evento NewTick é gerado independentemente de o comércio automático estar habilitado ou desabilitado (o botão "Habilitar/desabilitar comércio automático"). A proibição do comércio automático somente proíbe o envio de pedidos comerciais do Expert Advisor, a operação do Expert Advisor não é interrompida.

A proibição de negociação automática ao pressionar o botão especificado não interrompe a execução atual da função OnTick().

 
Aleksey Vyazmikin:

Renat escreveu anteriormente que quando um novo tick aparece, o Expert Advisor realiza cálculos e espera por um novo tick. Se houvesse mais tick durante o período de processamento de dados, eles não são colocados na fila, mas simplesmente pulados, caso contrário o terminal simplesmente congelaria.

Eventos no terminal do cliente

NewTick

O evento NewTick é gerado quando novas cotações chegam e é tratado pela função OnTick() em Expert Advisors anexos. Se a função OnTick executada na cotação anterior for executada quando uma nova cotação chegar, a cotação recebida será ignorada pelo Expert Advisor, porque o evento correspondente não é colocado na fila de eventos da EA.

Todas as novas citações que vêm durante a execução do programa são ignoradas pelo programa até que a próxima execução da função OnTick() seja concluída. Depois disso, a função só é iniciada quando chega uma nova cotação.

O evento NewTick é gerado independentemente de o comércio automático estar habilitado ou desabilitado (o botão "Habilitar/desabilitar comércio automático"). A proibição do comércio automático somente proíbe o envio de pedidos comerciais do Expert Advisor, a operação do Expert Advisor não é interrompida.

A proibição de negociação automática ao pressionar o botão especificado não interrompe a execução da função OnTick().

Este sempre foi o caso, se a OnTick não retornou, os tiquetaques recebidos são pulados. A EA os rastreia apenas em modo de espera. Mas você parece estar falando de carrapatos deliberadamente desaparecidos? É um bug para mim.