Erreurs, bugs, questions - page 1002

 
Vladon:

Pour autant que je sache - la mise à jour du terminal est faite pour une raison, certaines fonctions deviennent cassées, c'est sûr.

Mais comment désactiver la mise à jour - cela doit fonctionner intelligemment, car cela me semble très simple.

En effet, tout est simple :)

Et où avez-vous lu ce qui a changé dans la nouvelle construction ?

Merci !

 
ns_k:

Vraiment simple :)

Où puis-je lire ce qui a changé dans la nouvelle version ?

Merci !

https://www.mql5.com/ru/forum/23
Список изменений в билдах MetaTrader 5 Client Terminal
Список изменений в билдах MetaTrader 5 Client Terminal
  • www.mql5.com
Автоматическое обновление доступно через систему LiveUpdate:.
 

Bonjour !

J'utilise les niveaux dans la fenêtre de l'indicateur

IndicatorSetDouble(INDICATOR_LEVELVALUE,1,80);  

Il est bon qu'il puisse y avoir plusieurs niveaux. Est-il possible de définir une seule et même propriété pour différents niveaux de manière différente ?

Par exemple, je voudrais que 1,80 soit dessiné en bleu solide et que 0,20 soit dessiné en noir pointillé.

Merci !

 
  void fLog(string Message){
    //ЗАПИСЬ В ТХT
   ResetLastError();
    filehandle=FileOpen(file_name,FILE_WRITE|FILE_TXT);
   if(filehandle!=INVALID_HANDLE){
        FileSeek(filehandle,0,SEEK_END);
        FileWrite(filehandle,Message);
        FileClose(filehandle);
        //Print("Запись удачна!"); 
     }
   else Print("Операция FileOpen неудачна, ошибка ",GetLastError()); 
        } 
Je veux ajouter à la fin du fichier et il est écrasé. Qu'est-ce qu'il y a ?
 

Si FILE_WRITE - le fichier est recréé avec une taille nulle.

Si FILE_READ|FILE_WRITE - un nouveau fichier est créé s'il n'existe pas de fichier portant ce nom.

 

Écriture du code

//+------------------------------------------------------------------+
//|                                                   LEVELSTEST.mq5 |
//|                        Copyright 2013, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
#property indicator_separate_window
#property indicator_minimum 0
#property indicator_maximum 100
#property indicator_buffers 1
#property indicator_plots   1

int OnInit()
  {
//--- indicator buffers mapping
  
  
   IndicatorSetInteger(INDICATOR_LEVELS,2);
   IndicatorSetInteger(INDICATOR_LEVELCOLOR,clrBlue);
   IndicatorSetInteger(INDICATOR_LEVELSTYLE,2);
   IndicatorSetDouble(INDICATOR_LEVELVALUE,0,30.0);
   IndicatorSetDouble(INDICATOR_LEVELVALUE,1,50.0);
      
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
//| TradeTransaction function                                        |
//+------------------------------------------------------------------+
void OnTradeTransaction(const MqlTradeTransaction& trans,
                        const MqlTradeRequest& request,
                        const MqlTradeResult& result)
  {
//---
   
  }
//+------------------------------------------------------------------+

La sortie que j'obtiens est

https://www.mql5.com/en/charts/408767/eurusd-m5-alpari-fs-levels-test

Cela doit-il être le cas, ou le niveau 50 doit-il également être dessiné comme une ligne pointillée bleue ?

Merci !

Chart EURUSD, M5, 2013.06.16 22:20 UTC, Alpari FS, MetaTrader 5, Demo
Chart EURUSD, M5, 2013.06.16 22:20 UTC, Alpari FS, MetaTrader 5, Demo
  • www.mql5.com
Chart EURUSD, M5, Alpari FS: LEVELS TEST
 
A100:

Si FILE_WRITE - le fichier est recréé avec une taille nulle.

Si FILE_READ|FILE_WRITE - un nouveau fichier est créé s'il n'existe pas de fichier portant ce nom.

Merci.
 
ns_k:

Il est bon qu'il puisse y avoir plusieurs niveaux. Est-il possible de définir différemment la même propriété pour différents niveaux ?

C'est-à-dire que, par exemple, je voudrais que 1,80 soit dessiné comme un solide bleu et que 0,20 soit dessiné comme une ligne pointillée noire.

Bien sûr, ils n'ont publié des exemples que l'autre jour :

  1. Demo_IndicatorSetInteger
  2. Demo_IndicatorSetDouble
  3. Demo_IndicatorSetString
 
A100:
Bug, parce que ce qui suit ne compile pas, donc votre exemple ne devrait pas.

ts==true et ts!=NULL sont des expressions complètement différentes.

De plus,

ts==true et ts!=false sont également des expressions différentes.

Savez-vous en quoi ils sont différents ? Non seulement dans la syntaxe, mais aussi dans la sémantique.

 
stringo:

ts==true et ts!=NULL sont des expressions complètement différentes.

De plus,

ts==true et ts!=false sont également des expressions différentes

Savez-vous en quoi ils sont différents ? Non seulement dans la syntaxe, mais aussi dans la sémantique.

Mais le point de la question était que ts est un tableau. Et pourquoi ce if(ts) compile alors que le précédent ne le fait pas.