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

 
barabashkakvn:
Regardez la hauteur de mon tableau et du mien - ils sont différents, donc l'indentation est différente dans chaque cas.
Peut-être que quelque part dans MT4 et MT5, il est possible de définir la distance entre le haut et le bas, de sorte que le graphique de cotation soit étiré/étiré par lui-même ?
 
kon12:

J'ai répété l'image dans la mienne et voici ce que j'ai obtenu

La question est de savoir pourquoi je n'ai pas la même image que vous. L'échelle est la même. Je ne l'aime pas car je travaille actuellement avec MT4 et son indentation est la même. Mon indicateur met des marques de texte sur le graphique au niveau du haut et du bas. Ça a l'air bien sur la tablette. Mais sur MT5, sur la tablette, le retrait en bas de page occupe 10 % de l'espace du graphique. C'est désagréable sur un petit écran.

Si vous avez un robot de trading et que vous ne savez pas comment l'utiliser, n'hésitez pas à contacter le Service Desk :

Forum sur le trading, les systèmes de trading automatisé et les tests de stratégies de trading

Questions des débutants

paladin800, 2013.11.11 21:49

Peut-être que quelque part dans MT4 et MT5, il y a une possibilité de définir la distance entre le haut et le bas afin que le graphique de cotation soit étiré/étiré par lui-même ?

Si vous comprenez bien l'homme à la main droite, vous pourrez peut-être l'utiliser pour atteindre la précision requise, mais vous devrez le faire tout de suite.

Les développeurs mettent souvent en œuvre les suggestions raisonnables des utilisateurs.

 

Pouvez-vous me dire comment spécifier le type d'un ordre en suspens, et ensuite effectuer d'autres mouvements en fonction de son type.

Par exemple, je ne peux avoir que BUY_STOP ou SELL_STOP.

Je fais ce qui suit dans mon EA :

// Если нет открытых позиций то закрываем отложные ордера!
  {
   ulong order_ticket;
//--- пройдем по всем отложенным ордерам
   for(int i=OrdersTotal()-1;i>=0;i--)
      if((order_ticket=OrderGetTicket(i))>0)
         //--- ордер с подходящим ORDER_MAGIC
         if(Mag2==OrderGetInteger(ORDER_MAGIC))
         
         if (PositionsTotal()<1) // открытых позиций нет?
         {
            MqlTradeResult result={0}; // удаляем отложные ордера!!
            MqlTradeRequest request={0};
            request.order=order_ticket;
            request.action=TRADE_ACTION_REMOVE;
            OrderSend(request,result);
            //--- выведем в лог ответ сервера  
            Print(__FUNCTION__,": ",result.comment," код ответа ",result.retcode);
           
         }else { 
                   type          =EnumToString(ORDER_TYPE);   // Устанавливаем тип отложного ордера
                   Print("ОРДЕР type =" , type );
                   
                   if (type == ORDER_TYPE_BUY_STOP && BezUbitok>0 && bool (mrate[1].close < BBMidle[1]) ) 
                  {
                   ModificationPosition_BUY_STOP (); // модифицируем ордер BUY_STOP
                  }
                   if (type == ORDER_TYPE_SELL_STOP && BezUbitok>0 && bool (mrate[1].close > BBMidle[1]) ) 
                  {
                   ModificationPosition_SELL_STOP (); // модифицируем ордер SELL_STOP
                  }
                   
              }     
               
  }  

Après avoir essayé de déterminer le type type =EnumToString(ORDER_TYPE) ; // Définit le type de l'ordre en attente

Je vérifie ce qu'il a défini ici, juste au cas oùPrint("ORDER type =", type ) ;

Je vois dans le journal : 2013.11.12 17:42:09 Core 1 2006.06.21 13:00:00 ORDER type =ORDER_TYPE

Par exemple, le typeORDER_TYPE mais qu'est-ce que c'est SELL_STOPouBUY_STOP comment puis-je le déterminer ?

Ou est-ce que je fais quelque chose de mal ?)

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

Essayez la ligne

Remplacez-la par

Dans ce cas, le journal donne des valeurs numériques :

2013.11.12 19:08:32 Core 1 2008.04.22 10:00:07 ORDER type =5
2013.11.12 19:08:31 Core 1 2007.08.17 14:00:00 ORDER type =4

Peut-être que 4 est BUY_STOP et 5 est SELL_STOP.

Mais ils devraient être numérotés 5 et 6, c'est un non-sens).

https://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type

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

Voici une impression du script :

Et le code du script :

Merci !

On suppose que ORDER_TYPE_BUY doit être = 1.)

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

Combien de temps avant que je commence à distribuer mes paramètres aux autres utilisateurs ?

 
Kirillos:

combien de temps me faudra-t-il pour commencer à distribuer mes paramètres aux autres utilisateurs ?

Vous vouliez sans doute demander : "...donner vos ressources..." avec le testeur de stratégie MetaTrader 5 ? En fait, tout dépend de la notation (PR) de vos agents. Avec un RP inférieur à 120, il n'y aura pas beaucoup de tâches par jour - la charge totale approximative par jour est d'environ 10 minutes.

Allez sur votre profil sur mql5.com et sélectionnez l'onglet agents(https://www.mql5.com/ru/users/kirillos/agents/list), vous y verrez l'évaluation de vos agents.

 
existe-t-il un analogue de Sharp ? ou comment en fabriquer un ?
 

Où est celui qui manque ?

   int dig=_Digits-1;
   double max=NormalizeDouble(1.33182,dig);//Мах на всем участке 
   double min=NormalizeDouble(1.30492,dig);//Мин на всем участке
   //double max=1.3318;
   //double min=1.3049;
   int mm=(int)((max-min)*pow(10,dig))+1;
   Alert(max," ",min," ",mm);

Si vous utilisez des chaînes de caractères commentées, c'est correct. En l'état actuel des choses, c'est 1 de moins.

Cette construction produit13317 , et non 13318 .C'est mon erreur ou MT ?

Alert(int(max*10000));
 
Rorschach:

Où est celui qui manque ?

Si vous utilisez des chaînes de caractères commentées, c'est correct. En l'état actuel des choses, c'est 1 de moins.

Cette construction produit13317 , et non 13318 .C'est mon erreur ou MT ?

Donc vous devez obtenir 1.33182 pour obtenir 1.3318 ? Faut-il simplement éliminer le cinquième chiffre après la virgule ou arrondir au quatrième chiffre supérieur, c'est-à-dire qu'à partir de 1,33186, il faut 1,3318 ou 1,3319 ?