Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 640

 
Aleksandr Martynov:
Olá, MQL4. Decidi distribuir o texto do programa entre arquivos incluídos, mas a função MarketInfo é desconhecida nele, ou seja, suas constantes não são definidas e, conseqüentemente, gera um erro durante a compilação

Esta é uma função padrão. Pode ser visto de qualquer parte do texto do programa, de qualquer arquivo. Como você fez isso?

 
Artyom Trishkin:

Esta é uma função padrão. É visível a partir de qualquer parte do texto do programa, a partir de qualquer arquivo. Como você fez isso?

Tomei o código fonte do tutorial MQL4 como exemplo e comecei a modificá-lo para adequá-lo às minhas necessidades. Copio linhas de programas, onde tudo está bem, mas quando as transfiro para mqh elas estão "perdidas".

Oh, e depois de atualizar minha ajuda, estou farto de F1 me trocar de mql4 ME para mql5 de ajuda...
 
Aleksandr Martynov:

Tomei o código fonte do livro didático MQL4 como exemplo e comecei a modificá-lo para minhas próprias necessidades. Copio linhas de programas, onde tudo está bem, mas quando as transfiro para mqh elas "se perdem".

E depois da ajuda de atualização, estou farto de F1 me trocar de mql4 ME para mql5 de ajuda...

Eu acho que você escreve o código para MQL4 no MetaEditor MQL5, e é por isso que MarketInfo() não é destacado - a MQL5 não tem tal função

https://www.mql5.com/ru/docs/marketinformation

https://docs.mql4.com/ru/marketinformation

PS: Eu tenho a mesma situação em meu laptop Windows 10 depois de instalar 2 terminais e rodar cada terminal (МТ54 e МТ5) com /portable key para economizar espaço no SSD, eu transferi todo o МТ para meu disco rígido, quando МetaEditor5 é chamado ao invés de MetaEditor4 Eu não consigo rastrear este bug, mas se eu abrir o MetaEditor a partir do terminal, tudo está OK

Документация по MQL5: Получение рыночной информации
Документация по MQL5: Получение рыночной информации
  • www.mql5.com
Получение рыночной информации - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Que coisa estranha está acontecendo aqui. Comecei a reescrever meu indicador de mql4 para mql5 e abri ambos os indicadores no ME5. Pressionando F1 em arquivo mq5 abre a ajuda mql5 e pressionando em mq4 abre a ajuda mql4. Até me surpreende que ...

Igor Makanu Se você abrir um arquivo do explorador, o ME usado da última vez será aberto.

 
Alexey Viktorov:

Que coisa estranha está acontecendo aqui. Comecei a reescrever meu indicador de mql4 para mql5 e abri ambos os indicadores no ME5. Pressionando F1 em mq5 mostrará ajuda mql5 e pressionando em mq4 mostrará ajuda mql4. Até me surpreende que ...

Igor Makanu Se você abrir um arquivo de um explorador, o ME usado da última vez será aberto.

é assim que funciona no meu laptop, em um PC rodando Win7 sem nenhum problema

ZS: Eu, em princípio, não me incomodo em um laptop, apenas do terminal que eu chamo Metaetitor, há muito tempo estou acostumado a....da aqui está o que causaria inconveniência é o download do Mercado, se os terminais funcionarem com a chave portátil. Se você baixar do fórum, através do navegador um aplicativo do Mercado, o terminal será chamado sem chave portátil (o que é esperado) e então você pode se perguntar onde todos os programas estão perdidos )), mas então também é uma questão de hábito - eu baixo aplicativos do Mercado através do terminal. tudo está OK também

 
Igor Makanu:

Eu acho que você está escrevendo código para MQL4 no MetaEditor MQL5, é por isso que seu MarketInfo() não é destacado - esta função não existe na MQL5

https://www.mql5.com/ru/docs/marketinformation

https://docs.mql4.com/ru/marketinformation

Tenho a mesma situação no meu laptop Windows 10 depois de instalar 2 terminais e executar cada terminal (MT54 e MT5) com /portable key para economizar espaço no SSD, transferi todo o МТ para meu disco rígido, quando МТ5 em vez de MetaEditor4 não consigo rastrear este bug, mas se eu abrir o MetaEditor a partir do terminal, tudo estará OK

Isso seria ótimo, mas não tenho o MetaEditor5 instalado... Nem o terminal, é só quando atualizei a ajuda que ele disse que atualiza tanto o 4 como o 5, e não sei em qual 5 estou... Eu trabalho em MT4

Eu não entendo onde estão as configurações padrão, o terminal MQL4 é especificado no Navigator, mas a compilação mqh é para MT5 e a ajuda por padrão refere-se a MQL5 (((

 

Olá a todos.

Favor ajudar com a conexão da biblioteca .MQH

Imediatamente após a execução de um programa de assessoramento de testes - pare

Mensagem de log :

2018.10.02 18:15:45.559 2018.06.01 00:00:00 Teste de passagem parado devido a um erro crítico na EA

2018.10.02 18:15:45.559 2018.06.01 00:00:00 teste EURUSD,H1: chamada de função de importação não resolvida

2018.10.02 18:15:45.559 2018.06.01 00:00:00 Não encontro 'calc' em 'my_func.ex4'.


Importação Dll em terminal habilitado

Peça aos especialistas que dêem uma olhada nos arquivos e ajudem a resolvê-los.

Obrigado a todos vocês.

Arquivos anexados:
test.mq4  1 kb
my_func.mq4  1 kb
my_func.mqh  4 kb
 
Sergey Maksiutenko:

Olá a todos.

Favor ajudar com a conexão da biblioteca .MQH

Imediatamente após a execução de um programa de assessoramento de testes - pare

Mensagem de log :

2018.10.02 18:15:45.559 2018.06.01 00:00:00 Teste de passagem parado devido a um erro crítico na EA

2018.10.02 18:15:45.559 2018.06.01 00:00:00 teste EURUSD,H1: chamada de função de importação não resolvida

2018.10.02 18:15:45.559 2018.06.01 00:00:00 Não encontro 'calc' em 'my_func.ex4'.


Importação Dll em terminal habilitado

Solicite aos especialistas que examinem os arquivos e ajudem a resolvê-los.

Obrigado a todos vocês.

//+------------------------------------------------------------------+
//|                                                         test.mq4 |
//|                        Copyright 2018, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict

#include <my_func.mqh>
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
Alert("calc = ", calc (1,2));
   
  }
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|                                                      my_func.mqh |
//|                        Copyright 2018, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property strict

int calc (int a,int b)
{
int c = a + b;
return(c);
}
 
Esperemos que você possa espalhar estes dois arquivos em pastas.
 
Alekseu Fedotov:
Espero que você possa colocar os dois arquivos em pastas.

Os arquivos estão nas pastas apropriadas.

Qual é o problema?