Erreurs, bugs, questions - page 1815
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, le problème suivant se produit sur mon compte de démonstration chez Otkritie.
la situation suivante se produit : si je réussis à modifier et à supprimer une commande
de type ORDER_FILLING_RETURN(un ordre à cours limité ordinaire)
le volume variable de la structureMqlTradeResult est toujours égal à la taille initiale de l'ordre (dans ce cas, l'ordre n'a pas été exécuté du tout).
Il semble qu'il devrait donner un volume exécuté (0 dans mon cas), ou est-ce que je me trompe ?
Je pense qu'il devrait donner un volume exécuté (0 dans mon cas) ou je me trompe ?
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
Bibliothèques : MT4Orders
fxsaber, 2017.02.10 12:01
Résultat du scriptRequest.action = TRADE_ACTION_PENDING (5)
Request.magic = 0
Request.order = 0
Request.symbol = EURUSD
Request.volume = 1.0
Request.price = 1.06356
Request.stoplimit = 0.0
Request.sl = 0.0
Request.tp = 0.0
Request.deviation = 100
Request.type = ORDER_TYPE_BUY_LIMIT (2)
Request.type_filling = ORDER_FILLING_IOC (1)
Request.type_time = ORDER_TIME_GTC (0)
Request.expiration = 1970.01.01 00:00:00
Request.comment = My Order
Request.position = 0
Request.position_by = 0
Result.retcode = 10009
Result.deal = 0
Result.order = 57777
Result.volume = 1.0
Result.price = 1.06356
Result.bid = 0.0
Result.ask = 0.0
Result.comment = My Order
Result.request_id = 592
Result.retcode_external = 0
C'était comme ça depuis le début !
Pendant l'exécution d'OrderSend, il n'est pas possible de quitter le mode débogage ou de supprimer l'EA/script.
Parfois, OrderSend fonctionne pendant 180 secondes, avec Request timeout. Il faut attendre trois minutes pour pouvoir compiler dans l'éditeur, si le script était exécuté en mode débogage.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading
Bugs, bugs, questions
fxsaber, 2017.02.16 07:55
2017.02.16 08:53:03.285 MQL5 wrong type, loading of Test failed
2017.02.16 08:53:03.813 Network '5122740': authorized on MetaQuotes-Demo through Access Point EU Amsterdam (ping: 50.93 ms)
Qu'est-ce que c'est ?
Rien ne fonctionne sur le seul graphique. Chaque fois que je change de compte, ce message apparaît.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading
Une cachette folle d'agents de test
Renat Fatkhullin, 2017.02.21 04:04
Essayez la nouvelle version du vendredi de MT5 1545 - quelque chose a été amélioré.Notez également que nous avons plus de 230 000 comptes actifs en permanence sur MetaQuotes-Demo MT5 et que c'est une véritable bacchanale du trading.
Je pense que la bacchanale est encore plus puissante sur l'échange, mais le coping.
1545 - semble s'améliorer. Mais tout passe à travers les mailles du filet.
Demande/réponse.
Request.magic = 0
Request.order = 0
Request.symbol = EURCAD
Request.volume = 0.01
Request.price = 1.39016
Request.stoplimit = 0.0
Request.sl = 0.0
Request.tp = 0.0
Request.deviation = 100
Request.type = ORDER_TYPE_SELL (1)
Request.type_filling = ORDER_FILLING_RETURN (2)
Request.type_time = ORDER_TIME_GTC (0)
Request.expiration = 1970.01.01 00:00:00
Request.comment =
Request.position = 134821044
Request.position_by = 0
Result.retcode = 10009
Result.deal = 118450870
Result.order = 134821045
Result.volume = 0.01
Result.price = 1.39016
Result.bid = 1.39016
Result.ask = 1.39043
Result.comment = Request executed 57.225 + 18.108 ms
Result.request_id = 4096
Result.retcode_external = 0
Surligné - c'est le temps pendant lequel une entrée apparaît dans l'historique des commandes et des transactions après un envoi de commande réussi. Beaucoup !
Journal de bord
MM 0 08:51:22.480 Trades '5245006': accepted instant sell 0.01 EURCAD at 1.39016, close #134821044 buy 0.01 EURCAD 1.39043 (deviation: 100)
LH 0 08:51:22.480 Trades '5245006': deal #118450870 sell 0.01 EURCAD at 1.39016 done (based on order #134821045)
EQ 0 08:51:22.480 Trades '5245006': order #134821045 sell 0.01 / 0.01 EURCAD at 1.39016 done in 57.165 ms
Et un autre cas d'exécution du même script.
Demande/Réponse
Request.magic = 0
Request.order = 0
Request.symbol = EURCZK
Request.volume = 0.01
Request.price = 27.043
Request.stoplimit = 0.0
Request.sl = 0.0
Request.tp = 0.0
Request.deviation = 100
Request.type = ORDER_TYPE_BUY_LIMIT (2)
Request.type_filling = ORDER_FILLING_RETURN (2)
Request.type_time = ORDER_TIME_GTC (0)
Request.expiration = 1970.01.01 00:00:00
Request.comment = Benchmark_Order
Request.position = 0
Request.position_by = 0
Result.retcode = 10009
Result.deal = 0
Result.order = 134821281
Result.volume = 0.01
Result.price = 0.0
Result.bid = 0.0
Result.ask = 0.0
Result.comment = Request executed 392.585 + 0.299 ms
Result.request_id = 4457
Result.retcode_external = 0
Journal de bord
RE 0 08:51:44.133 Trades '5245006': accepted buy limit 0.01 EURCZK at 27.04300
JS 0 08:51:44.133 Trades '5245006': order #134821281 buy limit 0.01 / 0.01 EURCZK at market done in 392.533 ms
Ping ~54 ms.
Il est impossible de copier quoi que ce soit à partir de la fenêtre d'alerte.
Veuillez ajouter à la fenêtre d'alerte la possibilité de sélectionner plusieurs lignes, en cliquant avec le bouton droit de la souris sur le menu "Copier" et "Aller au journal" - pour afficher dans le journal des experts la ligne correspondant à l'alerte.
Bon après-midi.
J'ai été confronté à un comportement incorrect (à mon avis) des pointeurs d'objets. Il s'applique aussi bien à MT5 qu'à MT4. Veuillez préciser s'il s'agit d'un bogue ou d'une fonctionnalité. Voici le code :
class CDescObject:public CBaseObject { };
void OnStart()
{
CDescObject *obj1 = new CDescObject(), *obj2;
CBaseObject *baseObj1 = obj1;
obj2 = baseObj1;//Пока не грохнули объект - no problem
delete(obj1);
//Если добавить эти строки, ошибки в последней строке не будет
//if(CheckPointer(baseObj1)==POINTER_INVALID)
//baseObj1 = NULL;
obj2 = obj1;//Указатели одного типа - no problem
obj2 = baseObj1;//здесь ошибка "Invalid pointer access"
}
Je comprends que les pointeurs ici ne sont pas les mêmes qu'en C, mais ont un monde interne riche. Il serait tout de même plus logique que la mission de la dernière ligne s'achève paisiblement. Dans mon cas, la vérification de POINTER_INVALID se faisait après l'affectation, et je n'ai donc pas compris tout de suite pourquoi le message "Accès invalide au pointeur" apparaissait, alors que personne n'effectuait d'accès.
P. S. : Juste au cas où - Metatrader 5 build 1545, Win 7 SP1 x86
J'ai rencontré (à mon avis) un comportement incorrect des pointeurs d'objets.
Cela ressemble à une erreur MQL.
Vous avez l'erreur. Comment imaginez-vous attribuer un parent vide à un descendant ?