Centro de História atualizado - histórico gratuito de cotações minúsculas desde 1999 - página 8
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Infelizmente, coloque as "barras máximas no gráfico" (cerca de 3 milhões para hoje) e você pode assistir a qualquer data.
Por exemplo, somente agosto de 2005?
Você pode substituir a limitação do número de barras na janela por uma lógica mais inteligente de trocar o histórico a partir de um arquivo. Haverá um buffer para exibição se mudarmos os dados para fora deste buffer, então neste buffer é carregado um arquivo de dados do novo histórico em vez dos anteriores - ele pode ficar um pouco atrasado, é claro. Embora se todo o histórico for carregado ou como rolagem na profundidade do histórico possa ser colocado em um buffer criado pela VirtualAlloc neste caso, a memória será carregada a partir do arquivo swap dos dados aos quais o terminal acessa no momento, ao invés dos antigos que são apagados da memória e permanecem no arquivo swap - o mesmo buffer, mas no nível do sistema operacional.
Você gostaria de remover a limitação do número de barras na história e na janela em geral? Ou fazer uma caixa de seleção como ilimitada. Os usuários não teriam nenhuma dúvida sobre isso.
Você pode substituir a limitação do número de barras na janela por uma lógica mais inteligente de trocar o histórico a partir de um arquivo. Haverá um buffer para exibição se mudarmos os dados para fora deste buffer, então neste buffer é carregado um arquivo de dados do novo histórico em vez dos anteriores - ele pode ficar um pouco atrasado, é claro. Embora se todo o histórico for carregado ou como rolagem na profundidade do histórico possa ser colocado em um buffer criado pela VirtualAlloc neste caso, a memória será carregada a partir do arquivo swap dos dados aos quais o terminal acessa no momento, ao invés dos antigos que são apagados da memória e permanecem no arquivo swap - o mesmo buffer, mas no nível do sistema operacional.
Limitar o histórico também é necessário para aqueles que colocam o terminal em um servidor para comércio automatizado. Eles precisam do histórico mínimo para que os indicadores funcionem e limitem o espaço em disco.
Se você exibir todo o histórico, haverá perguntas sobre o porquê das coisas serem tão lentas.
Você pode carregar o histórico a partir de um arquivo enquanto você rola. Mas parece-me que ele abranda porque a memória é realocada através da pilha. Existem outras abordagens para reservar a memória. Recomendamos o uso da alocação de memória VirtualAlloc para grandes matrizes. O Heap pode ser usado livremente para matrizes dinâmicas que não excedam 1Mbyte
Em MT assumo que para alocação de memória use nova[] função de operador e cpymem ou malloc e realloc que então chamam HeapAlloc e HeapRealloc. Uma mensagem fora da memória aparece se você não conseguir encontrar um novo pedaço de espaço de endereço para colocar itens um após o outro (não tenho certeza sobre isto :)). Ou talvez a troca do tamanho do arquivo seja insuficiente em algum momento.
Aqui está um exemplo de como você pode usar a memória virtual para as séries de tempo em vez de pilha
Também posso dar conselhos valiosos aos lavradores sobre como arar e às mulheres sobre como dar à luz.
E eu sou o mais inteligente aqui, apesar de ser muito pobre... .
Os inteligentes usam as idéias de outras pessoas ;o) Como os japoneses depois da Segunda Guerra Mundial...