![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
Il n'aime pas la taille de lot dynamique ? ?? Il fonctionne avec ct trade, lorsque j'utilise une taille de lot fixe.
CTrade est un wrapper pour OrderSend().
Vous avez écrit que cela ne fonctionne pas avec un volume à 0.07 ou même 1. Comment définissez-vous cela ? Lot=0.07 ?
CTrade est un wrapper pour OrderSend().
Vous avez écrit que cela ne fonctionne pas avec un volume à 0.07 ou même 1. Comment définissez-vous cela ? Lot=0.07 ?
Ce sont des décimales d'une certaine complexité, je vais essayer de normaliser le double.
Normalize double est fourni un correctif pour les décimales complexes, je vais l'essayer sur mon lot dynamique.
Fixe.
Il semble que ce soit l'un de mes facteurs d'échelle provenant de certaines équations qui se trouvent en dehors du CT Buy/Sell. Ce n'était pas un problème que j'avais rencontré dans mql4, il m'a donc fallu un certain temps pour le localiser, je devrai faire attention à cela si mql4 se met à nouveau à jour.
Pour tous ceux qui rencontrent ce problème, utilisez 2 pour la partie numérique de la fonction NormalizeDouble().
007 vous dites ?
Vous devriez peut-être demander à M. Bond ;-)
Il semble que je rencontre le même problème ici. J'ai confirmé que la taille du lot répond aux exigences de SYMBOL_VOLUME_MIN, SYMBOL_VOLUME_MAX et SYMBOL_VOLUME_STEP.
Par exemple, j'obtiens ceci :
2014.04.07 14:49:35 2014.04.04 16:00:00 CTrade::OrderSend : vente instantanée 0.53 EURUSD à 1.36934 sl : 1.37434 tp : 1.35934 [volume invalide].
Pendant le backtesting de l'EA avec ce symbole et ces spécifications :
Voici le code que j'utilise pour envoyer l'ordre :
EDIT :
Je peux bien sûr placer manuellement des transactions avec cette taille de lot exacte.
Il semble que je rencontre le même problème ici. J'ai confirmé que la taille du lot répond aux exigences de SYMBOL_VOLUME_MIN, SYMBOL_VOLUME_MAX et SYMBOL_VOLUME_STEP.
Par exemple, j'obtiens ceci :
2014.04.07 14:49:35 2014.04.04 16:00:00 CTrade::OrderSend : vente instantanée 0.53 EURUSD à 1.36934 sl : 1.37434 tp : 1.35934 [volume invalide].
Pendant le backtesting de l'EA avec ce symbole et ces spécifications :
Voici le code que j'utilise pour envoyer l'ordre :
EDIT :
Je peux bien sûr placer manuellement des transactions avec cette taille de lot exacte.
Cette ligne est sans effet :
NormalizeDouble(trade_size,DecimalPoints);
Vous devez affecter le résultat à une variable, voir la documentation de NormalizeDouble.
trade_size=NormalizeDouble(trade_size,DecimalPoints);