Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Bonjour, messieurs les développeurs !
Pouvons-nous apporter des modifications au compilateur MQL5 pour qu'il nous donne au moins un avertissement ?
pour les erreurs de ce type dans le code.
if(Flag_Exitl=true) {break;}
La condition de comparaison n'est pas correcte ici (elle devrait être == ), c'est pourquoi il y aura toujours une rupture.
Comment remédier à cette situation dans le compilateur (si c'est possible), afin que je puisse avoir moins de bosses en écrivant du code ?
(J'ai pensé que ça ne marcherait pas, il semble que nous devrions séparer l'affectation et la comparaison dans if, donc la question est supprimée).
Les variables de type bool ne peuvent pas être comparées à true/false, mais utilisées directement (il s'agit essentiellement d'un drapeau oui/non).
Je reçois régulièrement l'erreur 4401
ERR_HISTOIRE_NON_FONDÉE
Le code indicateur suivant
donnera une erreur juste après le démarrage (s'il n'est pas sur D1). Ou plutôt, dès que vous démarrez le terminal et ouvrez le graphique - mettez l'indicateur, vous obtiendrez une erreur. Si le terminal n'est pas fermé, il n'y aura pas une telle erreur au démarrage.
Mais après un certain temps (quelques heures - 2 heures ont suffi pour moi), nous verrons que nous obtiendrons l'erreur sur le graphique déjà ouvert. (Je le faisais fonctionner sur m30)
...l'erreur 4401 apparaît régulièrement
référence :
Organiser l'accès aux données
Accessibilité des données
La disponibilité des données au format HCC ou même au format HC prêt à l'emploi ne signifie pas toujours la disponibilité inconditionnelle de ces données pour l'affichage sur un graphique ou pour l'utilisation dans les programmes mql5.
Lorsque nous accédons aux données de prix ou aux valeurs d'indicateurs à partir des programmes mql5, nous devons nous rappeler qu'il n'est pas garanti qu'elles soient disponibles à un certain moment, ou à partir d'un certain point dans le temps. Cela est dû au fait que MetaTrader 5 ne stocke pas la copie complète des données requises pour le programme mql5, mais donne un accès direct à la base de données du terminal afin d'économiser des ressources.
L'historique des prix pour toutes les échéances est construit à partir des données communes au format HCC et toute mise à jour du serveur entraîne la mise à jour des données pour toutes les échéances et le recalcul des indicateurs. Par conséquent, l'accès aux données peut être refusé même si les données étaient disponibles il y a juste un instant.
CopyRate
Lors de la demande de données de l'indicateur, si les séries temporelles demandées n'ont pas été construites ou si elles doivent être téléchargées du serveur, la fonction renverra -1 immédiatement, mais le processus de téléchargement/construction sera lancé.fiche d'information :
On dirait que ça devrait l'être. Jusqu'au CopyRate SERIES_SYNCRONIZED vous pouvez vérifier...Je suis juste en train de saupoudrer des cendres sur ma tête, ouais. Merci.
Bien qu'il soit étrange de voir la demande de deux barres et l'historique indisponible, alors que seule la barre zéro change. Mais peu importe - si c'est décrit dans la documentation, ce n'est pas une erreur.
dans mon IsNewBar, une erreur est apparue.
Au lieu de
J'aurais dû écrire
Et je me suis demandé pourquoi, toutes les deux heures, IsNewBar(PERIOD_D1) == true -> d'où la découverte de l'inaccessibilité de l'historique, mais je n'arrivais pas à me souvenir d'une fonction que j'avais écrite il y a un an ou deux.
Pourquoi l'indicateur ne peut pas gérer les types de couleurs (COLOR_ARROW, etc.) avec plus d'un tampon.
exemple de code
Nous définissons deux DRAW_COLOR_ARROW (buf1 et buf2) et pour chacun un tampon de couleur supplémentaire (clr1, clr2).
En même temps, bien que le second tampon buf2 reçoive des barres High/Low, elles n'apparaissent pas sur le graphique. Il semble que la couleur des flèches dans ce tampon = clrNONE. C'est-à-dire que le réglage de la couleur dans le tampon clr2 ne fonctionne pas.
voici une capture d'écran. seules les valeurs de buf1/clr1 sont visibles. les valeurs du second tampon ne sont pas affichées avec couleur bien que les valeurs soient reçues.
Où est l'erreur ?
La question a simplement été créée pour répondre à la question "dans l'ADN de MQL5".
C'est également le cas pour DRAW_FILLING et même pour DRAW_HISTOGRAM2 (qui n'est pas aussi stable, bien sûr, mais des bogues se produisent).
Rien qu'à partir de l'instabilité des bugs, j'en conclus qu'il est peu probable que vous obteniez une réponse sans CD.
Bild 642 pour Win32
Un problème avec les tableaux tridimensionnels de double apparaît si vous dépassez par erreur les limites du tableau lors de l'affichage dans la fonction Print.
Le script entre dans une boucle infinie par lui-même.
Bild 642 pour Win32
un certain problème avec les tableaux tridimensionnels double apparaît si vous sortez par erreur du tableau lors de la sortie dans la fonction Print
En fait, le dépassement se produit deux lignes plus tôt
et vous appelez un exposant à partir d'un élément inexistant, très probablement zéro.
Regardez dans le journal
En général, le hors-limite se produit deux lignes plus tôt
et vous appelez un exposant à partir d'un élément inexistant, très probablement zéro.
regardez dans le journal