[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 521

 
Veuillez me dire pourquoi seulement deux ordres (1 et 100 fibas) sur les quatre que je veux passer

.
tick=OrderSend(Symbol(),OP_SELLLIMIT,volume,Fibo100,0,0,Fibo1,NULL,magic,0,Red) ;
tick=OrderSend(Symbol(),OP_SELLLIMIT,volume,Fibo138,0,0,Fibo62,NULL,magic,0,Red) ;
tick=OrderSend(Symbol(),OP_BUYLIMIT,volume,Fibo1,0,0,Fibo100,NULL,magic,0,Red) ;
tick=OrderSend(Symbol(),OP_BUYLIMIT,volume,Fibo_138,0,0,Fibo38,NULL,magic,0,Red) ;
 

J'ai une question sur les variables statiques. Ont-elles un avantage en termes de performances par rapport aux variables globales (puisqu'elles leur sont fonctionnellement équivalentes) et aux variables locales ?

 
Je ne comprends pas quel est le problème. Je fais ceci :
 Print(DoubleToStr(NormalizeDouble(Ask, 5),5));
Donne cinq décimales : 1,34869.

Et, si sans la fonction DoubleToStr
   query = StringConcatenate("insert into eurousd(ASK, BID) values(",
                             NormalizeDouble(Ask, 5), ",", NormalizeDouble(Bid, 5), ");");
   Print(query);
puis :
insert into eurousd(ASK, BID) values(1.349,1.3489) ;. C'est-à-dire 4 décimales !
Je ne voudrais pas utiliser la fonction de conversion en chaîne, car il est préférable d'avoir un type double dans la base de données.
Quel peut être le problème ?
 
L'impression ne permet pas d'imprimer plus de 4 caractères par double.
 
Ainsi, l'argument de la fonction print est déjà une chaîne de caractères, et non un double. Le fait est que si vous n'utilisez pas la fonction DoubleToStr,
puis StringConcatenate tronquent les caractères.
 
fevrall >>:
Так в аргумент функции print попадает уже строка, а не double. Суть в том, что если не использовать функцию DoubleToStr,
то StringConcatenate обрезает знаки.

L'argument de la fonction print est une commande pour imprimer une chaîne et deux doubles consécutivement. Les deux doubles sont tronqués.

N'hésitez pas à mettre double dans la base, puisque la conversion en chaîne de caractères montre que la précision requise est présente.

 
granit77, merci pour votre attention !

   query = StringConcatenate("insert into eurousd(ASK, BID) values(",
                             DoubleToStr(NormalizeDouble(Ask, 5),5), ",",
                             DoubleToStr(NormalizeDouble(Bid, 5),5), ");");
Avec DoubleToStr, la base de données obtient ce dont elle a besoin.
 
Je voudrais également obtenir l'heure du serveur à laquelle l'événement Tick s'est produit.)
 

Comment programmer la fenêtre de l'indicateur comme une bande étroite ?

 
nikost >>:

Как можно окно индикатора програмно сделать в виде узкой полоски

Le type de cluster ?

C'est brut mais ça fera l'affaire à titre d'exemple, ça vient en gros d'une décharge, alors allez voir.

Raison: