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

 
Kirill Belousov, alguma ideia de como descobrir quantos segundos o plano deve ter num dia/mês/semana?
 
Aleksey Vyazmikin:

Preciso de obter o tempo 23:45 neste caso (na verdade não tenho M5, mas sim M1 TF actual, mas não importa) - esta é a hora da última barra do TF actual na estrutura da última barra do TF acima. O turno no gráfico é 1 barra para H1, mas pode haver outro turno, digamos que preciso de informação às 11 horas, ou seja, o turno será 2.

Aleksey, conte quantas pessoas não conseguem compreender o que precisa.

Pelo menos tente formular o problema de forma clara. O que precisa de obter e em que momento e em que período do gráfico para que TF.

 
Alexey Viktorov:

Alexei, conta quantas pessoas não conseguem perceber o que queres.

Pelo menos tente formular a tarefa de forma clara. O que precisa de obter e em que momento e em que período do gráfico para que TF.

Bem,Kirill Belousov entendeu-me, enquanto duas outras pessoas não o entenderam, a julgar pelas suas respostas.

Preciso de uma função universal que funcione com todas as TFs, enquanto os dados são necessários em qualquer altura.

Não sei o que não está claro, por isso é difícil de explicar - aparentemente, preciso de perguntas de liderança.

Mas, mais uma vez, preciso de saber a hora da última ocorrência de uma barra da TF especificada na estrutura da TF actual. Por exemplo, numa situação padrão, a TF actual que tenho é M1, quero saber a hora do último bar na TF actual, igual à TF horária que fechou 1 bar ou mais atrás. Em números - são 10:30, preciso de saber que horas eram quando a última vela se abriu na última hora - e serão 23:49, e se são 11:30, então normalmente serão 10:59.

Será que isso faz mais sentido?

 
Aleksey Vyazmikin:
Kirill Belousov, alguma ideia de como descobrir quantos segundos o plano deve ter num dia/mês/semana?

https://www.mql5.com/ru/docs/common/periodseconds

Документация по MQL5: Общие функции / PeriodSeconds
Документация по MQL5: Общие функции / PeriodSeconds
  • www.mql5.com
[in]  Значение периода графика из перечисления ENUM_TIMEFRAMES. Если параметр не указан, то возвращается количество секунд текущего периода графика, на котором запущена программа.
 
Aleksey Vyazmikin:

Mas, mais uma vez, preciso de saber a hora da última aparição da TF especificada na estrutura da TF actual. Por exemplo, numa situação padrão, a minha TF actual é M1, quero saber a hora do último bar na TF actual, igual à TF horária que fechou 1 bar ou mais atrás. Em números - são 10:30, preciso de saber que horas eram quando a última vela se abriu na última hora - e serão 23:49, e se são 11:30, então normalmente serão 10:59.

Será isso mais claro?

Alexey, tenha cuidado - o TF minuto não tem qualquer estrutura, pois é o TF padrão mínimo.

Por conseguinte, é muito difícil "passar" pela sua formulação do problema. Repetir a mesma coisa com termos inapropriados não torna a situação mais clara).

Repare como redigi as minhas respostas às suas perguntas - pode perceber isso sem uma garrafa e sem cogumelos (ou videntes, o que tive de fazer para o compreender :) )

 

Obrigado, mas não pode especificar aí um número de bar, e sem esse mês, como é que vai acertar? Só lhe falará sobre o actual.

 
Kirill Belousov:

Alexey, tenha cuidado - o TF minuto não tem estrutura, pois é o TF padrão mínimo.

Por conseguinte, é muito difícil "passar" a sua redacção do problema. Repetir a mesma coisa com termos inapropriados não torna a situação mais clara).

Prestem atenção à forma como formulei as minhas respostas às vossas perguntas - podem ser aí compreendidas sem uma garrafa e cogumelos (ou videntes, que eu tive de envolver para vos compreender :) )

Sim, estava a falar de uma estrutura diferente lá, claro, não nesse sentido de todo! Mas no sentido em que a barra de qualquer TF é uma estrutura que se pode decompor em subconjuntos a partir das TFs inferiores.

Quando não se comunica em linguagem de programação, é difícil expressar os pensamentos, agradeço-lhe que tenha percebido o ponto, obrigado.

 

Para um turno de um bar, tenho feito isto até agora

      datetime         StartDt=iTime(Symbol(),TF_iDeltaP,_Shift);
      int              N_bar=iBarShift(Symbol(),PERIOD_CURRENT,iTime(Symbol(),TF_iDeltaP,0));//номер текущего бара
      datetime         StopDt=iTime(Symbol(),PERIOD_CURRENT,N_bar+1);
 
Para onde foi a minha pergunta?
Razão: