Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Twitter!
Participe de nossa página de fãs
Script interessante?
Coloque um link para ele, e permita que outras pessoas também o avaliem
Você gostou do script?
Avalie seu funcionamento no terminal MetaTrader 5
Scripts

Checking the server time changes due to the daylight saving time (DST) changeover - script para MetaTrader 5

Visualizações:
28
Avaliação:
(4)
Publicado:
Freelance MQL5 Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance


Infelizmente, descobri que alguns corretores são um pouco descuidados com a mudança de horário do servidor
devido ao horário de verão (DST), o que eu não esperava e me surpreendeu muito.

A sessão de FOREX é de exatamente 120 horas:
de domingo às 17:00 horas do horário padrão do leste (América do Norte) ou EST
a sexta-feira às 17:00 horas EST.m. EST.

O problema surge com as mudanças de horário para o horário de verão e de inverno, que não
ocorrem nos mesmos domingos nas diferentes regiões do mundo.

Por exemplo, os EUA mudam no segundo domingo de março e no primeiro domingo de novembro,
e isso também afeta o início e o fim da sessão de FOREX.

A UE muda no último domingo de março, ou seja, depois dos EUA, e no
último domingo de outubro, ou seja, antes dos EUA (consulte a linha do tempo acima).

Isso cria um período intermediário em que os EUA e a UE têm diferenças de horário diferentes
das diferenças normais de 5 horas (Londres), 6 horas (Frankfurt, CET) ou 7 horas (Chipre, EET).

Nesse período intermediário, essa alteração da diferença de horário deve ser refletida nos carimbos de horário
alterados da primeira e da última hora da sessão de FOREX. Portanto, se a sessão de FOREX começar
na segunda-feira às 00:00 (EET, horário MQ), depois que os EUA mudarem, ela deverá começar uma hora antes,
ou seja, domingo às 23:00 e terminar uma hora antes na sexta-feira, ou seja, às 23:00 (ou 22:59:59).

Mas, infelizmente, tive que descobrir (e com esse script qualquer pessoa pode verificar isso com seu corretor)
que em uma conta de demonstração do MQ e em contas de alguns corretores reais a primeira hora sempre(!) aparece
na segunda-feira às 00:00, mas a última hora, como esperado,
na sexta-feira às 23:00 (ou 22:59) ou uma hora antes. Isso significa que a primeira hora da sessão de FOREX
, na qual o negociador ou um EA poderia reagir aos eventos do fim de semana, está faltando.
Além disso, o fim da sessão de FOREX não pode mais ser determinado simplesmente adicionando 120
à primeira hora da sessão de FOREX, por exemplo, para fechar todas as posições antes do fim de semana.

Esse script agora verifica as alterações de horário do corretor no passado e registra todas as sessões de FOREX
que são obviamente incorretas (ímpares) ou não têm 120 horas. Se houver 120 horas
entre a primeira e a última hora de uma sessão de FOREX, nada será registrado.

No final, o script imprime o último carimbo de data/hora recuperado, o número de sessões ímpares
encontradas e o número aproximado de anos que foram verificados.


Leider musste ich feststellen, dass manche Broker bei der
Serverzeitumstellung etwas nachlässig sind, was ich nicht erwartet
hatte und was mich sehr überrascht hat.

Die FOREX-Sitzung dauert genau 120 Stunden:
von Sonntag 17:00 Uhr Eastern Standard Time (Nordamerika) bzw. EST
bis Freitag 17:00 Uhr EST.

Das Problem entsteht durch die Zeitumstellungen auf Sommerzeit und Winterzeit,
die in den verschiedenen Regionen der Welt nicht an denselben Sonntagen stattfinden.

Die USA stellen beispielsweise am 2. Sonntag im März und am 1. Sonntag im November um,
was auch den Beginn und das Ende der FOREX-Sitzung beeinflusst.

Die EU stellt am letzten Sonntag im März, also nach den USA, und am
letzten Sonntag im Oktober, also vor den USA, um (siehe obige Timeline).

Dadurch entsteht eine Übergangszeit, in der die USA und die EU eine andere
Zeitdifferenzen haben als die normalen Differenzen von 5
Stunden (London), 6 Stunden (Frankfurt, MEZ) oder 7 Stunden (Zypern, EET).

In dieser Zwischenzeit sollte sich diese Änderung der Zeitdifferenz in den
geänderten Zeitstempeln der ersten und letzten Stunde der FOREX-Sitzung widerspiegeln.
Wenn die FOREX-Sitzung also am Montag um 00:00 (EET, MQ-Zeit) beginnt, sollte sie
nach der Änderung in den USA eine Stunde früher beginnen, also am Sonntag um 23:00 Uhr,
und am Freitag eine Stunde früher enden, also um 23:00 Uhr (oder 22:59:59 Uhr).

Aber leider musste ich feststellen (und mit diesem Script kann das jeder bei seinem
Broker überprüfen), dass auf einem MQ Demokonto und auf Konten einiger echter Broker
die erste Stunde immer(!) am Montag um 00:00 erscheint, die letzte Stunde aber erwartungsgemäß
am Freitag um 23:00 (bzw. 22:59) oder eine Stunde früher. Damit fehlt die erste Stunde
der FOREX Session, in der Händler oder ein EA auf Ereignisse am Wochenende reagieren könnte.
Auch kann das Ende der FOREX Session nicht mehr dadurch bestimmt werden, indem einfach120 zur
ersten Stunde der FOREX Session hinzuaddiert wird, um z.B. alle Positionen vor dem Wochenende zu schließen.

Dieses Script prüft nun die Zeitänderungen des Brokers in der Vergangenheit und loggt alle
FOREX Sessions mit, die offensichtichtlich falsch (odd) oder nicht 120 Stunden sind.
Se entre
o primeiro e o último dia de uma sessão de FOREX houver 120 dias, não haverá nenhum registro no log.

No final, o Skript mostra o número de dias mais recentes, a quantidade de sessões mais recentes e a quantidade de sessões mais recentes.

Traduzido do inglês pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/en/code/55056

Zigzag fibo oscillator Zigzag fibo oscillator

Um avanço do ziguezague da MetaQuotes com um modo de oscilador, rastreamento da perna da barra atual, níveis de fibra e escalonamento dinâmico

Verificação da mudança de horário no servidor devido à transição para o horário de verão Verificação da mudança de horário no servidor devido à transição para o horário de verão

Infelizmente, descobri que alguns corretores que mudam a hora no servidor estão um pouco incorretos, o que eu não esperava e me surpreendeu muito. Aqui está um script que qualquer pessoa pode usar para verificar seu corretor.

Symbol Swap Panel Utility Symbol Swap Panel Utility

Painel de troca de símbolo: Troque sem esforço o símbolo ativo em seu gráfico e, ao mesmo tempo, adicione o novo símbolo ao Market Watch. Essa ferramenta garante uma integração perfeita e acesso a dados de mercado em tempo real, otimizando seu fluxo de trabalho de negociação.

TicksShort TicksShort

Um formato curto para armazenar ticks.