History Downloader: Ferramenta Essencial para MetaTrader 4

Mike 2018.02.14 20:51 15 0 0
Anexo

O EA History Downloader é uma ferramenta muito útil que permite baixar o histórico de cotações do símbolo e período do gráfico atual, tudo isso com um simples "aperte o botão Home". Essa funcionalidade é baseada na ideia do script s-Downloader do Talex (link do CodeBase).

A principal diferença em relação ao s-Downloader é que apenas as barras do período atual são baixadas até o momento especificado. Na minha opinião, isso é bem mais prático, já que costumo realizar testes em um único período de tempo (o que geralmente utilizo nas minhas operações).

Nesta implementação, o EA é executado em uma única iteração do start(). Isso gerou algumas dificuldades para obter o número de barras na janela do gráfico e o horário da primeira barra. Portanto, o EA utiliza essas informações a partir de variáveis globais que são atualizadas pelo indicador HistoryDownloaderI (que está anexo). Na verdade, além de atualizar as variáveis globais, o indicador não faz mais nada :)

No anexo, você encontrará o EA (HistoryDownloader.mq4), o indicador (HistoryDownloaderI.mq4) e um arquivo compactado que contém ambos os códigos fonte + arquivos compilados (HistoryDownloader.zip).

Como utilizar tudo isso:

  • Pressione Ctrl+O para verificar o número máximo de barras no histórico e no gráfico;
  • Abra a janela do gráfico do símbolo desejado e selecione o período de tempo para o qual o histórico será baixado;
  • Desative o auto scroll e ajuste a escala para o mínimo ("afastando o zoom" ao máximo);
  • Carregue o indicador HistoryDownloaderI no gráfico;
  • Em seguida, inicie o EA.

Parâmetros do EA:

datetime ToDate - data até a qual o histórico de cotações será baixado.

int Timeout - período de espera para a atualização do gráfico, em milissegundos. O padrão é 1 segundo (1000).

int MaxFailsInARow - número máximo de tentativas consecutivas sem sucesso para "mover" o gráfico. O padrão é 10.

Fiz o meu melhor para comentar o código em detalhes. Afinal, esta é a minha primeira publicação no CodeBase.

Lista
Comentário 0