Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 812

 
Pomid:
Merci, je l'ai appris, je l'ai réparé.
Quel tir, tu l'as fait ! Mais je ne peux pas apprendre, il y a toujours beaucoup de choses que je ne sais pas encore, et il y a toujours des mises à jour. Donc, "vivre et apprendre !"
 
barabashkakvn:
Et lors des tests (sans optimisation activée), pourquoi devrions-nous charger tous les cœurs ? Après tout, si l'on teste avec visualisation, rien ne presse, tandis que si l'on teste sans visualisation, les ordinateurs modernes peuvent le faire comme un tournesol sur un seul cœur.

Et bien je pense que si tous les cores fonctionnaient en test sans visualisation ce serait encore plus rapide, j'ai juste l'impression que ça marche tranquillement même avec un processeur moderne je manque de vitesse, peut-être que beaucoup dépend de la justesse du code, s'il est bien optimisé alors tout est rapide, sinon c'est long.

Pouvez-vous me diresi OpenCL pour le GPU ou la carte vidéo affecte la vitesse de test ou si c'est juste pour écrire du code, si le code est écrit pourOpenCL alors il s'exécutera beaucoup plus rapidement en mode test, et si le code est juste du code.

 
7Konstantin7:


Pouvez-vous me dire siOpenCL a un effet sur la vitesse de test ou si c'est juste pour écrire du code, si le code est écrit enOpenCL alors il s'exécutera beaucoup plus rapidement en mode test, et si le code est juste du code.

D'après ce que je comprends, OpenCL dans MT5 aide à travailler avec des graphiques "lourds", une carte vidéo n'est pas impliquée dans les tests et l'optimisation, sinon tout le monde aurait depuis longtemps miné sur le service d'agent, comme dans les bitcoins.
 
evillive:
D'après ce que je comprends,OpenCL dans MT5 aide à travailler avec des graphiques "lourds", la carte vidéo n'est pas impliquée dans les tests et l'optimisation, sinon tout le monde aurait miné sur un service d'agent comme pour les bitcoins il y a longtemps.

C'est dommage si c'est le cas, j'aimerais que tout soit impliqué).

Je viens de voir un code robot sur ce site mt5, je l'ai téléchargé, j'ai fait le test et il a pris tellement de temps, surtout sur tous les ticks, il serait mieux d'utiliser tous les cœurs au lieu d'un seul, mais il est probable que la majorité des codes postés sur ce site sont mal écrits, c'est pourquoi le test est si long, mon CPU n'est certainement pas un Intel, mais 8 cœurs 4,000GHz devrait voler, mais je suis assis dans le testeur sur un ordinateur portable, il est triste si mt5 est à blâmer pour cela, pourquoi il est ainsi.

 
tara:

La variable doit être là, pas autre chose :

Variable ? Mm-hmm. Merci.
 
Dites-moi où est l'erreur. J'ai déjà mal à la tête. (
Dossiers :
 
martovskiy_tigr:
Dites-moi où est l'erreur. J'ai déjà mal à la tête. (
On peut parler ? Qu'est-ce qui vous tracasse ?
 

la fenêtre de l'indicateur est suspendue à -99999... à +99999...99

 
martovskiy_tigr:

la fenêtre de l'indicateur est suspendue à -99999... à +99999...99

La valeur de i est mal comptée, la boucle ne sera jamais calculée, et il y aura également une sortie hors du tableau à plusieurs endroits (les raisons sont soulignées en rouge).

C'est mieux :

   indx = rates_total-prev_calculated; //было indx = rates_total-prev_calculated-1; - что чаще всего < 0
   if(prev_calculated<1) indx=rates_total-2; //было if(indx<0) indx=0; - то есть всегда i=0 а цикл-то до 1, на i=0 цикл никогда не просчитается
   sm_bar = (Close[1] - Open[rates_total-1])/rates_total; //индекс не может быть [rates_total]
   i = indx;
   k = 0;
   ekviti[rates_total-1] = 0; //индекс не может быть [rates_total]
   while(i >= 0)
   {
    if(bar_n == TimeDayOfWeek(iTime(NULL,0,i)))
    {
     ekviti[i] = ekviti[i+1] + close[i] - open[i] - sm_bar;
     k++;
    }
    else ekviti[i] = ekviti[i + 1];
    i--;
   }
 
Merci. Je ne l'aurais certainement pas découvert tout seul. Je ne savais pas.
Raison: