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
Bibliotecas

Auto otimizador - biblioteca para MetaTrader 4

Visualizações:
1073
Avaliação:
(19)
Publicado:
2016.06.10 15:05
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance

O artigo detalhado sobre o uso da biblioteca do auto otimizador e os princípios de funcionamento podem ser encontrados aqui: https://www.mql5.com/pt/articles/1467

Código para inserir no seu conselheiro:

//----
extern int SetHour   = 0;                 //Hora de início da otimização 
extern int SetMinute = 1;                 //Minuto inicial da otimização 
int    TestDay       = 3;                 //Número de dias para otimização 
int    TimeOut       = 4;                 //Tempo de espera do fim da otimização, em minutos
string NameMTS       = "Expert_Name";     //Nome do seu conselheiro
string NameFileSet   = "SetFileName.set"; //Nome do arquivo com as configurações de conjunto
string PuthTester    = "PathTester";      //Caminho para o testador
//--- Ordem de filtragem
int    Gross_Profit   = 1;                //Classificação por lucro máximo
int    Profit_Factor  = 2;                //Classificação por fator de lucro máximo
int    Expected_Payoff= 3;                //Classificação pela máxima recompensa esperada
//--nomes das variáveis ​​para a otimização
string Per1 = "variables_1";
string Per2 = "variables_2";
string Per3 = "variables_3";
string Per4 = "variables_4";
bool StartTest=false;
datetime TimeStart;
//--- Incluem a biblioteca do auto otimizador
#include <auto_optimization.mqh>
 
//----
Código para inserir a função start()

//----
// Não para ser lançado em testes e otimização   
if(!IsTesting() && !IsOptimization())
  {
    // Comparação da hora atual com a predefinição para a execução
    if(TimeHour(TimeLocal()) == SetHour)
      {
        // Proteção contra a reinicialização
        if(!StartTest)
          {
            // Comparação da faixa minuto com a hora predefinida para a execução
            if(TimeMinute(TimeLocal()) > SetMinute - 1)
              { 
                // a faixa é necessária, se por algum motivo 
                // não há nenhum tick novo disponível por um longo tempo
                if(TimeMinute(TimeLocal()) < SetMinute + 1)
                  {
                    TimeStart = TimeLocal();
                    StartTest = true;   // Bandeira da execução do testador
                    Tester(TestDay, NameMTS, NameFileSet, PuthTester, TimeOut, 
                           Gross_Profit, Profit_Factor, Expected_Payoff, Per1, 
                           Per2, Per3, Per4);
                  }
              }
          }
      }
    variables_1 = GlobalVariableGet(Per1);
    variables_2 = GlobalVariableGet(Per2);
    variables_3 = GlobalVariableGet(Per3);
    variables_4 = GlobalVariableGet(Per4);
  }
// Se a execução do testador está sinalizada (bandeira)
if(StartTest)
  {
    // Se passou mais tempo, a partir da execução, do que foi definido para espera 
    // teste
    if(TimeLocal() - TimeStart  > TimeOut*60)
      {
        StartTest = false;  // Zero para a bandeira
      }
  }
//----
                        
          

 

Foi adicionada uma biblioteca de auto otimizador modificada para o 204 Build -а  auto_optimization_204.mqh 
Nesse sentido, o código para chamar a biblioteca será o seguinte

//--- Incluem a biblioteca do auto otimizador
#include <auto_optimization_204.mqh>

Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/7090

s_wininet s_wininet

Exemplo de como usar o wininet.dll para carregar uma página web.

Conjunto de scripts WaveMarker Conjunto de scripts WaveMarker

Conjunto de scripts para desenho rápido das ondas de Elliot.

Conversão de arquivos hst para arquivos csv Conversão de arquivos hst para arquivos csv

O script hst2csv é usado para converter arquivos *.hs para arquivos *.csv que podem ser importados sem erros para o terminal do cliente MetaTrader 4.

Análise do histórico na presença de buracos e rompimentos Análise do histórico na presença de buracos e rompimentos

O script history_data_analysis_v3 verifica no histórico a ausência de barras, define o tamanho do buraco, dos rompimentos e faz uma lista dos mesmos.