Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 141
![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
Muito obrigado! Funciona.
Explicar a lógica do mql5. Em mql4, int Hora() é usado para determinar o tempo em horas. Em mql5, não existe tal constante, tanto quanto eu entendi.
1.Como é que o programa reconhece que estamos a pedir o tempo em horas? Presumo deMqlDateTime?
2.Para adicionar a hora actual em minutos à hora actual em horas, ou seja, para descobrir a hora actual em minutos, a construção seria assim
1. Sim
2. Certo.
Segundo dia de reformulação da EA de mql4 para mql5.
1. Preciso de encontrar a hora de abertura do bar diário em segundos a partir de 01.01.1970. Encontrei a função no fórum:
Não tenho a certeza se a função encontra a hora da última ou da primeira barra.
A hora é exibida como o início do dia de negociação, sob a forma de data e hora.
Encontrei a função StringToTime; parece fazer o que preciso mas tentei combinações diferentes e agora sinto-me como um chimpanzé que não consegue compreender que botão carregar para abrir a porta à maçã.
3. Não tenho funções iBarShift, iLow, iLowest em mql5. Poderia aconselhar como encontrar o mínimo durante um determinado período de tempo todos os dias ou que funções emmql5 devem ser utilizadas para resolver este problema?
Segundo dia de reformulação da EA de mql4 para mql5.
1. Preciso de encontrar a hora de abertura do bar diário em segundos a partir de 01.01.1970. Encontrou a função no fórum:
2. Encontrei a função StringToTime e parece fazer o que eu preciso. Mas tentei combinações diferentes e agora sinto-me como um chimpanzé que não sabe que botão carregar para abrir a porta à maçã.
Não tenho funções iBarShift, iLow, iLowest em mql5. Pode dizer-me como encontrar o mínimo durante um determinado período de tempo todos os dias, ou que funções emmql5 devo utilizar para resolver este problema?
1,2. Por favor, leia aqui.
3. leia aqui.
1,2. Leia aqui.
3. leia aqui.
Sobre a segunda pergunta. Reler tudo sobre a data/hora. "O tipo de data e hora destina-se a armazenar a data e a hora à medida que o número de segundos decorreu desde 01 de Janeiro de 1970".
Então, ao chamar o alerta, diz: 2013.10.02 00:00:00, e não o número de segundos.
Sobre a segunda pergunta. Reler tudo na data/hora. "O tipo de data e hora destina-se a armazenar a data e a hora à medida que o número de segundos decorreu desde 01 de Janeiro de 1970".
Porquê então quando o alerta é chamado mostra: 2013.10.02 00:00:00 e não o número de segundos.
Agora leia aqui. Para o emitir no alerta, é necessário converter o tipo de data/hora para o tipo int.
Agora leia aqui. Para sair no alerta, é necessário converter o tipo de data/hora para tipo int.
Fiz uma construção como esta:
Comparei-o ao metatrader 4 e obtive o mesmo número.
Mas a mensagem é amarela ao compilar mql5:
possível perda de dados devido à conversão do tipo
Tentei fazê-lo desta forma:
Sem erros. Mas não sei onde anexara IntegerToString para obter o valor sem alertar, porque será utilizada pelo Expert Advisor para cálculos. Só não entendo que será um valor de corda, ou seja, pode ser usado como uma comparação com outro número?Fez uma construção como esta:
em comparação com o metatrader 4, o resultado é o mesmo número.
Excepto que a mensagem sai amarela ao compilar mql5:
possível perda de dados devido à conversão do tipo
É mais simples do que isso!
Pode dizer-me como criar um sinal se em tempos fui subscrito por outro?
Ou seja, eu já me desinsergi dele. Não será realmente possível?
Feito 100% em menos de 2 semanas e não pode ser partilhado com ninguém(
É mais simples do que isso!
Ainda assim, precisarei da variável "st" não só em Alerta, mas também para cálculos, e o aviso de "possível perda de dados devido à conversão do tipo" aparece quando da compilação.
Presumo que isto se deve ao facto de receber um número de 10 dígitos, enquanto o valor máximo em int é 2 147 483 647, actualmente recebo 1 380 758 400. Talvez faça sentido usar longos e provavelmente a EA irá consumir muitos recursos nesta parte?