Caractéristiques du langage mql4, subtilités et techniques - page 7

 
Artyom Trishkin:

Alors je ne le comprends pas du tout. Que voulez-vous dire par "OrderCommission() stocke des données non arrondies en centimes"? Où sont-ils arrondis ? Et comment sont-ils arrondis ?

Dans l'interface graphique, rapports et OrderPrint à cents.

 
fxsaber:

Dans l'interface graphique, les rapports et OrderPrint aux cents.

100.12345 est arrondi à 100.12 ?

 
Artyom Trishkin:

100.12345 arrondi à 100.12 ?

Oui.

 
//+----------------------------------------------------------+
//|В скрипте могут присутствовать функции OnInit() и OnDeinit|
//+----------------------------------------------------------+
#property   strict

void OnInit()
{
  Alert("1. Инициализация скрипта");
}

void OnStart()
{
  Alert("2. Расчет");
}

void OnDeinit(const int Причина)
{
  string Прич[3]={"Эксперт прекратил свою работу, вызвав функцию ExpertRemove()",
                  "Программа удалена с графика",
                  "Программа перекомпилирована"};

  Alert(3,". ",Прич[Причина]);
}

Le script peut avoir des fonctions OnInit() et OnDeinit

est utile si le script est en boucle. Ensuite, nous plaçons les opérations préparatoires dans OnInit(), une boucle dans OnStart() et la fin du programme dans OnDeinit().

 
Les commentaires non liés à ce sujet ont été déplacés vers"Questions des débutants sur MQL4, aide et discussion sur les algorithmes et les codes".
 
Les commentaires non liés à ce sujet ont été déplacés vers "Toutes les questions des débutants sur MQL4, aide et discussion sur les algorithmes et les codes".
 
Les commentaires non liés à ce sujet ont été déplacés vers "Toutes les questions des débutants sur MQL4, aide et discussion sur les algorithmes et les codes".
 
Caractéristiques de MT5 pour les plates-formes croisées
// https://www.mql5.com/ru/docs/files/fileload
template <typename T>
long FileLoad( const string FileName, T &Buffer[], const int CommonFlag = 0 )
{
  long Res = -1;
  const int handle = FileOpen(FileName, FILE_READ | FILE_BIN | CommonFlag);
  
  if (handle != INVALID_HANDLE)
  {
    if (!(Res = FileReadArray(handle, Buffer)))
      Res = -1;
    
    FileClose(handle);
  }
  
  return(Res);  
}
// https://www.mql5.com/ru/docs/files/filesave
template <typename T>
bool FileSave( const string FileName, const T &Buffer[], const int CommonFlag = 0 )
{
  const int handle = FileOpen(FileName, FILE_WRITE | FILE_BIN | CommonFlag);
 
  const bool Res = (handle != INVALID_HANDLE) && FileWriteArray(handle, Buffer);
  
  if (handle != INVALID_HANDLE)
    FileClose(handle);
  
  return(Res);  
}
 
Si vous voulez que l'indicateur ne reçoive pas les événements Calculate
#property indicator_chart_window
#property indicator_buffers 0

// Фейковый (MT4) OnCalculate
int OnCalculate( const int, const int, const int, const double& [] ) { return(0); }


Le journal sera

indicator on custom buffer is not supported yet


et OnCalculate ne seront pas appelés.

Raison: