Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 640

 
Aleksandr Martynov:
Bonjour, MQL4. J'ai décidé de distribuer le texte du programme parmi les fichiers include, mais la fonction MarketInfo y est inconnue, c'est-à-dire que ses constantes ne sont pas définies et, par conséquent, elle génère une erreur lors de la compilation

Il s'agit d'une fonction standard. Il peut être vu depuis n'importe quelle partie du texte du programme, depuis n'importe quel fichier. Comment avez-vous fait ça ?

 
Artyom Trishkin:

Il s'agit d'une fonction standard. Il est visible depuis n'importe quelle partie du texte du programme, depuis n'importe quel fichier. Comment avez-vous fait ?

J'ai pris le code source du tutoriel MQL4 comme exemple et j'ai commencé à le modifier pour l'adapter à mes besoins. Je copie des lignes de programmes, où tout est ok, mais quand je les transfère dans mqh, elles sont "perdues".

Oh, et après avoir mis à jour mon aide, j'en ai marre que F1 me fasse passer de l'aide mql4 à l'aide mql5...
 
Aleksandr Martynov:

J'ai pris le code source du manuel MQL4 comme exemple et j'ai commencé à le modifier selon mes propres besoins. Je copie des lignes de programmes, où tout est correct, mais quand je les transfère dans mqh, elles se "perdent".

Et après la mise à jour de l'aide, j'en ai marre que F1 me fasse passer de l'aide mql4 à l'aide mql5...

Je pense que vous écrivez le code pour MQL4 dans MetaEditor MQL5, et c'est pourquoi MarketInfo() n'est pas mis en évidence - MQL5 n'a pas cette fonction.

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

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

PS : J'ai la même situation sur mon ordinateur portable Windows 10 après avoir installé 2 terminaux et exécuté chaque terminal (МТ54 et МТ5) avec la touche /portable pour économiser de l'espace sur le SSD, déplacé tous les МТ sur mon disque dur, lorsque МetaEditor5 est appelé au lieu de МetaEditor4 Je ne peux pas suivre ce bug, mais si j'ouvre Мetaeditor à partir du terminal, tout est OK.

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

C'est une chose étrange qui se passe ici. J'ai commencé à réécrire mon indicateur de mql4 à mql5 et j'ai ouvert les deux indicateurs dans ME5. En appuyant sur F1 dans mq5, l'aide mql5 s'affiche et en appuyant dans mq4, l'aide mql4 s'affiche. Je suis même surpris qu'il ...

Igor Makanu Si vous ouvrez un fichier depuis un explorateur, le ME utilisé la dernière fois s'ouvre.

 
Alexey Viktorov:

C'est une chose étrange qui se passe ici. J'ai commencé à réécrire mon indicateur de mql4 à mql5 et j'ai ouvert les deux indicateurs dans ME5. En appuyant sur F1 dans mq5, l'aide mql5 s'affiche et en appuyant dans mq4, l'aide mql4 s'affiche. Je suis même surpris qu'il ...

Igor Makanu Si vous ouvrez un fichier depuis un explorateur, le ME utilisé la dernière fois s'ouvre.

c'est ainsi que cela fonctionne sur mon ordinateur portable, sur un PC fonctionnant sous Win7, sans aucun problème.

ZS : Je, en principe, ne me dérange pas sur un ordinateur portable, juste à partir du terminal que j'appelle Metaetitor, ont longtemps été utilisés à....da voici ce qui causerait des inconvénients est le téléchargement à partir du marché, si les terminaux de travail avec la clé \portable . Si vous téléchargez à partir du forum, via le navigateur une application du Market, le terminal sera appelé sans la touche \portable (ce qui est prévu) et alors vous pouvez vous demander où tous les programmes sont perdus ))), mais alors c'est aussi une question d'habitude - je télécharge des applications du Market via le terminal. tout est OK aussi

 
Igor Makanu:

Je pense que vous écrivez du code pour MQL4 dans MetaEditor MQL5, c'est pourquoi votre MarketInfo() n'est pas mis en évidence - cette fonction n'existe pas dans MQL5

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

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

J'ai la même situation sur mon ordinateur portable Windows 10 après avoir installé 2 terminaux et exécuté chaque terminal (MT54 et MT5) avec la touche /portable pour économiser de la place sur le SSD, j'ai transféré tous les МТ sur mon disque dur, lorsque МТ5 au lieu de MetaEditor4 Je ne peux pas suivre ce bug, mais si j'ouvre MetaEditor à partir du terminal, tout est OK.

Ce serait génial, mais je n'ai pas installé MetaEditor5... Le terminal non plus, c'est juste que lorsque j'ai mis à jour l'aide, elle disait qu'elle mettait à jour les versions 4 et 5, et je ne sais pas sur quelle version 5 je suis... Je travaille avec MT4

Si je ne sais pas quel programme j'ai, je ne sais pas où sont les paramètres par défaut, je ne comprends pas, dans mon navigateur j'ai le terminal MQL4, mais la compilation mqh est pour MT5 et l'aide est adressée à MQL5 par défaut (((

 

Bonjour à tous.

Aidez-nous à connecter la bibliothèque .MQH.

Immédiatement après l'exécution d'un programme de conseiller en test - stop

Message du journal :

2018.10.02 18:15:45.559 2018.06.01 00:00:00 Le passage du test a été interrompu en raison d'une erreur critique dans l'EA.

2018.10.02 18:15:45.559 2018.06.01 00:00:00 test EURUSD,H1 : appel de fonction d' importation non résolu

2018.10.02 18:15:45.559 2018.06.01 00:00:00 Impossible de trouver 'calc' dans 'my_func.ex4'.


Importer Dll dans le terminal activé

Veuillez demander aux experts d'examiner les dossiers et de vous aider à les résoudre.

Merci à tous.

Dossiers :
test.mq4  1 kb
my_func.mq4  1 kb
my_func.mqh  4 kb
 
Sergey Maksiutenko:

Bonjour à tous.

Aidez-nous à connecter la bibliothèque .MQH.

Immédiatement après l'exécution d'un programme de conseiller en test - stop

Message du journal :

2018.10.02 18:15:45.559 2018.06.01 00:00:00 Le passage du test a été interrompu en raison d'une erreur critique dans l'EA.

2018.10.02 18:15:45.559 2018.06.01 00:00:00 test EURUSD,H1 : appel de fonction d' importation non résolu

2018.10.02 18:15:45.559 2018.06.01 00:00:00 Impossible de trouver 'calc' dans 'my_func.ex4'.


Importer Dll dans le terminal activé

Veuillez demander aux experts d'examiner les dossiers et de vous aider à les résoudre.

Merci à tous.

//+------------------------------------------------------------------+
//|                                                         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);
}
 
Avec un peu de chance, vous pourrez répartir ces deux fichiers dans des dossiers.
 
Alekseu Fedotov:
J'espère que vous pourrez mettre les deux fichiers dans des dossiers.

Les fichiers sont dans les dossiers appropriés.

Quel est le problème ?