Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 864

 
tara:
Aprenda, aprenda e aprenda. Primeiro - aprender a entender o que fazer, depois - aprender a formular uma pergunta, como fazer. E depois aprender a fazer as coisas. Se você realmente quiser, é claro...

Obrigado... Que país dos soviéticos! Infelizmente, eu não estou realmente queimando com o desejo de estudar a fundo a MQL4. Nesta fase, é de interesse limitado, ou seja, apenas para um Expert Advisor em particular. Eu sei que não preciso de um manual, mas quero que os profissionais me ajudem, até mesmo os tutores ausentes estão disponíveis. Bem, nós mesmos o faremos. Só é uma pena o tempo.

Bem, mais uma coisa: na verdade me voltei para este ramo, acreditando no título: "Qualquer questão de um iniciante ...". E se uma resposta normal é humilhante para você, então por que você está aqui? Para mostrar seu profissionalismo? Acho que isso é conseguido de uma maneira um pouco diferente.

 
rapid_minus:
Obrigado... Que país dos soviéticos! Infelizmente, eu não estou realmente queimando com o desejo de estudar minuciosamente a MQL4. Nesta fase, é de interesse limitado, ou seja, apenas para um Expert Advisor em particular. Eu sei que não preciso de um manual, mas quero que os profissionais me ajudem, até mesmo os tutores ausentes estão disponíveis. Bem, nós mesmos o faremos. Mas é uma pena a época.

Ajuda qualificada por uma taxa razoável: https://www.mql5.com/ru/job Não descuide e economize tempo! Neste mundo, eles também pagam por conselhos!

Tudo é comercializado!

 
borilunad:

Ajuda qualificada por uma taxa razoável: https://www.mql5.com/ru/job Não descuide e economize tempo! Neste mundo, eles também pagam por conselhos!

Tudo é comercializado!

O único dinossauro que resta é Igor Kim. E ele, em minha opinião, se cansou de nós ignorantes. É uma pena...
 
rapid_minus:
O único dinossauro que resta é provavelmente Igor Kim. E eu acho que ele se cansou de nós, amadores. É uma pena...
Por quê? Ainda há alguns...
 
artmedia70:
Por que, há um pouco mais...

Sim, obrigado. Eu também o conheço do fio da Kim. Nos últimos anos, infelizmente, o ramo se tornou muito infestado (IMHO).

Não me atrevo a abordar os respeitados e até reverenciados diretamente (ainda...), mas: "A" já foi dito...

 

Olá,

Parece estar bem, mas não se mostrará baixo[1] .


//+------------------------------------------------------------------+
#property copyright ""
#property link      ""
int high[7],low[7],timeh[7],timel[7];
//+------------------------------------------------------------------+
int init(){  
  return(0);
 }
int deinit(){
  Comment("");
  return(0);
 }  
//-------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
int start(){
    double   spred = MarketInfo(Symbol(),MODE_SPREAD);
    int      value0,value1,value2,limit,av_vol;
    int      i,Open_bar_per,Close_bar_per;
    datetime Time_period,Close_per;
//+------------------------------------------------------------------+
       Time_period   = iTime(Symbol(),PERIOD_D1,0);
       Open_bar_per  = iBarShift(Symbol(),0,Time_period,false);
       Close_per     = iTime(Symbol(),0,0)-Period()*60;
       Close_bar_per = iBarShift(Symbol(),0,Close_per,false);
       limit         = Open_bar_per - Close_bar_per;

   for(i=limit;i>0;i--){
       value0=0;value1=0;value2=0;

       value0   = iVolume(Symbol(),0,i);
       value1   = iVolume(Symbol(),0,i+1);
       value2   = iVolume(Symbol(),0,i+2);
       
    if(value0 > value1 && value1 < value2){
       low[0]   = value1;
       timel[0] = iTime(Symbol(),0,i+1);
     }
    if(value0 < value1 && value1 > value2){
       high[0]  = value1;
       timeh[0] = iTime(Symbol(),0,i+1);
     }
   for(int j=7;j>=0;j--){
       high[j]  = high[j-1];
       low[j]   = low[j-1];
       timeh[j] = timeh[j-1];
       timel[j] = timel[j-1];
     }
    if(high[1] < high[2]){
       high[1]  = high[2];
       timeh[1] = timeh[2];
     }
    if(low[1] > low[2]){
       low[1]   = low[2];
       timel[1] = timel[2];
     }
  } 
       av_vol = NormalizeDouble(high[1]/3,0);
//+------------------------------------------------------------------+
     Comment("\nВреме на брокера: ",TimeToStr(TimeCurrent(),TIME_SECONDS),", Локално време: "+TimeToStr(TimeLocal(),TIME_SECONDS),
             "\nТекущ спред: ",DoubleToStr(spred/10,1),
             "\n=====================",
             "\n High_per  :  ",high[1],
             "\n Low_per   :  ",low[1],   
             "\n time_high :  ",TimeToStr(timeh[1],TIME_SECONDS),
             "\n time_low  :  ",TimeToStr(timel[1],TIME_SECONDS),
             "\n Close_per :  ",TimeToStr(Close_per,TIME_SECONDS),
             "\n Open_per  :  ",limit, 
             "\n=====================",
             "\n av_vol    :  ",av_vol,
             "\n====================="
             ); 
  return(0);  
  }
 
mario065:

Olá,

Parece estar tudo bem, mas não vai se mostrar baixo[1] .



Não o confunde se estiver fora da matriz?

Está bem aqui:

for(int j=7;j>=0;j--){
       high[j]  = high[j-1];
       low[j]   = low[j-1];
       timeh[j] = timeh[j-1];
       timel[j] = timel[j-1];
     }

Além disso, "não quer mostrar" ali tudo, não apenas baixo[1].

 
evillive:

Não está confuso ao sair da matriz?

Aí mesmo:

Eu não entendo!?

Este laço é apenas para mover o resultado.

Então, se houver uma condição, será a primeira novamente.

 
mario065:

Eu não entendo!?

Este laço é apenas para mover o resultado.

Então se a condição for novamente, será a primeira

O laço acessa elementos de matriz inexistentes, não importa para que seja utilizado. Isso não é bom.
 
evillive:
Um loop acessa elementos de matriz inexistentes, não importa para que seja. Isto não é bom.
Sugestões - como consertá-la?