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 42

 
Forexman77 :
Muito obrigado!
Veja a segunda opção... Acho que é mais confiável do que a primeira.
 
Preciso marcar uma sexta-feira no gráfico com uma seta. Eu tentei fazer um indicador de acordo com o modelo. Não há erros, mas a seta não aparece. Qual poderia ser a razão?
//+------------------------------------------------------------------+
//|                                                   пятый день.mq4 |
//|                                                                  |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright ""
#property link      ""

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Aqua
//--- buffers
double ExtMapBuffer1[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,217);
   SetIndexBuffer(0,ExtMapBuffer1);
   SetIndexEmptyValue(0,0.0);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
    int counted_bars=IndicatorCounted(),  
    pyatnica,                    
    limit;
 
   if(counted_bars>0)
      counted_bars--;
   
   limit=Bars-counted_bars;
   
   
   for(int i=0;i<limit;i++)
   {
      pyatnica = (DayOfWeek() == 5); 
      
      {
      ExtMapBuffer1[i]=pyatnica;
      }
   }
   return(0);
  }
//+------------------------------------------------------------------+
 
pyatnica = (TimeDayOfWeek (Time[i]) == 5);
if (pyatnica) ExtMapBuffer1[i] = Bid;
e haverá setas todas as sextas-feiras.
 
TarasBY :
e haverá setas todas as sextas-feiras.

Somente eles estarão fora da tela
 

Escreveu o código.

int start()
  {
    int counted_bars=IndicatorCounted(),  
    pyatnica,                    
    limit;
 
   if(counted_bars>0)
      counted_bars--;
   
   limit=Bars-counted_bars;
   
   
   for(int i=0;i<limit;i++)
   {
      pyatnica = (TimeDayOfWeek (Time[i]) == 5);
      if (pyatnica) ExtMapBuffer1[i] = Bid;
      
      {
      ExtMapBuffer1[i]=pyatnica;
      }
   }
   return(0);
  }
erro: 'pyatnica' - expressão de comparação esperada.
 
Forexman77 :

Eu escrevi o código.

erro: 'pyatnica' - expressão de comparação esperada.

Como sua variável é do tipo int, você deve escrevê-la desta forma:

if (pyatnica!=0) ExtMapBuffer1[i] = Bid;
Além disso, você perdeu mais.
 
PapaYozh :

Como você tem uma variável do tipo int, você deve escrevê-la assim:

e também, você está faltando outro.
Obrigado, funcionou. Somente por que "pyatnica" para escrever em dobro, parece ser um número inteiro? Tentei em int também funciona.
 
Vinin :

Só estar fora da tela

Existe tal coisa. De vez em quando, as setas voam para cima ou para baixo. É possível ligá-los ao eixo gráfico?
 
Forexman77 :

Existe tal coisa. De vez em quando, as setas voam para cima ou para baixo. É possível ligá-los ao eixo gráfico?

bool pyatnica; // убрать её объявление из int
for(int i=0;i<limit;i++)
   {
      pyatnica = (TimeDayOfWeek (Time[i]) == 5);
      if (pyatnica) ExtMapBuffer1[i] = Bid;
   }
 
Vinin : Basta estar fora da tela.

Como você sabia que ele ia escrever "bobagem" novamente! :)))

P.S. A propósito, eu não prestei atenção "que tipo de pyatnica" imediatamente.

Razão: