MetaTrader 4 Build 529 beta lançado com novo compilador - página 110

 
VOLDEMAR:

E os catálogos em MQL não são exibidos em russo

Acho que está claro o que está errado.

Há algo compilado e executável em seu catálogo, coincidentemente nomeado em russo?

 

Oi!
Otimização e até mesmo testes de EAs falham quase o tempo todo. Os registros mostram erros "Memory handler: não pode alocar 292094340 bytes de memória" com números diferentes.

MT constrói 555-556, não tentei antes. Instalado em C:\Program Files\Alpari MT4" sob direitos de administrador. Funciona com os mesmos direitos de administração. Eu baixei o instalador da versão 509 da Alpari. Em seguida, prescreveu o servidor especificado na primeira página do tópico e a conta demo MQ. Após a atualização, devolvi o servidor de demonstração e a conta de demonstração da Alpari. Eu também carrego citações da Alpari - elas carregaram e recalcularam com sucesso.

Anteriormente eu otimizei o Expert Advisors no 400o. construído no mesmo PC com o mesmo sistema usando o histórico de 1-2 anos em quatro cópias do terminal com pares diferentes, cada uma em seu próprio kernel. Esteve em funcionamento por várias horas. Eu estava assistindo filmes ou fazendo algo na Internet/editor.

A 556ª construção nem sempre pode executar um único teste de um simples Expert Advisor demo construído no terminal na história de setembro-outubro em um ou cinco minutos. Um erro relativo à memória aparece no registro e as aspas para testes não são carregadas na memória. Durante a otimização, todas as iterações são passadas quase imediatamente. Os zeros aparecem em todos os resultados de otimização e nenhuma negociação é aberta. Ao testar em modo de visualização, podemos ver citações apenas até a data do teste inicial. As citações não são exibidas durante o período de teste. Às vezes, após uma tentativa de otimização, as citações para um período de tempo (minutos) no "Quote Archive" simplesmente desaparecem e o refrescamento/recálculo não ajuda. As citações só aparecem depois de reiniciar o terminal. Eu tenho tempo para fazer alguns testes ou otimização uma ou duas vezes após o reinício do MT e depois os mesmos erros novamente.
Tentei especificar nas "Configurações" o número de barras a serem carregadas na história de 1 a 10 milhões. Tentei definir o número de barras no gráfico entre 10 e 100 mil - isso não ajuda.

Meu sistema Windows XP 32 bits, processador Core i5 com quatro núcleos. Tenho 4 gigs de memória (a verdadeira memória disponível é de 3,3 gigs). O arquivo de troca está desativado.
O Task Manager mostra 1,2 a 2,5 gigs de uso de memória (quando o terminal está aberto, dependendo de outras aplicações em execução). Portanto, há sempre cerca de 1-2 shows gratuitos. Memória de processo terminal: 115 megabytes de RAM, máximo 400 megabytes, 120 megabytes virtuais.
A memória e outros equipamentos funcionam bem, em jogos pesados quase toda a memória é utilizada - sem problemas.

Qual pode ser a razão?

 
erch:

Noite, veja os preços de abertura. Eles são tão exorbitantes. Você deve ter uma Dist=1000.


Hi!

Sim, você está certo sobre os preços, mas Dist = 10.

Eu não entendo o que está acontecendo. Total inadequação. Ontem, as corujas agiam assim:

1. aberto ao preço certo com TP = 0 e SL = 0. Tudo é como deveria ser.

2. Em seguida, eu defino os TPs. Para vender tudo de acordo com os parâmetros estabelecidos, para comprar tudo é um disparate, então ele atribui o valor de 100.000, depois de 10000.000, depois de 1000.000.

3. Então tudo é recalculado como deveria ser.

Hoje o mesmo código funciona ainda pior.

Preços abertos - você vê, TP para venda não é recalculado de forma alguma. Eu não entendo o que ele quer....

 

A lona está se comportando de forma estranha agora. Este código funcionou há várias construções:

int OnInit() {

   EventSetTimer(60);//создание таймера

   ResetLastError(); //устанавливает значение предопределенной переменной _LastError в ноль
   CCanvas* Label=new CCanvas();
   bool fc=Label.CreateBitmapLabel("MyLabel",150,150,250,150,COLOR_FORMAT_ARGB_NORMALIZE);
   if(fc) {
некоторый код
   }
   else {
      int err=GetLastError();
      Print("Label.CreateBitmapLabel create ERROR : ",ErrorDescription(err));
   }
   delete Label;

   return(INIT_SUCCEEDED);
}

Agora ele gera um erro:

2013.12.10 16:14:16.981 teste EURUSD,H1: Label.CreateBitmapLabel create ERROR : valor de parâmetro de função inválido
Já examinei tudo, por que ele diz que os parâmetros estão errados?

 
stringo:

Exibido.


Dar detalhes


A partir dos detalhes, construir 556

trabalhando a partir de um flash drive

 
VOLDEMAR:


A partir dos detalhes construir 556

trabalhando a partir de um flash drive


No MetaEditor navigator você pode ver que esta pasta está vazia. E a outra pasta também está vazia. É por isso que eles não aparecem no navegador do terminal do cliente.
 
Barbarian:

A lona está se comportando de forma estranha agora. Este código funcionou há várias construções:

Agora ele dá um erro:

2013.12.10 16:14:16.981 teste EURUSD,H1: Label.CreateBitmapLabel create ERROR : valor de parâmetro de função inválido
Procurei em todo lugar, por que diz que os parâmetros estão errados?


Erro em nosso código. Já está fixado.

Por favor, aguarde a próxima construção

 
stringo:

No navegador do MetaEditor, você pode ver que esta pasta está vazia. A outra pasta também está vazia. É por isso que eles não são exibidos no navegador do terminal do cliente.


Tenho tudo funcionando,

Mas há um inconveniente, copiar arquivos de pasta para pasta diretamente pelo mouse no MetaEditor apenas o arquivo fonte é movido, enquanto o executável permanece .....

 
VOLDEMAR:


Sim, funcionou bem,

Mas há um inconveniente, copiar arquivos de pasta em pasta diretamente pelo mouse no metadvisor apenas move o arquivo fonte e o executável permanece ....


No meta editor colocou uma marca de verificação "mostrar todos os arquivos".

 
Night63:


Hi!

Sim, você está certo sobre os preços, mas Dist = 10.

Eu não entendo o que está acontecendo. Total inadequação. Ontem, as corujas agiam assim:

1. aberto ao preço certo com TP = 0 e SL = 0. Tudo é como deveria ser.

2. Em seguida, eu defino os TPs. Para vender tudo de acordo com os parâmetros estabelecidos, para comprar tudo é um disparate, então ele atribui o valor de 100.000, depois de 10000.000, depois de 1000.000.

3. Então tudo é recalculado como deveria ser.

Hoje o mesmo código funciona ainda pior.

Preços abertos - você vê, TP para venda não é recalculado de forma alguma. Eu não sei o que ele quer....

Você já tentou remover o recálculo de 4 a 5 dígitos e TakeProfit em variáveis globais e ModifyOrder( duplo TakeProfit)?

O compilador deveria estar jurando ou não?

Razão: