Tout nouveau dans MQL5 (et le FOREX d'ailleurs) mais programmeur de longue date. J'ai ouvert le fichier My_First_EA.mq5 et j'ai compilé, mais je n'obtiens pas les fonctions Debug. Si j'ouvre n'importe quel fichier script d'exemple, j'obtiens l'option Debug. J'ai également reçu un avertissement indiquant que la valeur de retour de 'OrderSend' devrait être vérifiée. Que dois-je faire pour obtenir la fonctionnalité Debug ?
Tout nouveau dans MQL5 (et le FOREX d'ailleurs) mais programmeur de longue date. J'ai ouvert le fichier My_First_EA.mq5 et j'ai compilé, mais je n'obtiens pas les fonctions Debug. Si j'ouvre n'importe quel fichier script d'exemple, j'obtiens l'option Debug. J'ai également reçu un avertissement indiquant que la valeur de retour de 'OrderSend' devrait être vérifiée. Que dois-je faire pour obtenir la fonctionnalité Debug ?
Louis
Bonjour à tous,
J'ai résolu mon propre problème. J'ai créé un nouveau projet avec l'Expert Advisor Wizard et j'ai copié le fichier My_First_EA.mq5 et j'ai obtenu la fonctionnalité de débogage.
J'ai trouvé mon propre problème. J'ai créé un nouveau projet avec l'Expert Advisor Wizard et j'ai copié le fichier My_First_EA.mq5 et j'obtiens la fonctionnalité de débogage.
Louis
Mais avez-vous corrigé l'avertissement "OrderSend should be checked" ?
J'ai eu l'erreur 4756, j'ai vu la solution à la page 2, et j'ai vérifié le code original, il y avait ZeroMemory(mrequest) ; à la ligne 218 même. mais j'ai toujours l'erreur 4756.
J'ai aussi toujours cette erreur après avoir fait les deux corrections suggérées :
ZeroMemory(mrequest) ;
et aussi
if(Buy_opened || Sell_opened)
Quelqu'un peut-il m'aider à résoudre l'erreur 4756 ? Il semble qu'il soit impossible de placer un ordre d'achat.
J'aime beaucoup l'exemple de code, je suis également novice en la matière, j'ai corrigé le code tel qu'il apparaît dans les commentaires et il ne donne plus d'erreurs.
Le problème est que le robot n'ouvre pas de trades, il n'ouvre même pas de trade.
Est-ce que quelqu'un a pu résoudre ce problème ?
J'utilise l'option "Unico" du testeur de stratégie : est-ce une erreur de ma part ?
J'ai changé plusieurs choses dans le code mais cela ne fonctionne pas, j'ajoute le code que j'ai :
Original : mrequest.type_filling = "Je l'ai mis dans les 3 façons qui sont dans la documentation".
mrequest.action = TRADE_ACTION_DEAL; // exécution immédiate de l'ordre
mrequest.price = NormalizeDouble(latest_price.ask,_Digits); // dernier prix demandé
mrequest.sl = NormalizeDouble(latest_price.ask - STP*_Point,_Digits); // Stop Loss
mrequest.tp = NormalizeDouble(latest_price.ask + TKP*_Point,_Digits); // Prise de bénéfice
mrequest.symbol = _Symbol; // paire de devises
mrequest.volume = Lot; // nombre de lots à négocier
mrequest.magic = EA_Magic; // Commande Numéro magique
mrequest.type = ORDER_TYPE_BUY; // Ordre d'achat
mrequest.type_filling = ORDER_FILLING_RETURN; // Type d'exécution de l'ordre
mrequest.deviation=100;
Tambien he probado este codigo:
//--- déclaration et initialisation de la demande et du résultatMqlTradeRequest request={0};
MqlTradeResult result={0};
//--- paramètres de l'application
request.action =TRADE_ACTION_DEAL; // type d'activité de l'entreprise
request.symbol =Symbol(); // symbole
request.volume =0.1; // volume de 0,1 lot
request.type =ORDER_TYPE_BUY; // type de commande
request.price =SymbolInfoDouble(Symbol(),SYMBOL_ASK); // prix d'ouverture
request.deviation=5; // écart de prix autorisé
request.magic =EA_Magic; // Numéro magique de l'ordre//--- envoi de la demandeif(!OrderSend(request,result))
PrintFormat("OrderSend error %d",GetLastError()); // si la demande n'a pas pu être envoyée, saisir le code d'erreur//--- informations sur l'opérationPrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order);
Bonjour, Merci pour ce tutoriel, il m'a été très utile. Mais j'ai un malentendu, les variables New_Time déclarées et initialisées avec la fonction CopyTimes mais Old_Time a été déclarée mais pas initialisée au début et ensuite elle a été comparée à la variable New_Time pour vérifier s'il y a une nouvelle barre. Old_Time est censé être vide. Je ne sais pas si je l'ai bien décrit mais merci de m'avoir lu.
De la même manière, j'ai le code d'erreur 4756 lors de l'exécution des tests et j'ai reçu le message suivant : " Sell order request could not be completed " (la demande d'ordre de vente n'a pas pu être exécutée).
Bonjour à tous,
Tout nouveau dans MQL5 (et le FOREX d'ailleurs) mais programmeur de longue date. J'ai ouvert le fichier My_First_EA.mq5 et j'ai compilé, mais je n'obtiens pas les fonctions Debug. Si j'ouvre n'importe quel fichier script d'exemple, j'obtiens l'option Debug. J'ai également reçu un avertissement indiquant que la valeur de retour de 'OrderSend' devrait être vérifiée. Que dois-je faire pour obtenir la fonctionnalité Debug ?
Louis
Bonjour à tous,
Tout nouveau dans MQL5 (et le FOREX d'ailleurs) mais programmeur de longue date. J'ai ouvert le fichier My_First_EA.mq5 et j'ai compilé, mais je n'obtiens pas les fonctions Debug. Si j'ouvre n'importe quel fichier script d'exemple, j'obtiens l'option Debug. J'ai également reçu un avertissement indiquant que la valeur de retour de 'OrderSend' devrait être vérifiée. Que dois-je faire pour obtenir la fonctionnalité Debug ?
Louis
Bonjour à tous,
J'ai résolu mon propre problème. J'ai créé un nouveau projet avec l'Expert Advisor Wizard et j'ai copié le fichier My_First_EA.mq5 et j'ai obtenu la fonctionnalité de débogage.
Louis
Bonjour à tous,
J'ai trouvé mon propre problème. J'ai créé un nouveau projet avec l'Expert Advisor Wizard et j'ai copié le fichier My_First_EA.mq5 et j'obtiens la fonctionnalité de débogage.
Louis
J'ai eu l'erreur 4756, j'ai vu la solution à la page 2, et j'ai vérifié le code original, il y avait ZeroMemory(mrequest) ; à la ligne 218 même. mais j'ai toujours l'erreur 4756.
J'ai aussi toujours cette erreur après avoir fait les deux corrections suggérées :
ZeroMemory(mrequest) ;
et aussi
if(Buy_opened || Sell_opened)
Quelqu'un peut-il m'aider à résoudre l'erreur 4756 ? Il semble qu'il soit impossible de placer un ordre d'achat.
Bonjour, je reçois une erreur :
la valeur de retour de 'OrderSend' doit être vérifiée lignes 213 et 259.
Avez-vous résolu le problème ?
Bonjour Tchuso,
La même chose m'est arrivée. Je l'ai résolu en remplaçant ces lignes dans les deux opérations par ceci.
Dites-moi si vous avez besoin d'aide, je suis nouveau aussi.
Je vous prie d'agréer, Madame, Monsieur, l'expression de mes salutations distinguées.
J'aime beaucoup l'exemple de code, je suis également novice en la matière, j'ai corrigé le code tel qu'il apparaît dans les commentaires et il ne donne plus d'erreurs.
Le problème est que le robot n'ouvre pas de trades, il n'ouvre même pas de trade.
Est-ce que quelqu'un a pu résoudre ce problème ?
J'utilise l'option "Unico" du testeur de stratégie : est-ce une erreur de ma part ?
Merci pour votre temps et votre soutienJ'ai remarqué que le robot essaie d'ouvrir les ordres mais donne toujours une erreur :
Exit :
2020.05.06 20:35:16.141 Core 1 2020.04.20 20:25:00 failed market sell 0.10 EURUSD sl : 1.08965 tp : 1.07665 [Invalid request].
J'ai changé plusieurs choses dans le code mais cela ne fonctionne pas, j'ajoute le code que j'ai :
Original : mrequest.type_filling = "Je l'ai mis dans les 3 façons qui sont dans la documentation".
J'ai remarqué que le robot essaie d'ouvrir les ordres mais donne toujours une erreur :
Exit :
2020.05.06 20:35:16.141 Core 1 2020.04.20 20:25:00 failed market sell 0.10 EURUSD sl : 1.08965 tp : 1.07665 [Invalid request].
J'ai changé plusieurs choses dans le code mais cela ne fonctionne pas, j'ajoute le code que j'ai :
Original : mrequest.type_filling = "Je l'ai mis dans les 3 façons qui sont dans la documentation".
Ajoutez ceci en haut du code :
#include <Trade\Trade.mqh>Et ensuite, pour ouvrir une opération, il suffit de taper ceci :
Bonjour,
De la même manière, j'ai le code d'erreur 4756 lors de l'exécution des tests et j'ai reçu le message suivant : " Sell order request could not be completed " (la demande d'ordre de vente n'a pas pu être exécutée).
Merci de m'indiquer comment résoudre ce problème.
Je vous remercie.