Questions des débutants MQL4 MT4 MetaTrader 4 - page 232

 
O-Yama:
Post, alors voyons ce qu'il y a sur le serveur.
Je collecte le tableau de messages de requête avec ma fonction en petits morceaux, car StringToCharArray se comporte bizarrement et tronque constamment le tableau. Peut-être que j'ai raté quelque chose là-dedans aussi...

void OneMoreString(chaîne de caractères str)
{
char cashe[] ;
int sz=ArraySize(buf) ; //buf est en dehors de la fonction, et est toujours utilisé dans webrequest
StringToCharArray(str,cashe,0,StringLen(str)) ; //convertit la chaîne de caractères à l'entrée de la fonction en tableau de caractères cashe
ArrayResize(buf,sz+ArraySize(cashe)) ;
ArrayCopy(buf,cashe,sz) ; //copie de cashe dans buf
}

P.s. : Je ne sais pas comment insérer correctement les extraits de code ici.

Déterminez d'abord de quel côté se situe le problème pour le régler.

Le code est le suivant :


 
Bonjour à tous, je n'arrive pas à charger l'historique des transactions pour n'importe quelle période sauf un mois, j'ai tout essayé, réinstallé complètement le terminal, rien n'y fait. J'ai tout essayé, je l'ai complètement réinstallé, rien n'y fait. Ce qui s'est passé, c'est que j'ai appliqué un ancien modèle au graphique des prix, en conséquence de quoi toutes les transactions ont disparu du graphique et l'historique a perdu les transactions d'octobre, juste pipsqueak. Peut-être que quelqu'un a été confronté à un tel problème, s'il vous plaît aidez, l'Internet aussi n'avait pas de réponses. MT4
Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
MT4
 
Bon après-midi. Pouvez-vous me dire comment déterminer le nombre de positions ouvertes pour chaque paire de devises et les afficher sur le graphique ? Si des positions sont ouvertes sur différentes paires de devises dans différentes quantités.
 
makssub:
Bon après-midi. Pouvez-vous me dire comment déterminer le nombre de positions ouvertes pour chaque paire de devises et les afficher sur le graphique ? Si des positions sont ouvertes sur différentes paires de devises dans différentes quantités.

Dépassement des postes.

 
makssub:
Après-midi. Pourriez-vous me dire comment déterminer le nombre de positions ouvertes pour chaque paire de devises et l'afficher sur le graphique ? Si des positions sont ouvertes sur différentes paires de devises dans différentes quantités.

L'indicateur iExposure.mq4 est fourni en standard avec le terminal.

 
Bon après-midi.
Pouvez-vous me dire, s'il vous plaît. Pourquoi dans l'indicateur lors de la recherche de barres, l'indicateur commence tout le temps depuis août 2020. Quel que soit le paramètre i, i=500 ou i=10000000000.
void OnStart()
  {
//+------------------------------------------------------------------+
//| Блок
//| Задаём переменные
//+------------------------------------------------------------------+
   double
   MA1,      // Расчитываем МА1
   MA2,      // Расчитываем МА2
   close_i,  // Цена закрытия i бара
   close_i1, // Цена закрытия i-1 бара
   close_i2, // Цена закрытия i-2 бара
   profit1,  // Растояние между iHigh и iOpen на i-3 баре
   Bar_4,    // Разница между iOpen и iClose на i-3 баре
   Diff_1;   // Расчитываем растояние между iClose и MA1 на i-2 баре


//+------------------------------------------------------------------+
//| Блок 1
//| Расчёты условия покупки или продажи
//+------------------------------------------------------------------+
   MA1=iMA(NULL,0,10,0,MODE_EMA,PRICE_CLOSE,0);
   MA2=iMA(NULL,0,50,0,MODE_EMA,PRICE_CLOSE,0);


//+------------------------------------------------------------------+
//| Блок
//| МА1>MA2
//+------------------------------------------------------------------+
   if(MA1>MA2)
     {
      for(int i=100; i>4; i--) //Перебераем бары
        {
         close_i=iClose(NULL, 0, i);    // Цена закрытия i бара
         close_i1=iClose(NULL, 0, i-1); // Цена закрытия i-1 бара
         close_i2=iClose(NULL, 0, i-2); // Цена закрытия i-2 бара
         profit1=(iHigh(NULL, 0, i-3) - iOpen(NULL, 0, i-3))/Point; // Растояние между iHigh и iOpen на i-3 баре в пунктах
         Diff_1=(iOpen(NULL, 0, i-2) - iMA(NULL,0,10,0,MODE_EMA,PRICE_CLOSE,i-2))/Point; // Растояние между iClose и MA1 на i-2 баре в пунктах
         Bar_4=(iClose(NULL, 0, i-3) - iOpen(NULL, 0, i-3))/Point; // Разница между iOpen и iClose на i-3 баре

         if(close_i<close_i1 && close_i1<close_i2) // Проверяем условие на покупку
           {
            int YY=TimeYear(Time[i-2]);
            int MN=TimeMonth(Time[i-2]);
            int DD=TimeDay(Time[i-2]);

            Print("Растояние между iClose и MA1 на i-2 баре в пунктах= ",Diff_1);
            Print("Профит после покупки в пунктах= ",profit1);
            Print("Разница между iOpen и iClose на i-3 баре= ",Bar_4);
            Print("Бар i-3>0, то +++! Бар i-3<0, то ---!");
            Print("Выполнено условие на покупку!");
            Print("Дата ", DD,".",MN,".",YY);
            Print("   ");
           }
        }
     }
}
 

Le dépassement commence 100 barres avant le jour actuel. Sur la D1, c'est juste le mois d'août. Les paramètres n'affectent pas ce nombre.

   if(MA1>MA2)
     {
      for(int i=100; i>4; i--) //Перебераем бары
 

Bonjour, j'ai un problème.

J'ai des hiéroglyphes à la place des lettres russes.J'ai essayé de changer les paramètres régionaux, mais ça n'a pas aidé. Connaissez-vous des méthodes de travail ?

 
Aleksey Verbin:

J'ai des hiéroglyphes à la place des lettres russes.

.