Domande dai principianti MQL4 MT4 MetaTrader 4 - pagina 232

 
O-Yama:
Posta, poi vediamo cosa c'è sul server.
Raccolgo l'array di messaggi di query con la mia funzione in piccoli pezzi, poiché StringToCharArray si comporta stranamente e tronca costantemente l'array. Forse anche io ho sbagliato qualcosa...

void OneMoreString(string str)
{
char cashe[];
int sz=ArraySize(buf); //buf è fuori dalla funzione, ed è sempre usato in webrequest
StringToCharArray(str,cashe,0,StringLen(str)); //converte la stringa all'ingresso della funzione nell'array di caratteri cashe
ArrayResize(buf,sz+ArraySize(cashe));
ArrayCopy(buf,cashe,sz); //copia cashe in buf
}

P.s.: non so come inserire correttamente i frammenti di codice qui

Prima di tutto determinare quale lato è il problema per risolverlo.

Il codice è così:


 
Ciao a tutti, non riesco a caricare la cronologia delle offerte per qualsiasi periodo tranne un mese, ho provato di tutto, reinstallato il terminale completamente, niente aiuta. Ho provato di tutto, l'ho reinstallato completamente, niente aiuta. Cosa è successo quando ho applicato un vecchio modello al grafico dei prezzi, come risultato tutte le operazioni sono scomparse dal grafico e la storia ha perso le operazioni di ottobre, solo pipsqueak. Forse qualcuno ha affrontato un tale problema per favore aiutatemi, anche Internet non ha avuto risposte. MT4
Совершение сделок - Торговые операции - Справка по MetaTrader 5
Совершение сделок - Торговые операции - Справка по MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
MT4
 
Buon pomeriggio. Potete dirmi come determinare il numero di posizioni aperte per ogni coppia di valute e visualizzarle sul grafico? Se le posizioni sono aperte su diverse coppie di valute in quantità diverse.
 
makssub:
Buon pomeriggio. Potete dirmi come determinare il numero di posizioni aperte per ogni coppia di valute e visualizzarle sul grafico? Se le posizioni sono aperte su diverse coppie di valute in quantità diverse.

Superare le posizioni.

 
makssub:
Pomeriggio. Potreste dirmi come determinare il numero di posizioni aperte per ogni coppia di valute e visualizzarlo sul grafico? Se le posizioni sono aperte su diverse coppie di valute in quantità diverse.

L'indicatore iExposure.mq4 è fornito di serie con il terminale

 
Buon pomeriggio.
Puoi dirmelo per favore. Perché nell'indicatore quando si cercano le barre, l'indicatore inizia tutto il tempo da agosto 2020. Non importa quale parametro i sia impostato, i=500 o 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("   ");
           }
        }
     }
}
 

Il superamento inizia 100 barre prima del giorno corrente. Al D1, questo è solo agosto. I parametri non influiscono su questo numero.

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

Ciao, ho un problema.

Ho dei geroglifici al posto delle lettere russe.Ho provato a cambiare le impostazioni regionali, ma non è servito. Conosce qualche metodo di lavoro?

 
Aleksey Verbin:

Ho dei geroglifici al posto delle lettere russe.

.

Motivazione: