Questions des débutants MQL5 MT5 MetaTrader 5 - page 164

 

Messieurs, veuillez me dire ce qu'il faut écrire dans les deux dernières lignes lors de la modification d'un ordre en attente si sa durée de vie est fixée. (par exemple, 6 heures - ).

request.type_time = ORDER_TIME_SPECIFIED ; // la commande sera valide jusqu'à la date d'expiration.
request.expiration = TimeCurrent()+6*3600;// dernière heure connue du serveur + nombre*heures

Si la durée de vie ne change pas, peut-on ne rien écrire du tout lors de la modification ? Par défaut, il mourra de lui-même.

Et si vous devez changer sa durée de vie ?

Modifier une commande en cours

Demande de transaction pour modifier les niveaux de prix des ordres en attente. 7 champs sont obligatoires :

-action

-commande

-prix

-sl

-tp

-type_temps

-expiration

Ce sont les deux lignes du manuel que je n'arrive pas à pénétrer :

type_temps

Type de commande au moment de l'expiration. La valeur peut être l'une des valeurs ENUM_ORDER_TYPE_TIME

expiration

Heure d' expirationde l'ordre en attente (pour les ordres de type ORDER_TIME_SPECIFIED)

S'il vous plaît écrivez comment ils devraient ressembler dans l'expert, lors de la modification, je vais comprendre. Merci d'avance.

Vous pouvez omettre ces deux lignes.

Vous pouvez en écrire un, par exemple : request.type_time = ORDER_TIME_DAY ; dans ce cas, la commande sera supprimée après 1 jour,

autres options : https://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type_time

Sur larequête.expiration = TimeCurrent()+6*3600;//dernière heure connue du serveur + nombre d'heures*heures

vous spécifiez le délai d'expiration de l'ordre.

https://www.mql5.com/ru/articles/481

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 

Aide pour un débutant, s'il vous plaît.

J'ai installé Alpari MT5, l'optimisation fonctionne comme il se doit, c'est-à-dire que tous les graphiques s'affichent et les rapports sont générés, et l'historique est bon. Après avoir installé MT5 sur le même PC que Insta, j'y ai téléchargé un historique de tests et maintenant je n'ai plus de graphiques et de résultats d'optimisation tant dans Insta que dans Alpari. Après avoir tout démonté et installé uniquement Alpari, l'optimisation fonctionne à nouveau parfaitement. Cependant, après avoir installé Insta sur un autre ordinateur du réseau local, les résultats de l'optimisation sont à nouveau perdus.

Même EA dans tous les cas, le journal est inondé de messages "best resalt", seuls les agents locaux sont utilisés.

Est-ce que quelqu'un utilise deux ou plusieurs mt5 en même temps sur un ordinateur ou sur le réseau local, ou peut-être a-t-il été confronté à un tel problème ?




 
Crucian:

Ces deux lignes peuvent ne pas être écrites du tout.

Vous pouvez en écrire un, par exemple : request.type_time = ORDER_TIME_DAY ; dans ce cas, la commande sera supprimée après 1 jour,

Je vois. C'est ce que je pensais, en modifiant.


request.type_time =ORDER_TIME_DAY - Je suppose que c'est pareil que -

entrée int t = 24 ;

request.expiration = TimeCurrent()+t*3600;

 
rosomah:

Je vois. C'est ce que je pensais, en modifiant.


request.type_time =ORDER_TIME_DAY - Je suppose que c'est pareil que -

entrée int t = 24 ;

request.expiration = TimeCurrent()+t*3600 ;

Je vous ai donné le lienhttps://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type_time qui indique que 4 variantes peuvent être utilisées pourrequest.type_time :


ORDER_TIME_GTC
La commande restera dans la file d'attente jusqu'à ce que le

ORDER_TIME_DAY
L'ordre ne sera actif que pendant la journée de négociation en cours.

HEURE_DE_LA_COMMANDE
La commande sera valable jusqu'à la date d'expiration

JOUR_DE_L'HEURE_DE_LA_COMMANDE
La commande sera en vigueur jusqu'à la date spécifiée à 00h00. Si cette heure ne tombe pas sur une session de négociation, l'expiration se fera à l'heure de négociation la plus proche.

Je vous ai donné le lien vers https://www.mql5.com/ru/articles/481 , qui donne le code de la demande de transaction lors de la modification d'un ordre en utilisant la classe CTrade prête à l'emploi https://www.mql5.com/ru/docs/standardlibrary/tradeclasses/ctrade.

Le code est le suivant :

//--- тикет ордера указан только для примера, его нужно получить
   ulong ticket=1234556;
//--- символ также указан для примера, его нужно получить
   string symbol="EURUSD";
//--- количество знаков после запятой
   int    digits=(int)SymbolInfoInteger(symbol,SYMBOL_DIGITS);
//--- значение пункта
   double point=SymbolInfoDouble(symbol,SYMBOL_POINT);
//--- получим цену покупки
   double price=SymbolInfoDouble(symbol,SYMBOL_ASK);
//--- вычислим и нормализуем уровни SL и TP
//--- на самом деле они должны вычисляться в зависимости от типа ордера
   double SL=NormalizeDouble(price-1000*point,digits);
   double TP=NormalizeDouble(price+1000*point,digits);
   //--- зададим срок действия одни сутки
   datetime expiration=TimeTradeServer()+PeriodSeconds(PERIOD_D1); //!!!  
//--- все готово, делаем попытку модифицировать ордер 
   if(!trade.OrderModify(ticket,price,SL,TP,ORDER_TIME_GTC,expiration)) //!!!
     {
      //--- сообщим о неудаче
      Print("Метод OrderModify() потерпел неудачу. Код возврата=",trade.ResultRetcode(),
            ". Описание кода: ",trade.ResultRetcodeDescription());
     }
   else
     {
      Print("Метод OrderModify() выполнен успешно. Код возврата=",trade.ResultRetcode(),
            " (",trade.ResultRetcodeDescription(),")");
     }

Pour en savoir plus sur le temps dans MQL5, cliquez ici: https://www.mql5.com/ru/articles/599 .

Utilisez la recherche et lisez les articles et la documentation.


Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 

Bonjour à tous !

Ne me jetez pas la pierre, mais je n'ai pas trouvé de...

aucune position ouverte sur l'EA... Il est dit ceci

2013.12.23 03:00:01 Core 1 2013.12.20 23:30:00 échec de l'achat instantané de 1,00 EURUSD à 1,36720 sl : 1.06720 tp : 1.46720 [Requête invalide].

и

2013.12.23 03:00:01 Core 1 2013.12.20 23:30:00 Alerte : La demande de placement d'un ordre d'achat a échoué - code d'erreur:4756

Qu'est-ce que ça peut être ?

mrequest.action = TRADE_ACTION_DEAL ; // exécution immédiate

mrequest.price = NormalizeDouble(latest_price.ask,_Digits) ; // dernier cours vendeur

mrequest.sl = NormalizeDouble(latest_price.ask - STP*_Point,_Digits) ; // Stop Loss (seuil de déclenchement)

mrequest.tp = NormalizeDouble(latest_price.ask + TKP*_Point,_Digits) ; // Prise de profit

mrequest.symbol = _Symbol ; // symbole

mrequest.volume = Lot ; // nombre de lots à négocier

mrequest.magic = EA_Magic ; // Numéro magique

mrequest.type = ORDER_TYPE_BUY ; // ordre d'achat

mrequest.type_filling = ORDER_FILLING_FOK ; // type de commande - tout ou rien

mrequest.deviation=100 ; // dérapage par rapport au prix actuel

//----send order

CommandeEnvoi(mrequest,mresult) ;

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте - Документация по MQL5
 
Armen:

Armen, s'il vous plaît. Collez le code dans le cadre de code. Ctrl+"5". Mieux encore, appuyez sur le bouton SRC dans l'éditeur, collez dans la boîte et appuyez sur [ok].

Ce n'est pas clair. :(

 
MetaDriver:

Armen, s'il vous plaît. Collez le code dans le cadre de code. Ctrl+"5". Mieux encore, appuyez sur le bouton SRC dans l'éditeur, collez dans la boîte et appuyez sur [ok].

Ce n'est pas clair. :(

Désolé, je vais le refaire maintenant...
 

Bonjour à tous !

Ne me jetez pas la pierre, mais je n'ai pas trouvé de...

aucune position ouverte sur l'EA... Cela donne ceci

2013.12.23 03:00:01 Core 1 2013.12.20 23:30:00 échec de l'achat instantané de 1,00 EURUSD à 1,36720 sl : 1.06720 tp : 1.46720 [Requête invalide].

и

2013.12.23 03:00:01 Core 1 2013.12.20 23:30:00 Alerte : La demande pour passer un ordre d'achat a échoué - code d'erreur:4756

Qu'est-ce que ça peut être ?

         mrequest.action = TRADE_ACTION_DEAL;                                  // немедленное исполнение

         mrequest.price = NormalizeDouble(latest_price.bid,_Digits);           // последняя цена Bid

         mrequest.sl = NormalizeDouble(latest_price.bid + STP*_Point,_Digits); // Stop Loss

         mrequest.tp = NormalizeDouble(latest_price.bid - TKP*_Point,_Digits); // Take Profit

         mrequest.symbol = _Symbol;                                            // символ

         mrequest.volume = Lot;                                                // количество лотов для торговли

         mrequest.magic = EA_Magic;                                            // Magic Number

         mrequest.type = ORDER_TYPE_SELL;                                       // ордер на продажу

         mrequest.type_filling = ORDER_FILLING_FOK;                            // тип исполнения ордера - все или ничего

         mrequest.deviation=100;                                               // проскальзывание от текущей цены

         //--- отсылаем ордер

         OrderSend(mrequest,mresult);

 
Armen:

Bonjour à tous !

Ne me jetez pas la pierre, mais je n'ai pas trouvé de...

aucune position ouverte sur l'EA... ça donne ça...

Il vaut mieux envoyer un ordre pour ouvrir une position/un ordre comme décrit dans Opérations de trading dans MQL5 - c'est facile.
 
paladin800:
Le problème est que je dois refaire (un peu) la chouette toute faite.
Le problème est que je dois modifier (un peu) les hiboux prêts à l'emploi... :(