Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 1427

 
Aleksei Stepanenko:

Donc je n'ai rien écrit d'autre, j'ai juste répété ton code.

La disposition visuelle des chiffres était incorrecte, et vous pensiez que c'était ce dont vous aviez besoin.

Il est fort probable que vous deviez affecter 0,5555 à la boucle au lieu de ArrayFill. Essayez-le.

Merci. J'espère apprendre rapidement de nouvelles informations.

 
Vous êtes le bienvenu, tant que cela fonctionne :)
 
Aleksei Stepanenko:
Vous êtes le bienvenu, tant que cela fonctionne :)
Je voulais juste clarifier le moment.... Peut-être qu'une boucle au lieu de ArrayFill() ralentira le programme, surtout s'il y a beaucoup de données dans le tableau, et si la plage d'énumération est grande, et si la boucle fonctionnera avec plus d'un tableau. Quelques messages plus haut dans ce fil,Maxim Kuznetsov m'a dit qu'il existe un algorithme optimal qui convertit LoY[2][31] en LoY[31][2]. Peut-être que cet algorithme ne ralentira pas le programme en tant que boucle, ou le ralentira mais dans une moindre mesure. Si vous connaissez cet algorithme, je vous serais reconnaissant de me dire ce que vous en pensez et peut-être même de le démontrer dans mon code.
Encore une fois, merci beaucoup pour votre soutien informationnel.
 
ANDREY:
peut-être qu'une boucle au lieu de ArrayFill() ralentira le programme

Tout code consomme des ressources. ArrayFill ou loop-fill coûte à peu près la même chose.

Mais trier, ou réécrire complètement le tableau coûte du temps. Il est donc préférable de trouver d'autres solutions, par exemple, de penser au stockage et à la préparation des données, de faire des pré-calculs et d'autres options.

 
Aleksei Stepanenko:

Tout code consomme des ressources. ArrayFill ou loop-fill coûte à peu près la même chose.

Mais trier, ou réécrire complètement le tableau coûte du temps. C'est pourquoi il est préférable de trouver d'autres solutions, par exemple la préparation des données, les calculs préliminaires et d'autres options.

Je l'ai. Merci.

 
Dans votre cas, il est intéressant de répondre à la question principale : pourquoi est-il nécessaire de faire le tri toutes les minutes ? Comment votre idée peut-elle être mise en œuvre de manière plus économique ?
 
ANDREY:

Je l'ai. Merci.

Désolé de vous interrompre, peut-être que le tri n'est pas nécessaire ? Peut-être que seule la valeur maximale (minimale) devrait être déterminée ?

 

La documentation d'un des langages est très bonne et détaillée, ce qui prend du temps bien sûr, mais aide les programmeurs.

---

Moins coûteux serait de remplir correctement au début et d'essayer de ne pas faire l'idiot avec un tableau en cinq genoux : remplir, trier, ajouter, trier et ajouter encore.

Évitez les actions inutiles si possible.

---

Il existe une fonction dans mql : StringConcatenate, elle est super chère, mais du fait de sa présence dans le langage, elle est utilisée, bien qu'elle puisse être facilement évitée et que des codes "légers" puissent être écrits.

 
Luchezar Shalomaev:

Désolé de vous interrompre, peut-être que le tri n'est pas nécessaire ? Peut-être ne déterminer que la valeur maximale (minimale) ?

Merci pour votre contribution. C'est le tri qui est nécessaire.... Du moins à ce stade de ma compréhension de ma conception. Peut-être que plus tard, je réfléchirai à nouveau et chercherai des alternatives de tri. En ce qui concerne le minimum et le maximum, je sais déjà qu'il existe des fonctions qui les déterminent et que c'est moins cher.

 
Vitaly Muzichenko:

La documentation d'un des langages est très bonne et détaillée, ce qui prend du temps bien sûr, mais aide les programmeurs.

---

Moins coûteux serait de remplir correctement au début et si possible d'essayer de ne pas bricoler un tableau en cinq genoux : remplir, trier, ajouter, trier et ajouter encore.

Évitez les actions inutiles si possible.

---

Il y a une fonction dans mql : StringConcatenate, elle est super chère, mais elle est utilisée à cause de sa présence dans le langage, bien qu'on puisse facilement l'éviter et écrire des codes "légers".

L'idée générale est comprise... comme il me semble. Merci pour le conseil. Si vous voulez bien me dire ce que signifie le signe dollar devant le nom du tableau $ array[] et devant la valeur $var Il me semble que cela ne vient pas du tout de mql.

Raison: