Londres Break-out - página 3

 
gchrmt4:
Como, usando apenas as informações que o MT4 fornece, você sabe que o corretor estava no GMT+2 na semana passada?


Porque hoje, o offset para GMT é +3 com ajuste de horário de verão, então na semana passada, quando o corretor estava no horário padrão, o offset era +2.

A única diferença é o horário de verão.

 
SDC:

A abordagem de senso comum seria o servidor MT4 usar o GMT o tempo todo, mas você sabe que eles não vão fazer isso.


Acho que o MT4 deveria codificar o fuso horário e o ajuste do horário de verão em sua estrutura horária. Isso permitiria que a hora histórica fosse usada com precisão :)
 
Thirteen:


Porque hoje, o offset para GMT é +3 com ajuste de horário de verão, então na semana passada, quando o corretor estava no horário padrão, o offset era +2.

A única diferença é o horário de verão.

Vou colocar de outra forma: como, usando apenas as informações que a MT4 fornece, você sabe que o corretor se mudou para a DST na programação dos EUA em vez da programação européia (ou não mudou em absoluto)? Como você sabe que eles não estão atualmente no horário de inverno e se mudarão no dia 30 de março?
 

gchrmt4:
[1] how . . . do you know that the broker moved to DST on the US schedule rather than the European schedule (or not at all)?

[2] Como você sabe que eles não estão atualmente no horário de inverno e se moverão no dia 30 de março? Ou que eles não estão usando o GMTZ constante?
  1. Como declarei em meu primeiro posto, o corretor declarou que ele se muda para a DST no horário dos EUA, não no horário da UE.
  2. O corretor declara que é GMT+2 durante o horário padrão. Além disso, usando o novo TimeGMT(), a compensação do servidor para GMT pode agora ser facilmente calculada.
 
Thirteen:
  1. Como afirmei em meu primeiro posto, o corretor declarou que ele se muda para a DST no horário dos EUA, não no horário da UE.
  2. O corretor declara que é GMT+2 durante o horário padrão. Além disso, usando o novo TimeGMT(), a compensação do servidor para GMT pode agora ser facilmente calculada.
Isso não é informação que a MT4 está fornecendo. São informações que você está fornecendo porque sabe qual corretor você está utilizando. Você não poderia, por exemplo, dar a outras pessoas um código para ser executado em um servidor de corretor desconhecido que depois converteu de forma confiável os tempos históricos para GMT (ou, via GMT, para outro fuso horário, como Londres).
 
gchrmt4:
Isso não é informação que o MT4 está fornecendo. Essas são informações que você está fornecendo porque sabe qual corretor está usando. Você não poderia, por exemplo, dar a outras pessoas um código para ser executado em um servidor de corretor desconhecido que depois converteu de forma confiável os tempos históricos para GMT (ou, via GMT, para outro fuso horário, como Londres).

... Levando-nos de volta ao OP, como você propõe dar-lhes uma amostra de código que será executada de forma confiável em qualquer servidor de corretagem que ele estiver usando, a fim de determinar os horários e preços de Londres?

O único ponto que tenho tentado fazer o tempo todo é que, sim, você pode fazer conversões para GMT ou outros fusos horários se você souber a compensação de origem, mas o MT4 não oferece nenhuma alternativa confiável para pedir algum tipo de informação ao usuário sobre as configurações de horário do corretor.

 

Você pode obter a compensação local GMT a partir do Windows. A comparação simples dará a você a compensação dos corretores sem pedir a entrada do usuário.

 
Muito obrigado por todos os comentários! Darei uma atualização quando minha EA estiver pronta! com minha curva de aprendizado para MQL4 espero que até o final deste ano ;-)
 
Nour:
Muito obrigado por todos os comentários! Vou dar uma atualização quando minha EA estiver pronta! com minha curva de aprendizado para MQL4 espero que até o final deste ano ;-)
a partir do link https://docs.mql4.com/series/ibarshift que lhe dei

Exemplo:

datetime some_time=D'2004.03.21 12:00';
int shift=iBarShift("EURUSD",PERÍODO_M1,some_time_time);
Print("shift of bar with open time ",TimeToStr(some_time)," é ",shift);

quando é que Londres abre que fuso horário é esse ??

Qual foi a hora do corretor hoje na hora de abertura de Londres ?? some_time= .................

A que horas seu corretor teve esse momento....

 
Observe que, para qualquer cálculo GMT, os testes de retrocesso muitas vezes têm que ser tratados de forma diferente dos testes de avanço.