#property strict

Para adicionar comentários, por favor Faça o login ou registrar
Daniel Andrejczuk
5698
Daniel Andrejczuk  

Pessoal, bom dia!

 Estava estudando um código de um indicador, e a propriedade "#property strict" apareceu, não achei na documentação a funcionalizabilidade dela, alguém sabe dizer? 

 At.

 Daniel 

Rodrigo da Silva Boa
7170
Rodrigo da Silva Boa  
Program Properties (#property) - Preprocessor - Language Basics - MQL4 Reference
Program Properties (#property) - Preprocessor - Language Basics - MQL4 Reference
  • docs.mql4.com
Program Properties (#property) - Preprocessor - Language Basics - MQL4 Reference
Daniel Andrejczuk
5698
Daniel Andrejczuk  

Obrigado pela ajuda!

Abraços

Daniel 

Daniel Andrejczuk
5698
Daniel Andrejczuk  

Bom dia! 

Em um outro tópico do fórum (https://www.mql5.com/pt/forum/95553) foi citado um código gratuito, fui olhar a título de aprendizado e o código apresentou a propriedade  "#property strict" que desconhecia e fui pesquisar ela, pelo que vi na documentação acima era uma opção do mt4 e fiquei no entendimento que ela foi descontinuada no mt5 ?

Na documentação do mt5 essa propriedade não aparece (https://www.mql5.com/pt/docs/basis/preprosessor/compilation) .

Outra dúvida, no projeto gratuito ele tem a extensão de programa mt5, se usa uma propriedade descontinuada não deveria gerar um erro ao compilar ?

Se usarmos em projeto mt5 propriedades descontinuadas elas funcionarão? 

Abaixo segue o código do projeto gratuito (https://www.mql5.com/pt/code/12611): 

 

//+------------------------------------------------------------------+
//|                                              CandleTimeStationary|
//|                                                                  |
//|                                                                  |
//+------------------------------------------------------------------+

#property indicator_chart_window
#property strict

//---- input parameters
input color Clock_Color = clrDimGray;
input ENUM_BASE_CORNER Corner = CORNER_RIGHT_UPPER;

string objname="Spread&Bar";
double s1[];

//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
{
        ObjectCreate(0, objname, OBJ_LABEL,0, 0, 0);
        ObjectSetInteger(0, objname, OBJPROP_CORNER, Corner);
        ObjectSetInteger(0, objname, OBJPROP_XDISTANCE, 10);
        ObjectSetInteger(0, objname, OBJPROP_YDISTANCE, 2);
        ENUM_ANCHOR_POINT Anchor = ANCHOR_LEFT_UPPER;
        switch (Corner)
        {
                case CORNER_LEFT_UPPER: Anchor=ANCHOR_LEFT_UPPER; break;
                case CORNER_RIGHT_UPPER: Anchor=ANCHOR_RIGHT_UPPER; break;
                case CORNER_LEFT_LOWER: Anchor=ANCHOR_LEFT_LOWER; break;
                case CORNER_RIGHT_LOWER: Anchor=ANCHOR_RIGHT_LOWER; break;
        }
        ObjectSetInteger(0, objname, OBJPROP_ANCHOR, Anchor);
        
        return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
void OnDeinit(const int reason) { ObjectDelete(0, objname); } 

//+------------------------------------------------------------------+
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& spreads[])
{
        ArraySetAsSeries(time, true);
        int m=int(time[0]+PeriodSeconds()-TimeCurrent());
        int s=m%60;
        m=(m-s)/60;
        long spread=SymbolInfoInteger(Symbol(), SYMBOL_SPREAD);
        
        string _sp="",_m="",_s="";
        if (spread<10) _sp="..";
        else if (spread<100) _sp=".";
        if (m<10) _m="0";
        if (s<10) _s="0";
        
        ObjectSetString(0, objname, OBJPROP_TEXT, "Spread: " +IntegerToString(spread)+_sp+" Next Bar in "+_m+IntegerToString(m)+":"+_s+IntegerToString(s));
        ObjectSetInteger(0, objname, OBJPROP_FONTSIZE, 10);
        ObjectSetInteger(0, objname, OBJPROP_COLOR, Clock_Color);
        ObjectSetString(0, objname, OBJPROP_FONT, "Courier");
        
        return(rates_total);
}

 

Atenciosamente,

Daniel 

Relógio regressivo na tela do meta trader
Relógio regressivo na tela do meta trader
  • www.mql5.com
Alguém sabe se tem como colocar o relógio que vai medido o tempo dos candle...
Para adicionar comentários, por favor Faça o login ou registrar