MetaTrader 4 Build 529 beta lançado com novo compilador - página 18
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
O manual da MQL4 (que está no editor) também foi atualizado de acordo?
sim com um pedido de atualização. O manual MQL4 é quase baseado em 5 e não corresponde às realidades do compilador no momento.
Corrija-me se eu me enganei.
Eu uso uma função de biblioteca em um indicador, esta função declara algumas variáveis estáticas que participam do cálculo da matriz de indicadores.
Se eu quiser alterar os parâmetros do indicador para corrigir o cálculo do indicador (dependendo das variáveis estáticas),
passar a bandeira para a função da biblioteca responsável pela reinicialização (você deve expandir os parâmetros de entrada de cada função que tenha variáveis estáticas)
fazer zeragem das variáveis estáticas no corpo, e não se esqueça de remover a bandeira antes de completar o cálculo.
Seria muito mais fácil se as variáveis estáticas tivessem algum parâmetro, definido durante sua declaração, responsável por se essas variáveis serão zeradas durante a reinicialização.
Seria muito mais simples se as variáveis estáticas tivessem algum parâmetro a ser definido quando são declaradas, responsável por se o valor dessas variáveis seria ou não reinicializado no momento da reinicialização.
Seria ainda mais fácil, se os desenvolvedores fizessem funções especiais como ResetStaticVars().
// A propósito, não é tão fácil de fazer. Eu não o faria. Uma coisa é simplesmente zerar todo o segmento de dados, e outra coisa é atribuir corretamente todos os valores iniciais do usuário. Uma dor no pescoço, no entanto.
Na verdade (como um paradigma), salvar valores durante a vida do programa é bastante conveniente. Há aqui apenas uma questão de retrocompatibilidade...
Sei que esta é uma parte do fórum que fala russo, mas como sou ruim em falar russo (embora eu possa lê-lo) espero que ninguém se importe de postar isto aqui (já que a parte em inglês parece completamente inativa no que diz respeito a estas questões e já que não vi que alguém postou sobre este assunto)
Há um problema sério com o novo metatrader que diz respeito aos parâmetros externos das cordas. Inicialmente eles têm um valor correto, mas assim que o período de tempo ou símbolo é alterado, o conteúdo de um parâmetro de string é perdido. Aqui está um exemplo simples que mostrará exatamente o que está acontecendo. Esse problema também acontece quando esses indicadores são utilizados através de iCustom() chamada e que torna qualquer indicador desse tipo inutilizável de qualquer EA ou outro código
Sim com o pedido de atualização. O manual para MQL4 é quase baseado em 5 e não corresponde às realidades do compilador no momento.
Talvez eles tenham deixado algo que está por aí num futuro próximo? conto com isso.
O manual da MQL4 (que está no editor) também foi atualizado de acordo?
Não consigo entender porque precisamos de um projeto como este
#property icon "\\Files\\button.ico"
Não consigo entender porque precisamos de um projeto como este
Sei que esta é uma parte do fórum que fala russo, mas como sou ruim em falar russo (embora eu possa lê-lo) espero que ninguém se importe de postar isto aqui (já que a parte em inglês parece completamente inativa no que diz respeito a estas questões e já que não vi que alguém postou sobre este assunto)
Há um problema sério com o novo metatrader que diz respeito aos parâmetros externos das cordas. Inicialmente eles têm um valor correto, mas assim que o período de tempo ou símbolo é alterado, o conteúdo de um parâmetro de cadeia é perdido. Aqui está um exemplo simples que mostrará exatamente o que está acontecendo. Esse problema também acontece quando esses indicadores são utilizados através de iCustom() chamada e que torna qualquer indicador desse tipo inutilizável de qualquer EA ou outro código
Mladen, é mais fácil para mim responder em russo, já que você é fluente em leitura.
Aqui está a minha solução para este problema. No meu código init() incluo a função ReInit() que reinicia aquelas variáveis globais, cujos valores devem ser restaurados quando o prazo ou o símbolo muda: