Erros, bugs, perguntas - página 1233
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
retornaTimeGMT() quandoStringToTime está errado; por exemplo, quandoStringToTime("0") - quando o argumento não é analisado.
E retorna a hora normal quando o argumento é analisado, por exemplo, quandoStringToTime(" 24.10.2014") - D'2014.10.24 00:00:00''.
Isto é normal? Porquê oTimeGMT() especificamente? Isto está a -2 horas da minha hora actual em MT4 e no meu computador.
enquanto a mesma função com os mesmos parâmetros no código EA funciona bem? "
o meu código funciona a partir do depurador, mas não funciona no modo normal (ou melhor, funciona por vezes e não consegui estabelecer um padrão simples sobre a razão pela qual funciona e porque não funciona)
porque precisamos de indicadores como o iXXX, se não podem ser utilizados normalmente?
A pergunta sobre o erro 4806 "Porque é que a função CopyBuffer colocada num indicador personalizado leva ao erro 4806?
enquanto a mesma função com os mesmos parâmetros no código EA funciona bem? "
o meu código funciona sob o depurador, mas não funciona no modo normal (na verdade, funciona por vezes e não consegui estabelecer o simples padrão por que funciona e por que não funciona)
Porque é que precisamos de indicadores do tipo iXXX se não podem ser utilizados correctamente?
Tarde. Os dados para o CopyBuffer são retirados da mesma TF em que o seu indicador está a funcionar?
Já tentou usar a função BarsCalculated() para resolver o problema?
No MQL OOP, como verificar se um ponteiro é membro de uma determinada classe - como por exemplo em JavaScript ou dactilografado em C++?
Boa tarde. Os dados para CopyBuffer são retirados da mesma TF onde o seu indicador está a correr?
Já tentou usar a função BarsCalculated() para resolver o problema?
Boa tarde.
Problema com as chamadas de função do dll do sistema. A tarefa é escrever um servidor TCP simples em MQL5, que corre numa determinada porta e apenas recebe mensagens.
Importado das funções ws2_32.dll WSAStartup(), WSAClenup(), socket(), bind(), accept(), listen(), recv(). Tudo funciona exactamente até que se tente parar o servidor. Quando tento parar o servidor e terminar o script correctamente, o terminal simplesmente arranca.
Desde então, a função recv() tem sido utilizada como método científico.
No ficheiro anexo há uma linha (171):
se estiver configurado para ter este aspecto:
então o servidor pára sem quaisquer erros. Estive a ver exemplos de utilização de funcionalidades de rede na MSDN e fiz tudo por analogia.
Alguém tem alguma ideia de como resolver este problema?
Obrigado por perguntar. Tirei dados do iATR em D1 o indicador principal funciona em prazos mais pequenos, BarsCalculated() também retorna -1 e o mesmo erro. Como suponho, existe uma função mas não um indicador (em tempo de execução). Se eu criar um indicador noutra janela sobre a mesma ferramenta, tudo funciona. No modo de depuração também funciona. Mas a minha pergunta É um insecto ou não compreendo alguma coisa?
Eu próprio tenho-me debatido com este problema recentemente. Resolvi-o, não sei se era óptimo, mas resolvi-o. Apenas os dados foram retirados de iFractals, mas isso não importa. Porque é que perguntei sobre a TF? De acordo com as minhas observações, acontece o seguinte. Por exemplo, o indicador funciona em M15. Se os dados indicadores forem solicitados de M1 a M15 - tudo está bem, os dados estão disponíveis no momento em que são solicitados (se não for a primeira chamada). Se forem solicitados dados à M30 (repito, o indicador corre na TF M15), no momento do pedido não há dados na M30 para uma vela nova (ou precisamos de um pedido preliminar, ou os dados são atrasados pelo tick). Resolvi-o da seguinte forma. Lembro-me do resultado do BarsCalculated() na vela actual. Assim que a próxima vez que o BarsCalculated() devolver o valor 1 mais (apareceu uma nova vela), lembramo-nos do novo valordo BarsCalculated() e copiamos os dados. Mas este momento (quando os dados indicadores aparecem na TF superior) não coincide com a formação de uma nova vela na TF actual.
Sim,BarsCalculated() retorna -1 quando não há dados, tanto quanto sei, só acontece durante a primeira corrida. Ou seja, quando se obtém o manípulo indicador e se solicita imediatamente os dados. Também precisa de esperar.
Imediatamente após a criação do cabo indicador, os dados não podem ser consultados uma vez que não estão prontos. O processo de inicialização e de recálculo é complexo e depende de muitos factores.
A estratégia correcta é criar uma pega no oninit e trabalhar com os dados quando chega o primeiro tick.
Imediatamente após a criação do cabo indicador, os dados não podem ser consultados uma vez que não estão prontos. O processo de inicialização e de recálculo é complexo e depende de muitos factores.
A estratégia correcta é criar uma pega no oninit e trabalhar com os dados quando chega o primeiro tick.