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

 
stringo:
Como pode ser reproduzido? (Não podíamos).

Não fez nada de especial.

Faço um teste, espero que ele termine, compilar, limpar o tronco, executar novamente. Em algum momento, ela cai.

 
komposter:

Não fez nada de especial.

Faço um teste, espero que ele termine, compilar, limpar o tronco, executar novamente. Em algum momento, ela cai.


O mais provável é que seja por causa de sua notória proteção de código, que eles nunca querem desligar, para que cada um decida por si se precisa ou não.
 

Acabo de testar o build 546 (20 de novembro de 2013) e minha própria EA em MQL4 compila bem. No entanto, estou recebendo pilhas de erros ao fazer um backtest para ele, ele usa o indicador interno Bolinger Bands do MT4, nada mais, mas a revista está cheia de erros:


2013.11.20 22:15:26.624 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:26.624 Manipulador de memória: não pode alocar 8754048 bytes de memória
2013.11.20 22:15:26.604 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:26.604 Manipulador de memória: não pode alocar 8754048 bytes de memória
2013.11.20 22:15:26.107 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:26.107 Manipulador de memória: não pode alocar 8754048 bytes de memória
2013.11.20 22:15:26.105 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:26.105 Manipulador de memória: não pode alocar 8754048 bytes de memória
2013.11.20 22:15:25.903 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:25.903 Manipulador de memória: não pode alocar 8754048 bytes de memória
2013.11.20 22:15:25.895 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:25.895 Manipulador de memória: não pode alocar 8754048 bytes de memória
2013.11.20 22:15:25.811 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:25.811 Manipulador de memória: não pode alocar 8754048 bytes de memória
2013.11.20 22:15:25.811 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:25.811 Manipulador de memória: não pode alocar 8754048 bytes de memória
2013.11.20 22:15:25.811 Memória insuficiente para o indicador Bandas de Bollinger (EURUSD,M5)
2013.11.20 22:15:25.811 Manipulador de memória: não pode alocar 8754048 bytes de memória

Ele imprime isso o tempo todo enquanto executa o backtest (bar aberto somente de 1999 a 2013 no EURUSD). Na atual construção oficial do MT4, o backtest leva 6 segundos para o intervalo de tempo mencionado na barra de 5M aberta e não cria erros. Também me pergunto por que não seria capaz de alocar 8 megabytes de memória, todo o processo terminal leva apenas 20 megabytes e eu tenho cerca de 7 gig de RAM livre e como o MT4 é um processo de 32 bits, ele pode levar até 2 gig de memória. Portanto, a alocação desses 8mb não deve ser um problema e certamente é um bug, uma vez que na construção 509 tudo funciona bem.

Bem claro, é um BETA, mas isto parece mais um alfa se não mesmo os indicadores MT4 internos funcionam corretamente em um backktest.

O que eu também notei, em geral tudo parece ser MUITO mais lento do que na construção 509. Por exemplo, executar o script Period_Converter_Auto (que cria todos os cronogramas a partir dos dados M1), leva cerca de 3 minutos no Build 546, enquanto leva 20 segundos no Build 509.
 
dabugen:

O que eu também notei, em geral tudo parece ser MUITO mais lento do que na construção 509. Por exemplo, executar o script Period_Converter_Auto (que cria todos os cronogramas a partir dos dados M1), leva cerca de 3 minutos no Build 546, enquanto leva 20 segundos no Build 509.

Remover do period_converter_auto as linhas de origem sobre FileFlush e script serão executadas muito mais rapidamente

         FileWriteInteger(ExtHandle, i_time, LONG_VALUE);
         FileWriteDouble(ExtHandle, d_open, DOUBLE_VALUE);
         FileWriteDouble(ExtHandle, d_low, DOUBLE_VALUE);
         FileWriteDouble(ExtHandle, d_high, DOUBLE_VALUE);
         FileWriteDouble(ExtHandle, d_close, DOUBLE_VALUE);
         FileWriteDouble(ExtHandle, d_volume, DOUBLE_VALUE);
         //FileFlush(ExtHandle);
 
stringo:

Remover do period_converter_auto as linhas de origem sobre FileFlush e script serão executadas muito mais rapidamente


Slava, aqui está um tema muito antigo: por que o Flush() é tão lento em mql5 ?

No antigo mql4 é muito mais rápido, muitas vezes mais rápido.

 

Há novos indicadores e especialistas para o mt4 no site da 5 (também há outros gratuitos)

1) eles não são visíveis no marcador através do terminal (exceto para 2 produtos);

2) No site 5K quando tento baixar um produto que não está no terminal de marcação, vejo no mesmo terminal "MQL4 Marketproduct'C' does not exist" (aparando o nome do produto com a 1ª letra);

3) Por algum motivo, o indicador MA foi colocado na categoria Especialistas.

 
ALXIMIKS:

Há novos indicadores e especialistas para o mt4 no site da 5 (também há outros gratuitos)

1) eles não são visíveis no marcador através do terminal (exceto para 2 produtos);

2) No site 5K quando tento baixar um produto que não está no terminal de marcação, vejo no mesmo terminal "MQL4 Marketproduct 'C' does not exist" (aparando o nome do produto com a 1ª letra);

3) Por algum motivo, o indicador MA foi colocado na categoria Especialistas.


Eles são produtos de teste para testes internos.

1. Eles devem aparecer no terminal durante 24 horas.

2. Verifique.

3. Moving Average é um Expert Advisor de teste baseado em um indicador de MA. Vamos corrigir a descrição.

 
Uma tentativa de baixar este produto da demonstração do Mercado e colocá-lo no gráfico falhou: "2013.11.21 11:53:08.631 Mercado\macd_line_smart EURUSD,H1: Licença inválida"...
 
evillive:
Uma tentativa de baixar este produto da demonstração do Mercado e colocá-lo no gráfico falhou: "2013.11.21 11:53:08.631 Mercado\macd_line_smart EURUSD,H1: Licença inválida"...

A demonstração só funciona no testador, e no gráfico só funcionará a versão que você comprar.
 
E quanto a isso, eu não sabia.
OmegaTube:

A demonstração só funciona no testador e somente a versão que você comprar funcionará no gráfico.

Nah, ainda não funciona, testador em modo visual - janela indicadora vazia, algo sem nome na lista de indicadores sem configurações de parâmetros e novamente no log do terminal o mesmo erro de licença...