![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Veuillez expliquer pourquoi aucun des EAs de MetaTrader 5 n'est testé dans le testeur de stratégie. J'appuie sur Start et rien ne se passe. Expliquez-moi.
Veuillez expliquer pourquoi aucun des EAs de MetaTrader 5 n'est testé dans le testeur de stratégie. J'appuie sur Start et rien ne se passe. Expliquez-moi.
Impossible de récupérer les données des structures prédéfinies dans les fonctions créées. Par exemple :
Ensuite, lorsqu'on essaie de récupérer des valeurs dans une fonction créée :
Nous obtenons un message d'erreur :
Comment déclarer les structures pour qu'elles soient disponibles dans toutes les parties du programme ?
Impossible de récupérer les données des structures prédéfinies dans les fonctions créées. Par exemple :
Ensuite, lorsqu'on essaie de récupérer des valeurs dans une fonction créée :
Nous obtenons un message d'erreur :
Comment déclarer les structures pour qu'elles soient disponibles dans toutes les parties du programme ?
La classe CAccountInfo de la bibliothèque standard possède la fonction TradeAllowed(). C'est écrit dans l'aide que cela signifie :"Le trading est autorisé/interdit pour ce compte". Je n'ai pas trouvé de code d'erreur dans les codes de retour du serveur commercial, ce qui signifie que le flux commercial est peut-être occupé. Ce contrôle est-il désormais effectué dans le terminal de négociation lui-même ? Veuillez clarifier.
Quelles fonctions peuvent être utilisées pour vérifier si un fil commercial est libre pour effectuer une opération commerciale ? Dans MQL4, les fonctions IsTradeAllowed() et IsTradeContextBusy() étaient prévues à cet effet.
La classe CAccountInfo de la bibliothèque standard possède la fonction TradeAllowed(). C'est écrit dans l'aide que cela signifie :"Le trading est autorisé/interdit pour ce compte". Je n'ai pas trouvé de code d'erreur dans les codes de retour du serveur commercial, ce qui signifie que le flux commercial est peut-être occupé. Ce contrôle est-il désormais effectué dans le terminal de négociation lui-même ? Veuillez clarifier.
Quelles fonctions peuvent être utilisées pour vérifier si un fil commercial est libre pour effectuer des opérations commerciales ? Dans MQL4, les fonctions IsTradeAllowed() et IsTradeContextBusy() étaient prévues à cet effet.
La classe CAccountInfo de la bibliothèque standard possède la fonction TradeAllowed(). C'est écrit dans l'aide que cela signifie :"Le trading est autorisé/interdit pour ce compte ". Je n'ai pas trouvé de code d'erreur dans les codes de retour du serveur commercial, ce qui signifie que le flux commercial est peut-être occupé. Ce contrôle est-il désormais effectué dans le terminal de négociation lui-même ? Veuillez expliquer.
Il vous suffit de fixer le prix.
Si aucun prix n'est défini (par défaut 0.0) ou si le prix du marché est défini, CExpertTrade est invité par CExpert à ouvrir une position sur le marché.
Si le prix est meilleur que le marché (inférieur au prix actuel pour acheter et supérieur au prix actuel pour vendre), CExpertTrade placera un ordre limite (si la marge est respectée).
Si le prix est inférieur au marché (au-dessus de l'offre actuelle et au-dessous de la demande actuelle), CExpertTrade placera un ordre stop (si la marge est respectée).
et LongCondition renvoie "2222222" et ouvre un ordre,
. Y a-t-il un problème ou un réglage différent ?
Le type spécifique est défini lors de la commande. CommanderEnvoyer
OpenLongParams ne s'exécute pas du tout, il n'écrit même pas "1111111111",
mais LongCondition va écrire "222222222" et ouvrir un ordre,
. Est-ce que je fais quelque chose de mal ou est-ce que c'est réglé différemment ?
En principe, les choses sont beaucoup plus simples. Dans 99 % des cas, le niveau d'entrée peut être réglé à l'aide d'un paramètre d'entrée :
input double Inp_Signal_PriceLevel =0.0;
La valeur est fixée en "grands" pips (c'est-à-dire en 2/4 chiffres).
Valeur = 0 - entrée sur le marché.
Valeur > 0 - entrée par ordre limite.
Valeur < 0 - entrée par ordre stop.
Le paramètre concerne le signal principal (dans lequel les signaux sélectionnés dans l'assistant sont rassemblés pour le vote). L'algorithme de fixation des niveaux de prix est déjà implémenté dans la classe de base CExpertSignal (dont l'instance est le signal principal).
Mais si vous voulez utiliser un algorithme qui diffère de celui qui est implémenté... Mais c'est pour plus tard, quand ce sera intéressant.