Controle de Memoria ( Lista e Ponteiros )

 

Ola Pessoal, estou desenvolvendo um Robo, e utilizo lista e ponteiros, o que tem diminuido e muito o consumo de memoria, porem gostaria de saber como eu consigo consultar dentro do propio ROBO, visto que utilizo o progrma do windows para monitorar a quantidade de memoria. 

A intencao é, a partir de um valor configurado, liberar todos os Arrays e Objetos que ficaram carregando muito o MEta5. 


Desde ja agradeco pessoal, minha primeira vez que entro no forum, uso muito para consultas .. é muito bom fazer parte deste Grupo ... e vamo pra cima do Dolar pessoal !!!

abc

 
sandrolho:

Ola Pessoal, estou desenvolvendo um Robo, e utilizo lista e ponteiros, o que tem diminuido e muito o consumo de memoria, porem gostaria de saber como eu consigo consultar dentro do propio ROBO, visto que utilizo o progrma do windows para monitorar a quantidade de memoria. 

A intencao é, a partir de um valor configurado, liberar todos os Arrays e Objetos que ficaram carregando muito o MEta5. 


Desde ja agradeco pessoal, minha primeira vez que entro no forum, uso muito para consultas .. é muito bom fazer parte deste Grupo ... e vamo pra cima do Dolar pessoal !!!

abc


Olá, me parece um esforço enorme e de risco, se o ganho não for realmente relevante.

Você já fez testes de code profiling com seu robô para ver onde é realmente o gargalo que está sobrecarregando ele?

 
Rogerio Figurelli:

Olá, me parece um esforço enorme e de risco, se o ganho não for realmente relevante.

Você já fez testes de code profiling com seu robô para ver onde é realmente o gargalo que está sobrecarregando ele?


Ola Rogerio !!.. Obrigado pela Força !!


Entao, eu ainda estou fazendo a "Fundação do Edificio", ou seja, apenas montando os dados que o Robo analisará para realizar as entradas,. na verdade estou até incluindo informacoes vindo de outras ferramentas, de TR(TapeReading),.. com isso, terei mais informações para tomadas de decisão. Porem o que ocorre, qdo chega um determinado momento, os Arrays, mesmo dinamico estao grandes devido a qtd de informacoes do Mercado,ticks.... Minha ideia seria colocar um parametro ex:


  if ( MEMUTILIZADO > CONFIGURADO ) -> Liberar os mais antigos .. 


  Vejo muitas Analises baseadas em Medias, achei legal e testei,...mas confesso que pretendo colocar informacoes de TR dentro do META, não vi muita coisa com isso , alias apenas um no mercado.



Abcs

Sandrolho

 
sandrolho:

Ola Rogerio !!.. Obrigado pela Força !!


Entao, eu ainda estou fazendo a "Fundação do Edificio", ou seja, apenas montando os dados que o Robo analisará para realizar as entradas,. na verdade estou até incluindo informacoes vindo de outras ferramentas, de TR(TapeReading),.. com isso, terei mais informações para tomadas de decisão. Porem o que ocorre, qdo chega um determinado momento, os Arrays, mesmo dinamico estao grandes devido a qtd de informacoes do Mercado,ticks.... Minha ideia seria colocar um parametro ex:


  if ( MEMUTILIZADO > CONFIGURADO ) -> Liberar os mais antigos .. 


  Vejo muitas Analises baseadas em Medias, achei legal e testei,...mas confesso que pretendo colocar informacoes de TR dentro do META, não vi muita coisa com isso , alias apenas um no mercado.



Abcs

Sandrolho


Usando estas funcoes resolvi .... 

https://www.mql5.com/pt/docs/standardlibrary/tradeclasses/cterminalinfo

Documentação sobre MQL5: Biblioteca Padrão / Classes de negociação / CTerminalInfo
Documentação sobre MQL5: Biblioteca Padrão / Classes de negociação / CTerminalInfo
  • www.mql5.com
Biblioteca Padrão / Classes de negociação / CTerminalInfo - Referência sobre algorítimo/automatização de negociação na linguagem para MetaTrader 5
 
sandrolho:

Usando estas funcoes resolvi .... 

https://www.mql5.com/pt/docs/standardlibrary/tradeclasses/cterminalinfo

Olá sandrolho,

Aparentemente o problema já foi resolvido.

O cominho é esse mesmo: usar as funções de informação do terminal, como por exemplo:

https://www.mql5.com/pt/docs/standardlibrary/tradeclasses/cterminalinfo/cterminalinfomemoryused

Abraços,
Malacarne

Documentação sobre MQL5: Biblioteca Padrão / Classes de negociação / CTerminalInfo / MemoryUsed
Documentação sobre MQL5: Biblioteca Padrão / Classes de negociação / CTerminalInfo / MemoryUsed
  • www.mql5.com
Biblioteca Padrão / Classes de negociação / CTerminalInfo / MemoryUsed - Referência sobre algorítimo/automatização de negociação na linguagem para MetaTrader 5
Razão: