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

 
Você pode me dizer como dividir todas as ordens em dois grupos na abertura para que eu possa ver a que grupo cada ordem pertence? (MAGIC não funciona)
 

Olá.

Você pode me dizer se é possível criar uma matriz ou sua contraparte a partir de variáveis de alguma forma? Minha variante é dada abaixo, mas é claro que ela está errada.

Agradecemos antecipadamente.

extern int F1=0;
extern int F2=0; 
extern int F3=0; 
extern int F4=0; 
extern int F5=0; 
extern int F6=0; 

*************************************

int NOrd[]={F1,F2,F3,F4,F5,F6};
 
nemo811:

Olá.

Você pode me dizer se é possível criar uma matriz ou sua contraparte a partir de variáveis de alguma forma? Minha variante é dada abaixo, mas é claro que ela está errada.

Agradecemos antecipadamente.

elemento por elemento

NOrd[0]=F1; NOrd[1]=F2;....

 
costy_:

elemento por elemento

NOrd[0]=F1; NOrd[1]=F2;....

Perfeito! Obrigado.
 

Por favor, explique o princípio de ação das bandeiras.

Se a Condição1 for cumprida, então Val_max=verdadeiro e passamos a verificar a Condição2 (nos tiques subseqüentes a Condição1 não é mais verificada até que declaremos à força que Val_max=falso). Ou a cada tic Condição1 será verificada para garantir que é verdadeira e se a condição não for cumprida, então Val_max=false ?

Se a Condição2 for verdadeira, então Cl_dn=verdadeira e procederemos a verificar a Condição3 (nos próximos ticks a Condição2 não será verificada até que declaremos à força Cl_dn=falsa). Ou a cada tic Condição1 e Condição2 será verificada a validade e se não forem cumpridas, então Val_max=falso e Cl_dn=falso ?

Se a Condição3 for cumprida e Cl_dn===verdadeiro, então Val_min=verdadeiro e passar adiante

Como verificar se a Condição1 está preenchida, então não a verifique mais e no próximo tick-tack verifique a Condição2 e assim por diante?

static bool Val_max, Cl_dn, Val_min; //static or global
                                        |
//+------------------------------------------------------------------+
int start()
  {
   int  j;
   double  bid;                                         
   bid=Bid;                                    // Текущая цена продажи
   string
   Symb=Symbol();                               // Название фин.инстр.
double Value_max=1.0000;
double Value_min=0.9980;
double Open_1=Open[1];
double Close_1=Close[1];
//----

//--------------------------------------------------------------- 4 --

double Val=iCustom(NULL, 0, "Название Польз. Индикатора",0,0);   // Присваиваем пер. Val значение польз. индикатора
if (Условие1)
{
 Val_max=true;                  // 
 Alert("Значение инд. >= V alue_max (исп. 1-е усл.)");
}
if (Условие2)
{
 Cl_dn=true;
 Alert("1 бар закрылся падением (исп. 2-е усл.)");
}
if (Условие3 && Cl_dn==true)
{
 Val_min=true;
 Alert("Значение инд. <= V alue_min (исп. 3-е усл.)");
}
if (Val_max==true && Cl_dn==true && Val_min==true)
  {
   for (j = 0; j < OrdersTotal(); j++)
    {
     OrderSelect(j, SELECT_BY_POS, MODE_TRADES);
     if (OrderSymbol() == Symbol())
      {
      if (OrderType() == OP_SELL) return(0);
      }
    }
   
   OrderSend(Symbol(),OP_SELL,0.1,NormalizeDouble(Bid,Digits),2,Bid+400*Point,Bid-400*Point,"",3,Red);  // Открытие SELL
   Val_max=false; Cl_dn=false; Val_min=false;
  }

//----
   return(0);
  }
 
costy_:

elemento por elemento

NOrd[0]=F1; NOrd[1]=F2;....

Não, tentou de ambas as maneiras - o compilador gera erros.
 
nemo811:
Não, eu tentei de ambas as maneiras - o compilador gera erros.


E assim, se NOrd[] não for um indicador e não estiver localizado em um bloco global:

int NOrd[6];
NOrd[0]=F1; NOrd[1]=F2;....
 
DOCTORS:


Na verdade, só os tenho vermelhos (e são 6) e após cada teste tenho que colorir o gráfico manualmente (é assim que eu sou...). Eu não quero reescrevê-lo.

Talvez haja um comando padrão?

Não julgue estritamente, estou apenas aprendendo...

procurar por #indicador de propriedade_color1 Vermelho

 
nemo811:
Não, eu tentei de ambas as maneiras - o compilador gera erros.

Leia

primeiro, definir o tamanho da matriz

buf[2]; .

designar

buf[0]=x1; buf[1]=x2;

Você levará 2 minutos paralê-lo.

 
Mislaid:


Caso contrário, se NOrd[] não for um indicador:

Obrigado. Sem erros agora.