[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 456

 
peshihod:


Como uma continuação do tema.

É preciso prática para aprender.

Faça o seguinte no terminal comercial:
1.Uma conta demo deve ser aberta.
Digite os detalhes da conta no terminal comercial: Arquivo->Login->...
2.Use uma tabela aberta ou abra uma nova: Arquivo->Novo_carta->...
3.Definir o máximo em: Serviço->Configurações->Cartões->Histórico de barras máximas->250000
4.Definir o período de um minuto: Gráficos->Período->M1_Um_minuto
5.Update: Gráficos->Refresh
6.Teste de Estratégia Aberta: View->Estratégias_de_teste
Feche todas as outras janelas, deixe uma janela com um gráfico e a janela do Testador de Estratégia.
------------------
Em seguida, no Testador de Estratégia, nas configurações:
7.Símbolo: Selecione o símbolo, cuja tabela está aberta.
8.Modelo: Por preços abertos (.....)
<<Este modelo a ser utilizado até que não haja nenhuma função OrderSend() no programa.
9.Data de uso: caixa de seleção.
Data: _de:<Ontem(exceto sábado e domingo)>, _a:Hoje
10.Visualização: remover carrapato, se houver.
11.Período: M1
12.Otimização: remover carrapato, se presente.
---------------------
Em seguida, abra o MetaEditor:
13.No menu do terminal comercial: Service->Editor_MetaQuotes_Language
14. Escreva um programa, por exemplo:
//=====================

//=============================

15 No MetaEditor, no menu: File->Save_as: dê um nome de arquivo, salve a extensão .mq4, a pasta deve ser 'experts'.
16.No MetaEditor no menu: File->Compile
---------------------------------------
Em seguida, no testador, nas configurações:
17.Advisor: encontrar e selecionar o nome do arquivo do programa.
18. clique com o mouse no botão 'Start'.
19.
Após verificar as mensagens Print(), vemos o resultado da operação de aplicação.
-----------------------------------------
Para uma visualização mais fácil:
20. Clique com o botão direito do mouse em qualquer linha do log->Open
Isto abrirá a pasta de logs com um arquivo *.log, que você pode abrir com qualquer editor de texto, Bloco de Notas, Word, etc.

PS
Se o arquivo for muito grande e nenhum editor de texto for capaz de abri-lo, exclua este arquivo usando os recursos do Windows e reinicie o programa pressionando o botão "Start" no terminal comercial. Pasta do testador: "...Registros de instalação", não confundir com outro: "...Registros de instalação".

PPS
Para aprender a programar, você precisa de um compilador de linguagem de programação que transforme a escrita textual das ações necessárias em um "programa" (legível pelo ser humano), em uma linguagem de comandos de máquina -- compreensível para um computador. Sem a prática, é impossível aprender. Mql4 não cria programas separados, *.mq4 se transforma em *.ex4, que é executado a partir de um shell de programa.
*.ex4 não pode ser executado diretamente, o algoritmo descrito acima contorna este ponto.


Por que tudo isso?
 
boris.45:

Olá a todos, estou pedindo ajuda a comerciantes experientes para otimizar corretamente uma EA...

Não há resposta para sua pergunta, pelo menos eu passo... Você só pode pegar pontos individuais, por exemplo, em discussões e ler artigos na seção "testador", após o que você terá mais perguntas.
 
Outra pergunta. Que funções podem ser usadas para processar o histórico de pedidos fechados
 
boris.45:

Olá a todos, estou pedindo a ajuda de comerciantes experientes para a questão de otimizar corretamente um Expert Advisor. Eu escrevi um consultor especializado em dois slides em movimento. Na primeira etapa eu fixei um período longo de mudança e ao mudar um valor de um período de mudança com um período pequeno eu encontrei períodos de mudança ideais para obter o máximo lucro. Obtive a rentabilidade de menos de 1,5, e o drawdown dentro de 10 por cento. Testei usando estes parâmetros para o próximo intervalo de tempo e obtive cerca de 70 por cento de lucro, mas com grandes drawdowns. Obviamente, eu não poderia trabalhar com drawdowns de 10%. Na segunda etapa introduzi o indicador ADX para controlar a velocidade da mudança de tendência, as médias móveis e o controle dos níveis de preços em diferentes tipos de tendências. Como resultado da otimização, obtive uma rentabilidade não pior do que 3,5 e a relação de drawdown não superior a 3%. Ao testar com base em parâmetros ótimos, obtive uma ausência completa de acordos com parâmetros ótimos muito bons e uma perda da conta com parâmetros ótimos piores. Pelo que entendi, ajustei os parâmetros do meu consultor especializado aos parâmetros de preços estatísticos. Procurei em duas dúzias de Consultores Especialistas em Kodobase, li artigos publicados e li uma série de livros sobre comércio em meu tempo, e a questão do método correto de otimização especializada está faltando em todos os lugares. O problema: como encontrar a "média dourada" entre otimizar os parâmetros e ajustá-los em um período de tempo específico? Talvez alguém conheça o site certo, o artigo ou apenas compartilhe sua experiência prática na solução deste problema?

Obrigado por sua atenção, espero por sua ajuda.



Veja aqui, e procure "Como otimizar um EA corretamente" site:mql4.com.
 

demlin:
Еще вопрос. Какими функциями можно обработать историю по закрытым ордерам

 for (orderIndex = (OrdersHistoryTotal() - 1); orderIndex >= 0; orderIndex--)
   {   
      if (!OrderSelect(orderIndex, SELECT_BY_POS, MODE_HISTORY))
      {
         Print("Ошибка при доступе к исторической базе (",GetLastError(),")");
         continue;
      }
   
      if ((OrderSymbol() != Symbol()) || (OrderMagicNumber() != MagicNumber))
      {
         continue;
      }
      
        
   //-------------------------Принимаем в расчет только ордер, закрытый недавно-----------------------
if(time<OrderCloseTime())     //(сравниваем его с хранящимся в пероеменной time) 
  {
    time=OrderCloseTime();     //если время закрытия ордера больше - ложим его в переменную
         
         
     
         int lastType = OrderType();
         double lastLots = OrderLots();
         double lastProfit = OrderProfit() + OrderSwap();
         
        // Print ("lastProfit = ", NormalizeDouble(lastProfit, 1));
  ....
......
......
       
Exemplo. Ousado.
 
semiromid:

Para que serve tudo isso?


1. Quando você adiciona seu comentário, não precisa repetir tantas linhas, quanto menos repetição, melhor.

2. Você pode encontrar um compilador C++ e aprender lá.

 
boris.45:

Olá a todos, estou pedindo a ajuda de comerciantes experientes para a questão de otimizar corretamente um Expert Advisor. Eu escrevi um consultor especializado em dois slides. Em

...............................................................................

Escrevi um consultor especializado em dois cronogramas deslizantes, ou seja, sobre o cronograma? Talvez alguém conheça o site certo, o artigo ou apenas compartilhe sua experiência prática na solução deste problema?

Obrigado por sua atenção, espero por sua ajuda.


Eu mesmo tenho me esforçado muito para isso. Não creio que alguém possa fazer isso melhor do que o autor.
 
Roman.:
Exemplo. Ousado.
Não vai ser suficiente(((.
 
peshihod:


1. Ao acrescentar seu comentário, não repita tantas linhas, quanto menos repetição, melhor.

2. Você pode encontrar um compilador C++ e aprender lá.


Você se encarrega da limpeza do fórum e cria seus próprios comentários de inundação. Você escreveu um manual sobre como usar... papel higiênico...MetaEditor e o Testador de Estratégia. Estas informações ajudarão todos os novatos do fórum a aprender a linguagem de programação mql4.

Você sabe ...Pare de intimidar o(s) recém-chegado(s)!!!

Se você não quer ajudar, não quer falar diretamente, não sabe como explicar, então você vai direto para outro tópico "Tema: Para Programadores Virtuosos". Você vai ficar entediado lá? É claro, faz você se sentir como Bill Gates entre os recém-chegados.

Por favor, não responda mais nenhuma pergunta. Eu posso aprender sem você.

 
semiromid:

Por favor, não me responda novamente.

Por favor, não peça mais nada.
Razão: