Erros, bugs, perguntas - página 1002

 
sion:

se deve funcionar com arrays ou é um insecto?

Bug, porque o seguinte não se compila, pelo que o seu exemplo não deve
( (bool)ts )
( (int)ts )
( ts == true )
( ts != NULL )
 
Vladon:

Tanto quanto sei - a actualização do terminal é feita por uma razão, algumas funções tornam-se quebradas, isso é certo.

Mas como desactivar a actualização - deve funcionar de forma inteligente, porque me parece muito simples.

De facto, tudo é simples :)

E onde leu o que mudou na nova construção?

Obrigado!

 
ns_k:

Realmente simples :)

Onde posso ler o que mudou na nova construção?

Obrigado!

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

Boa tarde!

Utilizo níveis na janela indicadora

IndicatorSetDouble(INDICATOR_LEVELVALUE,1,80);  

É bom que possa haver vários níveis. Existe a possibilidade de definir uma e a mesma propriedade para diferentes níveis de forma diferente?

Isto é, por exemplo, gostaria que 1,80 fosse desenhado como sólido azul e 0,20 fosse desenhado como preto tracejado.

Obrigado!

 
  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()); 
        } 
Quero acrescentar ao fim do ficheiro e este é sobreescrito. O que é que está errado?
 

Se FILE_WRITE - ficheiro é recriado com tamanho zero

Se FILE_READ|FILE_WRITE - um novo ficheiro é criado se não houver ficheiro com esse nome.

 

Código de escrita

//+------------------------------------------------------------------+
//|                                                   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)
  {
//---
   
  }
//+------------------------------------------------------------------+

A produção que recebo é

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

Deverá ser este o caso, ou deverá o nível 50 ser desenhado também como uma linha pontilhada azul?

Obrigado!

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:

Se FILE_WRITE - ficheiro é recriado com tamanho zero

Se FILE_READ|FILE_WRITE - um novo ficheiro é criado se não houver ficheiro com esse nome.

Obrigado.
 
ns_k:

É bom que possa haver vários níveis. É possível definir a mesma propriedade para diferentes níveis de forma diferente?

Isto é, por exemplo, gostaria que 1,80 fosse desenhado como um sólido azul e que 0,20 fosse desenhado como uma linha pontilhada preta.

Claro que, no outro dia, só publicaram exemplos:

  1. Demo_IndicatorSetInteger
  2. Demo_IndicatorSetDouble
  3. Demo_IndicatorSetString
 
A100:
Bug, porque o seguinte não se compila, pelo que o seu exemplo não deve ser compilado.

ts===verdadeiro e ts!=NULL são expressões completamente diferentes.

Além disso

ts===verdadeiro e ts!=falso são também expressões diferentes.

Sabe como eles são diferentes? Não só na sintaxe, mas também na semântica.