Comment modifier la structure de la variable globale de l'indicateur lors du passage à une autre période ?

 
Comment déplacer une variable globale, une structure, un objet dans un indicateur lors du passage à un autre timeframe ? Je ne l'ai pas trouvé en cherchant sur Google.
 
Mikhail Nazarenko:
Comment déplacer une variable globale, une structure ou un objet dans l'indicateur lors du passage à une autre période de temps ? Je l'ai googlé, mais je ne l'ai pas trouvé.

solution maladroite : si ce ne sont pas des objets, alors ne les réinitialisez pas :-)

Lorsque le délai est modifié, les données ne sont pas écrasées par elles-mêmes, mais l'EA redémarre. C'est un comportement inattendu pour la C-suite, et peut-être que cela changera dans d'autres constructions, mais voilà ;-)

Et la solution correcte - sauvegarder l'état dans un fichier ou une base de données, et dans le OnInit décider - de restaurer l'état précédent ou de recommencer à zéro

 
Maxim Kuznetsov:

solution maladroite : si ce ne sont pas des objets, alors ne les réinitialisez pas :-)

Lorsque le délai est modifié, les données ne sont pas écrasées par elles-mêmes, mais l'EA redémarre. C'est un comportement inattendu pour la C-suite, et peut-être que cela changera dans d'autres constructions, mais voilà ;-)

Et la solution correcte - sauvegarder l'état dans un fichier ou dans la base de données, et dans la décision OnInit - restaurer l'état précédent ou redémarrer à partir de zéro.

Je comprends qu'il n'y a pas de solutions simples pour les structures et les objets ?

 

Maxim Kuznetsov:


Lorsque vous changez d'horizon temporel, les données ne sont pas écrasées d'elles-mêmes, mais l'EA redémarre.


La question portait sur l'indicateur.

 
Mikhail Nazarenko:

Comment déplacerune variable globale, une structure, un objet dans un indicateur lors du passage à un autre timeframe ? Je l'ai cherché sur Google, mais je n'ai pas pu le trouver.

- variable globale - il suffit de l'enregistrer dans les variables globales du terminal.
- Il suffit de ne pas le supprimer d'un graphique.
- structure - il suffit de l'écrire dans un fichier.

 
Mikhail Nazarenko:

Je comprends qu'il n'y a pas de solutions simples pour les structures et les objets ?

N'y a-t-il pas une solution simplepour écrire dans un fichier? Il semble n'y avoir rien de compliqué - FileWriteStruct() est disponible. La partie de l'objet à écrire (et il s'agit toujours de données, pas de méthodes, ce qui n'a aucun sens pour la sauvegarde), convertie en une structure.

 
Ihor Herasko:

L'écriture dans un fichier est-elle une solution délicate ? Il semble n'y avoir rien de compliqué - FileWriteStruct() est disponible. La partie de l'objet à écrire (et il s'agit toujours de données, pas de méthodes, ce qui n'a aucun sens pour la sauvegarde), convertie en une structure.

Cela semble être une chose simple à comprendre, mais s'il n'y a rien de plus élégant, alors vers un fichier. Je pensais naïvement que je pourrais me passer de béquilles. Merci.

 
Il est plus facile de recalculer toutes les structures à partir de zéro lors d'une réinitialisation, sauf bien sûr s'il y a des calculs super-méga-complexes...
 
transcendreamer:
Il est plus facile de recalculer toutes les structures à partir de zéro, sauf bien sûr s'il y a des calculs super-méga-complexes...

Il arrive que les données ne soient pas calculées. Par exemple, les actions des utilisateurs.

 
Ihor Herasko:

Il arrive que les données ne soient pas calculées. Par exemple, les actions des utilisateurs.

Oui, il y en a, mais ils peuvent généralement être stockés en tant qu'états dans des globaux ou leur résultat objectivé en tant qu'état d'objets de graphe...

 

ici@fxsaber a montré un exemple de la façon de sauvegarder la structure dans des variables globales

https://www.mql5.com/ru/forum/320395/page6#comment_12910394

et en dessous de son message dans ce fil