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

 
progeon:
Pouvez-vous me dire comment afficher un tableau à deux dimensions en tant que constante, c'est-à-dire en définissant tous les paramètres manuellement ?
double Variable[][3]={{1, 2, 3},{ 4, 5, 6},{7, 8, 9}};

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

Основы программирования на MQL5 - Массивы
Основы программирования на MQL5 - Массивы
  • 2012.11.03
  • Dmitry Fedoseev
  • www.mql5.com
Наряду с переменными и функциями, массивы являются практически неотъемлемой частью любого языка программирования. Статья должна быть интересна в первую очередь новичкам, приступившим к изучению программирования на MQL5. Опытным программистам представляется хорошая возможность подытожить, обобщить и систематизировать свои знания.
 

Pouvez-vous me dire comment configurer les transactions un certain jour à une certaine heure ?

J'ai cherché dans le forum et j'ai lu " Programming basics in MQL5 - Time", mais je ne comprends toujours pas comment intégrer tout cela dans l'algorithme ?

Par exemple, j'ai besoin d'ouvrir une position le mercredi après la première bougie de 4 heures.

Je prends tout ce qui concerne le trading un jour donné dans mon article :

input bool Sunday   =true; // Воскресенье
input bool Monday   =true; // Понедельник
input bool Tuesday  =true; // Вторник 
input bool Wednesday=true; // Среда
input bool Thursday =true; // Четверг
input bool Friday   =true; // Пятница
input bool Saturday =true; // Суббота

bool WeekDays[7];
void WeekDays_Init()
  {
   WeekDays[0]=Sunday;
   WeekDays[1]=Monday;
   WeekDays[2]=Tuesday;
   WeekDays[3]=Wednesday;
   WeekDays[4]=Thursday;
   WeekDays[5]=Friday;
   WeekDays[6]=Saturday;
  }
bool WeekDays_Check(datetime aTime)
  {
   MqlDateTime stm;
   TimeToStruct(aTime,stm);
   return(WeekDays[stm.day_of_week]);
  }

Comment l'appliquer ? J'essaie d'ajouter l'appel de la fonction dans OnTimer() et de mettre une condition selon laquelle si WeekDays_Check(3)==true et le temps depuis le début du mercredi dans les secondes>14300 && secondes <14800, alors le trade sera ouvert.

void OnTimer()
  {
   S_Time=TimeCurrent();
   if(WeekDays_Check(3)==true)
     {
      Print("Среда");
      long seconds=S_Time%86400;
      if (seconds>14300 && seconds <14800)
      {
      double Open_1=S_Open(NULL,PERIOD_CURRENT,1);
      double Close_1=S_Close(NULL,PERIOD_CURRENT,1);
      double High_1=S_High(NULL,PERIOD_CURRENT,1);
      double Low_1=S_Low(NULL,PERIOD_CURRENT,1);
      bool S_CriBuy=0,S_CriSell=0;
      double S_Lot;
      S_CriBuy=S_TailBar_Buy(Open_1,Close_1,High_1,Low_1);
      S_CriSell=S_TailBar_Sell(Open_1,Close_1,High_1,Low_1);
      Print("Прошлый бар",High_1);
      if(S_CriBuy==1)
        {
         double S_Price=Low_1;
         double S_SL=Low_1+SL*Point();
         double S_TP=Low_1-TP*Point();
         S_Lot=countLot(Lot,HandLot);
         S_Trade.SellStop(S_Lot,S_Price,NULL,S_SL,S_TP);
        }
      if(S_CriSell==1)
        {
         double S_Price=High_1;
         double S_SL=High_1-SL*Point();
         double S_TP=High_1+TP*Point();
         S_Lot=countLot(Lot,HandLot);
         S_Trade.BuyStop(S_Lot,S_Price,NULL,S_SL,S_TP);
        }
        }
     }
  }

Ça ne marche pas comme ça( Ça ouvre n'importe quel jour. Expliquez-moi comment faire une transaction au moins sur un jour précis ?

Merci d'avance. Si le code est enfantin - désolé, je viens d'apprendre)

 
DenisSavenko:

Pouvez-vous me dire comment configurer les transactions un certain jour à une certaine heure ?

J'ai cherché dans le forum et j'ai lu " Programming basics in MQL5 - Time", mais je ne comprends toujours pas comment intégrer tout cela dans l'algorithme ?

Par exemple, j'ai besoin d'ouvrir une position le mercredi après la première bougie de 4 heures.

Je prends tout ce qui concerne le trading un jour donné dans mon article :

Comment l'appliquer ? J'essaie d'ajouter l'appel de la fonction dans OnTimer() et de mettre une condition selon laquelle si WeekDays_Check(3)==true et le temps depuis le début du mercredi dans les secondes>14300 && secondes <14800, alors le trade sera ouvert.

Ça ne marche pas comme ça( Ça ouvre n'importe quel jour. Expliquez-moi comment faire une transaction au moins sur un jour précis ?

Merci d'avance. Si le code est enfantin - désolé, je viens d'apprendre)

M.B.
   if(WeekDays_Check(TimeCurrent())==true)
?
 
uncleVic:
Peut-être.
?

Oui, ça a marché ! Merci beaucoup. Bien sûr, il y a encore quelques erreurs dans les décalages des jours, mais c'est déjà ma partie du problème du code, mais tel quel, tout fonctionne. Si vous mettez du faux les jours inutiles, en vrai le commerce va - c'est ce qu'il faut.

Merci encore.

 
Je me suis réenregistré sur Insta Trader en connectant un compte réel, dans MQ5 je me suis inscrit pour un signal à /**/ l'inscription a été réussie, puis j'ai ouvert Insta Trader et je suis allé dans les paramètres du système pour activer le signal mais Atam écrit que le signal n'est pas connecté, comment puis-je connecter le signal et le faire fonctionner avec de l'argent réel [Compte commercial #5216372].
 
752360:
Je me suis réenregistré sur Insta Trader en connectant un compte réel, je me suis inscrit pour le signal dans MQ5 / ***/ l'inscription a été réussie, puis j'ai ouvert Insta Trader et je suis allé dans les paramètres du système pour activer le signal mais Atam écrit que le signal n'est pas connecté, comment puis-je connecter le signal et le mettre en vigueur avec de l'argent réel [Compte commercial #5216372].
Comme pour l'argent fictif, c'est-à-dire que vous devez vous connecter à votre compte réel et vous inscrire au signal.
 
où se connecter exactement
 
752360:
où se connecter exactement

Dans le terminal de trading.

S'abonner à un signal

 

Bonjour.

Pourriez-vous me dire comment définir la date d'expiration d'un ordre en attente (EXPIRATION) dans la classe CTrade ? J'ai essayé d'ajouter cette position en envoyant CTrade.SellStop(Lot,Price,NULL,SL,TP,expiration) ; il est toujours dit "can't convert enum". La seule chose que j'ai trouvée dans la documentation de CTrade est comment trouver la durée de vie de l'ordre en attente RequestExpiration, mais je ne sais pas comment la définir.

CTrade peut-il fixer le délai d'expiration ? Ou peut-être faut-il utiliser la requête complète MqlTradeRequest via OrderSend() ? Je ne comprends pas vraiment comment l'utiliser. Tous les articles renvoient à CTrade.

 
DenisSavenko:

Bonjour.

Pourriez-vous me dire comment définir la date d'expiration d'un ordre en attente (EXPIRATION) dans la classe CTrade ? J'ai essayé d'ajouter cette position en envoyant CTrade.SellStop(Lot,Price,NULL,SL,TP,expiration) ; il est toujours dit "can't convert enum". La seule chose que j'ai trouvée dans la documentation de CTrade est comment trouver la durée de vie de l'ordre en attente RequestExpiration, mais je ne sais pas comment la définir.

CTrade peut-il fixer le délai d'expiration ? Ou peut-être faut-il utiliser la requête complète MqlTradeRequest via OrderSend() ? Je ne comprends pas vraiment comment l'utiliser. Tous les articles renvoient à CTrade.

   bool              SellStop(const double volume,const double price,const string symbol=NULL,const double sl=0.0,const double tp=0.0,
                              const ENUM_ORDER_TYPE_TIME type_time=ORDER_TIME_GTC,const datetime expiration=0,const string comment="");
paramètres manqués
Raison: