Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 694

 
Renat Akhtyamov:

bem, depois o ciclo indicador, em que o número de barras é esta mesma linha.

Pergunto-me - o que é claro(?), ou seja, onde ler sobre as peculiaridades do MT5 em modo offline, poderia dizer-me, por favor?

O indicador rate_total - utilizado com sucesso em vez de Bars() no laço OnCalculate()
 
Artyom Trishkin:
No indicador rates_total - é utilizado com sucesso em vez de Bars() no laço em OnCalculate()

Está bem. Sim, existe tal coisa.

Haverá o mesmo número de barras para diferentes instrumentos/temporais, porque tenho um indicador multi-divisas?

Posso alterar parâmetros aqui

Bars(_Symbol,_Period);

Mas e quanto a taxas_total para calcular o indicador para diferentes períodos de tempo e símbolos?

 
Renat Akhtyamov:

Está bem. Sim, existe tal coisa.

Haverá o mesmo número de barras para diferentes instrumentos/temporais, porque tenho uma ferramenta multi-moeda?

Para obter o número de barras do histórico para um período de tempo não corrente ou um símbolo não corrente num indicador multi-moeda/multi-tempo, devemos usar Bars()
 
Artyom Trishkin:
Para obter o número de barras do histórico para um período de tempo não corrente ou um símbolo não corrente no indicador multi-moeda/multi-tempo, deve usar Bars()

É exactamente sobre isso que estou a escrever - que esta funcionalidade não funciona offline, embora exista um histórico de citações

Por conseguinte, o indicador não pode ser testado offline.

Acontece que a cotação em MT5 é enviada pessoalmente para cada PI e pode ser diferente da história da cotação, que já está desenhada no gráfico? //Ando a lógica vai...

 
Renat Akhtyamov:

e depois o indicador, em que o número de barras é esta mesma linha.

Pergunto-me - o que é claro(?), ou seja, onde ler sobre as peculiaridades do MT5 em modo offline, poderia por favor dizer?

É evidente que o MT5. Não é claro o que foi feito antes de chamar Bars(). Este script simples funciona e não retorna zero mesmo quando não há ligação ao servidor ou quando não há rede.

Não o tentei em indicadores, por isso perguntei como se faz no seu caso. Muito provavelmente, quando a rechamada for o número real de barras, a primeira chamada provocará a renovação dos dados em cache.

void OnStart()
  {
        Print("Bars on chart - ",Bars(_Symbol,PERIOD_CURRENT));  
  }
 
Vitalie Postolache:

É evidente que o MT5. Não é claro o que foi feito antes de chamar Bars(). Este script simples funciona para mim e não retorna zero, mesmo quando não há ligação ao servidor ou quando não há rede.

Não o tentei em indicadores, por isso perguntei como se faz no seu caso.

void OnStart()
  {
        Print("Bars on chart - ",Bars(_Symbol,PERIOD_CURRENT));  
  }
claramente
 

Qual é a melhor forma simples de ligar a uma vela próxima para gerir a EA? Para recalcular indicadores, remover/colocar encomendas, etc.?

Por temporizador?

Mas como iniciar o temporizador na altura certa para que seja accionado de hora a hora em HH:00:00? e não todas as horas a partir da activação do temporizador?

 
dimnik:

Qual é a melhor maneira simples de ligar a uma vela próxima para gerir a EA? Para recalcular indicadores, remover/colocar encomendas, etc.?

Por temporizador?

Mas como iniciar o temporizador na altura certa para que seja accionado de hora a hora em HH:00:00? e não todas as horas a partir da activação do temporizador?

Verificar a hora de abertura da vela actual e compará-la com a hora de abertura da última verificação. Se forem iguais, significa que um novo bar ainda não abriu e regressa de OnTick(). Se não for igual - identificámos a abertura de um novo bar - então executamos tudo o que está escrito no Expert Advisor e lembramo-nos do novo tempo de abertura para a próxima verificação.
 
Vitaly Muzichenko:

Pergunta gráfica:

Existe um desenho como este

for(long currChart = ChartFirst();currChart != -1; currChart=ChartNext(currChart)) {
 if(currChart == график тестера) continue; // Что сюда написать?
  ObjectSetInteger(currChart,"Sync",OBJPROP_BGCOLOR,clrGreen);
}

Como posso descobrir que o gráfico não é o principal, mas abre em modo de teste e salta-o?

Como sugestão.

Criar um modelo para o gráfico e colocar uma etiqueta com o nome, por exemplo, "TesterChart" ou qualquer outro objecto, pode usar coordenadas zero para que não seja visível. Nomear este modelo "Testador". Agora todos os gráficos de testes terão um objecto com este nome. A seguir pergunte se o gráfico tem este objecto, se sim, é o "Nosso Testador", salte-o.

Através e através, mas não conheço outra forma.

 
Vasiliy Pushkaryov:
Como sugestão.

Criar um modelo para o gráfico e rotulá-lo com um nome tal como "TesterChart" ou qualquer outro objecto, possivelmente em coordenadas zero para que não seja visível. Nomear este modelo "Testador". Agora todos os gráficos de testes terão um objecto com este nome. Depois pergunte se o gráfico tem este objecto, se sim, é o "Nosso Testador", salte-o.

Não sei como, mas não conheço outra forma.

Obrigado, mas esta solução não é adequada no sentido em que estou a testar em mais de um modelo, mas isso é metade do problema, mas o facto de este indicador não estar apenas a funcionar para mim, as pessoas simplesmente cansam-se de preencher etiquetas no testador.

Acontece que não há forma de determinar programmaticamente que o gráfico corre no testador? Onde estão os programadores?

.