[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 410

 
costy_:

Eh bien, où est l'indicateur ? ! (devinant par le marc de café Tel. https://www.mql5.comhttps://www.mql5.com/ru/)

Correction...

Le problème est que l'indicateur ne se redessine pas à l'apparition d'une nouvelle barre.

Le code de l'indicateur se trouve dans le fichier joint. Je ne peux pas le placer via src (le code n'est pas trop gros).

Merci d'avance pour votre aide.

 
S'il vous plaît, dites-moi comment décrire la situation suivante de manière élégante. Supposons que nous venions de former une barre sur un haut TF (par exemple iHigh[NULL,1440,1]). Comment décrire la première barre du code sur un TF inférieur alors que iHigh[NULL,1440,0] est en formation) ? ? Je ne peux que penser à des structures encombrantes. Merci !
 
costy_:

Lire

définir d'abord la taille du tableau

buf[2] ; .

attribuer

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

Lalecture vous prendra 2 minutes.

Merci. Je l'ai déjà lu, je suppose que je n'ai pas prêté beaucoup d'attention.
 
001:
Pourriez-vous nous dire comment décrire la situation de la manière suivante ? Supposons que nous n'ayons qu'une barre formée sur un TF haut (par exemple iHigh[NULL,1440,1]). Comment décrire la première barre du code sur un TF inférieur alors que iHigh[NULL,1440,0] est en formation) ? ? Je ne peux que penser à des structures encombrantes. Merci !

Par exemple, savez-vous si une nouvelle bougie quotidienne s'est ouverte sur une échelle de temps inférieure ?

Ou limites en barres de la bougie d'un jour sur un bas (pas 0)

 
LOA:

Correction...

Le problème est que l'indicateur ne se redessine pas avec l'apparition d'une nouvelle barre.

Le code de l'indicateur se trouve dans le fichier joint. Je n'ai pas réussi à le placer via src (le code semble être petit).

Je suis très reconnaissant pour cette aide.

ex4 n'est pas visible, besoin de mq4
 
costy_:

Par exemple, savez-vous si une nouvelle bougie quotidienne s'est ouverte sur une échelle de temps inférieure ?

Ou des limites dans les barres d'une bougie d'un jour sur un bas (pas 0).


Lorsqu'une nouvelle bougie s'ouvre dans le TF haut, renvoyer la valeur d'une certaine bougie dans un TF bas, mais dans les limites de la bougie, qui est formée (elle est maintenant sur le 0 haut), dans le TF haut. Par exemple, pendant qu'il y a encore une bougie 0 sur le TF haut, pour retourner la valeur d'une certaine bougie sur le TF bas.

Dans mon cas, nous devons savoir que cette bougie sur (M1 par exemple) a clôturé au-dessus du haut sur D1 (par exemple).

 

Comment faire :

si la Condition1 est vraie, alors ne la vérifiez pas à chaque tick, et sur les ticks suivants, vérifiez également la Condition2, puis la Condition3, jusqu'à ce que nous déclarions que tous les drapeaux sont faux ?

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("Значение инд. >= Value_max (исп. 1-е усл.)");
}
if (Условие2)
{
 Cl_dn=true;
 Alert("1 бар закрылся падением (исп. 2-е усл.)");
}
if (Условие3 && Cl_dn==true)
{
 Val_min=true;
 Alert("Значение инд. <= Value_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_:
ex4 n'est pas visible, besoin de mq4

Ok, désolé...
Dossiers :
 
001:


Lorsqu'une nouvelle bougie s'ouvre sur le TF haut, renvoyer la valeur d'une certaine bougie sur le TF bas, mais à l'intérieur de la bougie en cours de formation (elle est encore 0 sur le haut), sur le TF haut. C'est-à-dire, tant qu'il y a encore une bougie 0 sur le TF haut, retourner la valeur d'une certaine bougie sur le TF bas.

Dans mon cas particulier, j'ai besoin de savoir que cette bougie sur (M1 par exemple) a clôturé au-dessus du haut sur D1 (par exemple).

Je ne comprends toujours pas

iBarShift(0,0,iTime(0,1440,iBarShift(0,1440,Time[0]))) //вернет бар открытия текущего дня на любом текущем тф
iBarShift(0,0,iTime(0,1440,1+iBarShift(0,1440,Time[0]))) //вернет бар открытия вчерашнего дня на любом текущем тф

L'image est probablement plus facile à expliquer.

 
LOA:

Ok, désolé...
iCustom (NULL,0,"ME_Proboy_F5_For_EX",0,i+1)

il lit les données de la barre qui a déjà établi (précédent) i+1 retrait. Mais l'algorithme du créateur sera brisé (il est le mieux placé pour le savoir, je travaille aussi sur des données ouvertes et générées +1).