[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 406

 

Bonjour à tous.

J'ai besoin d'une fonction, ou d'une opération, qui donnerait les x dernières valeurs d'un nombre.

Par exemple, il existe un nombre 123456789, la variable x = 4. Le résultat devrait être 6789, c'est-à-dire les 4 derniers caractères de 123456789.

 
Killa:

Bonjour à tous.

J'ai besoin d'une fonction, ou d'une opération, qui donnerait les x dernières valeurs d'un nombre.

Par exemple, il existe un nombre 123456789, la variable x = 4. Le résultat devrait être 6789, c'est-à-dire les 4 derniers caractères de 123456789.

D'abord DoubleToStr(), puis essayez StringSubstr() en recherchant une sous-chaîne.
 
Merci à tous ceux qui ont répondu à la question.
 
Killa: Par exemple, voici le nombre 123456789, variable x = 4. Le résultat devrait être 6789, c'est-à-dire les 4 derniers caractères de 123456789.

Le numéro de la source est A. Le résultat est le résultat de la variable entière.

int x = 4;

int A = 123456789;

int divisor = MathPow( 10, x ); /// 10^4

int result = A % divisor; /// остаток от деления А на divisor


Si vous voulez accélérer les calculs, au lieu de MathPow(), faites simplement une boucle de multiplication de dizaines - ce sera toujours plus rapide, et beaucoup plus rapide.

 
Chers experts ! Je recherche un script qui ouvre des ordres lorsque la SMA normale croise la ligne horizontale sur le graphique. Si la SMA croise la ligne par le bas - acheter, par le contraire - vendre. Les transactions se font à la clôture de la bougie. Pouvez-vous me donner un lien où le trouver, s'il a été posté.
 
Chers collègues, veuillez me conseiller sur ce qu'il faut changer dans le code EA pour travailler dans une société de courtage avec des cotations à cinq chiffres.
 
NIKOLAStaom:
Chers experts ! Je recherche un script qui ouvre des ordres lorsque la SMA normale croise la ligne horizontale sur le graphique. Si la SMA croise la ligne par le bas - acheter, par le contraire - vendre. Les transactions se font à la clôture de la bougie. Pouvez-vous me donner un lien où le trouver, s'il a été posté.
1. Apparemment pas un script, mais un EA qui suit en permanence les croisements et ouvre des ordres.
2. Le moyen le plus simple est de trouver un EA qui fonctionne sur les croisements de MA et de prescrire un niveau de ligne horizontale au lieu d'une des MA.
3. Un exemple de recherche dans la base de l'Expert Advisor sur les franchissements de MA. http://www.google.ru/search?as_sitesearch=mql4.com&as_q=советник par les traversées MA
 
Bihkul:
Chers collègues, veuillez m'indiquer ce qu'il faut changer dans le code EA et où il faut le changer pour travailler dans le DC avec des cotations à cinq chiffres.
Tout d'abord, regardez le TP et le SL. Ce qu'il faut changer et où il faut le faire - cela dépend de la logique d'une EE particulière. Par exemple, ТР et SL peuvent être exprimés non pas en points mais en points de pourcentage des titres ou du prix et ne dépendront pas du nombre de chiffres des sociétés de courtage.
 

Chers collègues, je n'ai pas encore beaucoup d'expérience en programmation et je vous demande donc des conseils. Il n'est pas toujours possible d'obtenir la valeur d'une variable par le biais d'une fonction, mais il est possible d'écrire à l'avance toutes les valeurs de la plage requise. Vous obtiendrez quelque chose comme ceci

si (a==17) b=1329 ;

si (a==243) b=15 ;

Et ainsi de suite. Mais que faire s'il y a un millier de ces cordes ? Dois-je créer un fichier ? Mais comment trouver rapidement la valeur de "b" par la valeur de la variable "a", d'autant plus que la variable "a" n'est pas numérotée consécutivement ? Et pour qu'il n'y ait pas de décalage ?

 
Elenn:
...Mais que faire s'il y a un millier de lignes de ce type ? Créer un fichier ? Mais comment trouver rapidement la valeur de la variable "a" et trouver immédiatement la valeur de "b", en tenant compte du fait que la numérotation de "a" n'est pas consécutive ? Et pour qu'il n'y ait pas de décalage ?
Array.
Raison: