Erreurs, bugs, questions - page 64

 

À propos, une excellente fonction de recherche est récemment apparue dans l'éditeur pour les articles, la base de code et l'ensemble du site MQL5.com :


 

En faisant le calcul sur toutes les barres et en voyant les dysfonctionnements, j'ai vérifié les données à la fin du graphique et j'ai trouvé que sur le graphique horaire les barres vont une fois par jour (choc),

toutes les statistiques sont foutues.


Peut-être un moyen de mettre à jour le tableau ou quelque chose comme ça ?

 
Pouvez-vous me dire, lorsque je compile une bibliothèque de fonctions, j'obtiens l'erreur suivante
No exported function or entry point found               1       1
La raison est que le fichier eh5 ne sera pas créé.
 
sergey1294:
Veuillez me conseiller, lors de la compilation d'une bibliothèque de fonctions, cette erreur est générée, quelle en est la raison ?

Voici en gros à quoi devrait ressembler le contenu de la bibliothèque

//Function FunctionName
bool FunctionName() export
{
//----------------------------------------------------------------------------//
//Work variables
bool Reset;
//----------------------------------------------------------------------------//

//----------------------------------------------------------------------------//
return(Reset);
//----------------------------------------------------------------------------//
}
L'utilisation de"export" est obligatoire dans mq5, mais elle ne devrait pas l'être dans mqh.
 
Interesting:

Voici à quoi devrait ressembler le contenu de la bibliothèque

L'utilisation de "export" est obligatoire dans mq5 mais ne devrait pas l'être dans mqh.

Merci, je ne l'ai pas trouvé dans l'aide, ce n'est pas du tout dans l'aide et je ne pense pas que ce soit dans Quaternaire non plus, comment mqh et les bibliothèques de fonctions devraient être conçues pour compiler correctement.

P.S a trouvé une description dans l'aide.

 
sergey1294:
Merci, je n'ai pas trouvé cette information dans l'aide, elle n'est pas disponible du tout et il semble que dans Quaternaire il n'y avait pas de disposition correcte des bibliothèques mqh et function pour leur compilation normale.

Quand je faisais la bibliothèque de migration, j'ai aussi eu du mal, j'ai dû contacter les développeurs...

PS

Je dois dire que c'était il y a presque 7 mois et que tout ne fonctionnait pas encore correctement...

 
sergey1294:

Merci, je n'ai pas pu trouver cette information dans l'aide, elle n'y est pas du tout et je ne pense pas qu'elle ait été mentionnée dans Quaternaire non plus, comment les bibliothèques mqh et de fonctions doivent être correctement conçues pour leur compilation normale.

P.S a trouvé une description dans l'aide.

C'est bien que vous l'ayez trouvé, mais je vais quand même vous donner le lien vers la section Exporter des fonctions:

Description des fonctions externes

Le type de fonctions externes définies dans un autre module doit être explicitement décrit. Le non-respect de cette consigne peut entraîner des erreurs lors de la compilation, de la liaison ou de l'exécution du programme. Lorsque vous décrivez un objet externe, utilisez le mot-clé #import avec la spécification du module.

Exemples :

#import"user32.dll".
int MessageBoxW(int hWnd ,string szText,string szCaption,int nType) ;
int SendMessageW(int hWnd,int Msg,int wParam,int lParam);
#import"lib.ex5".
double round(double valeur) ;
#import

L'importation peut être utilisée pour décrire très facilement les fonctions appelées à partir de DLL externes ou de bibliothèques EX5 compilées. Les bibliothèques EX5 sont des fichiers ex5 compilés qui ont la propriété de bibliothèque. Seules les fonctions décrites avec le modificateur d'exportation peuvent être importées des bibliothèques EX5.

Voir aussi

Surcharge, fonctions virtuelles, polymorphisme

 
Urain:

En faisant le calcul sur toutes les barres et en voyant les dysfonctionnements, j'ai vérifié les données à la fin du graphique et j'ai trouvé que sur le graphique horaire les barres vont une fois par jour (choc),

toutes les statistiques vont au diable.


Peut-être que vous devez mettre à jour le tableau ou autre chose ?


Si vous creusez un peu plus, vous constaterez que les barres de minutes de cet intervalle de données sont également stockées de manière "étrange" - chaque jour est constitué d'une barre de minutes, et les prix haut et bas de cette minute correspondent aux prix haut et bas de la barre du jour.

Ceci est dû au fait que les données minute sont la base de tous les horizons temporels dans MetaTrader 5. Pour en savoir plus, consultez la section Organiser l'accès aux données.

 
Rosh:

Si vous creusez un peu plus, vous constaterez que les minutes de cet intervalle de données sont également stockées de manière "étrange" - chaque jour est constitué d'une barre de minutes, et les prix de haut et de clôture de cette barre de minutes correspondent aux prix de haut et de clôture de la barre du jour.

Ceci est dû au fait que les données minute sont la base de tous les horizons temporels dans MetaTrader 5. Vous pouvez en savoir plus à ce sujet dans la section Organiser l'accès aux données.

Oui, il n'y a pas de minutes antérieures à 1999 sur le serveur de démonstration. De 1993 à 1999, des bases de minutes remplacent les jours.
 
Renat:
Oui, il n'y a pas de minutes antérieures à 1999 sur le serveur de démonstration. De 1993 à 1999, les bases de minutes sont substituées aux jours.

J'ai pensé à quelque chose de similaire, merci pour la clarification.

Il s'agit simplement de prescrire une fonction qui détermine à partir de quelle barre commence l'histoire complète,

Sinon, l'attente de la taille de la barre peut être gravement erronée.

Vous pouvez bien sûr en fabriquer un sur mesure, mais s'il est intégré (imho), il sera d'une grande aide.