Obrigado pelo artigo.
Tenho uma pergunta. Você usa a primeira forma do indicador para otimizar os cálculos do indicador, onde há begin. Mas se você não puder usá-lo (para os cálculos corretos, você precisa de open[], high[], low[], close[] ...), como fazer? Não há begin na segunda forma.
Obrigado pelo artigo.
Tenho uma pergunta. Você usa a primeira forma do indicador para otimizar os cálculos do indicador. Mas se você não puder usá-lo (para os cálculos corretos, você precisa de open[], high[], low[], close[] ...), como será? Não há begin na segunda forma.
nem tudo é considerado, mas, em geral, ainda é interessante =)
e, especificamente, uma coisa como a otimização da chamada de indicadores técnicos não é considerada.
Acho que esse tópico é bastante relevante.
mais precisamente, como inicializar melhor o indicador técnico
Em geral, a função de verificação de dados é implementada
mas o exemplo da inicialização não é exatamente considerado
até onde se sabe pela ajuda
Нельзя обратиться к данным индикатора сразу после его создания, так как на расчет значений индикатора требуется некоторое время, и поэтому создавать хэндлы индикаторов лучше всего в OnInit(). Функция iCustom() создает соответствующий пользовательский индикатор и при успешном создании возвращает его хэндл. Пользовательские индикаторы могут содержать до 512 индикаторных буферов, содержимое которых также можно получать при помощи функции CopyBuffer(), используя полученный хэндл.
qual a melhor maneira de contornar esse recurso....
Sempre me pergunto a mesma coisa.
if (Handle == INVALID_HANDLE) Print(" Falha ao obter a alça do indicador SMA");
Se essa condição funcionar, o que devo fazer? Digamos que seja o campeonato, é isso... a unidade não correrá mais.
Eu estava me perguntando a mesma coisa o tempo todo.
Se essa condição funcionar, o que devo fazer? Digamos que seja o campeonato, é isso... a inicialização não será mais executada.
Sim! É um fato não documentado, eu também não sabia disso! Definitivamente, deveríamos dar uma olhada nisso! Mas é mais fácil para mim, vou colocar todos os perus no próprio Expert Advisor e pronto, para que o Expert Advisor corra como um velocista em distâncias de maratona e não tropece em lugar nenhum e nunca!
Sempre me pergunto a mesma coisa.
Se essa condição funcionar, o que devo fazer? Digamos que seja um campeonato, é isso... a inicialização não será mais executada.
- www.mql5.com
Em primeiro lugar, obtenha o código de erro e envie-o para o registro. Em seguida, tente acessá-lo novamente em OnTick() ou OnCalculate(). Se você não conseguir obter o identificador do indicador, provavelmente esse indicador não existe ou não tem memória. Nesse caso, o Expert Advisor não tem o direito de negociar.
Bem, aqui estamos nós, podemos fazer isso sozinhos! Em tal situação, se pudéssemos fazer com que a função OnInit() retornasse menos um para chamar OnInit() novamente e assim por diante até que o identificador aparecesse! Mas agora está claro que, se você não sobrecarregar seu computador, não haverá motivo para não obter o identificador. Mas eu já vi isso uma vez ao atualizar uma compilação, e isso pode ser resolvido recompilando o indicador!
- www.mql5.com
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Novo artigo Os princípios do cálculo econômico de indicadores foi publicado:
Chamadas para usuário e indicadores técnicos ocupam um espaço muito pequeno no código do programa dos sistemas de negócio automatizado. Geralmente, são apenas algumas linhas de código. Mas, o que geralmente acontece é que essas poucas linhas de código são as que usam a maior parte do tempo, tempo que precisa ser gasto em teste do Expert Advisor. Então, tudo que está relacionado com cálculos de dados dentro de um indicador, precisa ser considerado mais a fundo do que só ser visto de relance. Este artigo falará precisamente sobre isso.
Autor: Nikolay Kositsin