Toile et étiquettes - page 4

 
Maxim Kuznetsov:

Il est évident que le Canvas (BitMap) est redessiné/copié dans son intégralité, mais seules les étiquettes ont changé. Pourquoi devrais-je être surpris ?

Canvas est juste pratique et modérément rapide.

Dmitry Fedoseev:
Et sans aucun test comparatif, il est évident qu'une simple étiquette produira du texte plus rapidement.

Bien sûr, je le savais avant. Mais j'étais convaincu que l'utilisation de Kanvas était le moyen le plus rapide de sortir. En même temps, il était terriblement lent dans le testeur (lors de la sortie des données d'un conseiller expert en cours de test), en particulier sur les ticks. L'utilisation d'étiquettes a réglé la situation, bien sûr. J'ai donc décidé de découvrir à quel point Kanvas est vraiment lent par rapport à Labels. Il s'avère qu'il est 321 fois plus lent, si l'on en croit cette mesure.

 
Mihail Matkovskij:

Bien sûr, je le savais avant. Mais j'étais convaincu que l'utilisation de Kanvas était le moyen de sortie le plus rapide. Cependant, dans le testeur (lors de la sortie des données de l'EA testé), il était terriblement lent, surtout sur les ticks. L'utilisation d'étiquettes a réglé la situation, bien sûr. J'ai donc décidé de découvrir à quel point Kanvas est vraiment lent par rapport à Labels. Il s'avère que 321 fois, si l'on en croit cette mesure.

N'y a-t-il pas beaucoup d'auteurs de contes fantastiques dans le monde ?

 
Dmitry Fedoseev:

N'y a-t-il pas beaucoup de conteurs de fantasy dans le monde ?

Ça, c'est sûr !

 
Maxim Kuznetsov:

Il est évident que le Canvas (BitMap) est redessiné/copié dans son intégralité, mais seules les étiquettes ont changé. Pourquoi devrais-je être surpris ?

Canvas est tout simplement facile à utiliser et modérément rapide.

Pourquoi redessiner l'ensemble du bitmap ?
pour prouver que c'est plus lent que de redessiner l'étiquette ?

Pour une comparaison correcte, vous devez également redessiner une partie seulement du bitmap, la taille du marqueur.

 
Taras Slobodyanik:

Pourquoi redessiner l'ensemble du bitmap ?
pour prouver que c'est plus lent que de redessiner l'étiquette ?

Pour une comparaison correcte, vous devez également redessiner une partie seulement du bitmap, la taille de l'étiquette.

En fait, c'est comme ça que ça se met à jour :

en même temps

 
Maxim Kuznetsov:

c'est en fait comme ça que c'est mis à jour :

en même temps.

Est-ce qu'il rafraîchit ou redessine ?
Je n'ai jamais vu de ralentissement lors du rafraîchissement.

 
Taras Slobodyanik:

Alors, est-ce qu'il est mis à jour ou redessiné ?
Je n'ai jamais vu de décalage lors de la mise à jour.

Si vous n'avez jamais vu de freins en travaillant avec OBJ_BITMAP_LABEL, il est important de dire où. Si vous travaillez dans le terminal, oui. Le retard est insignifiant. Mais si vous prenez le travail dans le testeur et aussi le modèle : Tous les ticks ou OHLC sur M1, le passage constant du tableau m_pixels en utilisant ResourceCreate est très perceptible. Les opérations sur les pixels sont généralement considérées comme les plus coûteuses de tout programme.

 
Maxim Kuznetsov:

c'est en fait comme ça que c'est mis à jour :

en même temps

Eh, je me souviens qu'on pouvait éditer le canevas dans le tampon vidéo avec un pixel, mais c'est tellement inintéressant (

 
Dmitry Fedoseev:

Il n'y a pas beaucoup de fantaisistes qui racontent des histoires dans le monde, n'est-ce pas ?

Dmitry, avant de juger quelque chose, vous devez comprendre où tout a commencé...

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading

Erreurs, bugs, questions

Mihail Matkovskij, 2021.03.07 14:02

Comment produit des lignes de longueur complètement différente (visuellement) alors que leur longueur est exactement la même.

Commentaire

Code :

void OnStart() {
  string str[5], res="";
  StringInit(str[0], 50, 'a');
  StringInit(str[1], 50, 'X');
  StringInit(str[2], 50, '=');
  StringInit(str[3], 50, ' ');
  StringInit(str[4], 50, ':');
  for (int i = 0; i < 5; i++) 
    res += str[i] + "\n";
  Comment(res);
}

Comment puis-je sortir des lignes avecCommentaire, que visuellement elles étaient de la même longueur ? Par exemple, je veux éditer un tableau à trois colonnes de manière à ce que les colonnes soient espacées verticalement de manière égale.

Si je ne me trompe pas, quelque part sur la ligne il a été dit cinquante rangs...
 
Alexey Viktorov:

Dimitri, avant de juger quelque chose, il faut comprendre où tout a commencé...

Si je ne me trompe pas, quelque part sur la ligne il a été dit cinquante lignes...

Il vaut mieux faire un exemple où un affichage basé sur Canvas dépasse l'affichage des étiquettes ! Comme, si vous voulez réfuter mes affirmations, alors par la loi de la logique, vous devez prouver le contraire. Est-ce que ça va marcher... ?