Build 646 : Les variables Bool ne donnent pas les bons paramètres. - page 4

 
deysmacro:
Il est préférable que MetaQuotes donne la possibilité à l'utilisateur de décider s'il veut réinitialiser ou non après la recompilation, n'est-ce pas ? Oui, je suis d'accord.
 
alop: Je ne comprends pas votre exemple avec EXTERN écrit avec des verrous de cap ?
// #define EXTERN extern
EXTERN typename var1=...;
EXTERN typename var2=...;
Tant que le #define est commenté, il n'y a pas d' externs. Décommentez, alors ils deviennent TOUS des externes.
 

WHRoeder... Je suis toujours un peu confus de ce que vous dites...

Alors comment le code serait-il écrit - pour forcer les changements de variables dans les graphiques lors de la recompilation ?

Il s'agit d'une question importante pour beaucoup d'entre nous - je pense qu'il y a deux points de vue...

Certaines personnes ne veulent pas que les variables changent lors de la recompilation - et je comprends tout à fait...

Mais pour d'autres - qui ont plus de 30 paires en cours - avoir à cliquer sur "reset" dans chaque graphique est un désastre...

Quoi qu'il en soit, je pense que ce que vous dites est que le changement de code ci-dessus va soit forcer les changements de variables, soit ne pas le faire...

Pourriez-vous s'il vous plaît donner un exemple du genre :

Forcer le changement de variable :

(exemple ici)

Ne pas forcer le changement de variable :

(exemple ici)

Je pense que ce qui précède serait très utile pour les deux parties de ce scénario...

Merci beaucoup pour votre aide !

 

De plus, si nous voulons forcer les changements de variables dans les graphiques actifs (eas), n'y a-t-il pas un fichier cache que nous pouvons simplement supprimer pour forcer le changement de variable lors de la recompilation ?

J'ai essayé de le trouver - mais les valeurs stockées semblent être cachées dans un fichier mystère quelque part...

Merci encore pour votre aide...

Les exemples de code ci-dessus feraient aussi l'affaire, mais il serait bon de savoir où trouver les paramètres du cache - comme autre solution de rechange.....

 

Donc aussi...

Si je change la ligne

#define EXTERN extern 

externename var1=... ;

en

#define EXTERN extern 

définir extern typename var1=... ;

J'obtiens une erreur en lisant - les variables externes ont déjà été définies...

Donc - je suppose - votre solution de contournement semble confuse, pourriez-vous s'il vous plaît clarifier ...

Merci beaucoup.

 
whistler:

Donc aussi...

Si je change la ligne

externename var1=... ;

en

define extern typename var1=.... ;

J'obtiens une erreur en lisant - les variables externes ont déjà été définies...

Donc - je suppose - votre solution de contournement semble confuse, pourriez-vous s'il vous plaît clarifier ...

Merci beaucoup.

Essayez ceci :

#define EXTERN et ne rien mettre ici

EXTERN bool trade1 =true ; <= Ajouter EXTERN là où vous auriez normalement mis extern

EXTERN bool trade2 = true ;

EXTERN bool trade3 = false ;

Lorsque vous voulez ajouter les externs au début, faites ceci :

#define EXTERN extern

Si vous voulez supprimer les externes, faites ceci

#define EXTERN assurez-vous d'enlever l'extern comme ci-dessous

#define EXTERN

Andy

 

Le dialogue de saisie manuelle n'est généralement pas nécessaire pendant l'étape de codage. Il suffit donc de ne pas utiliser le modificateur externe tant que les changements de codage ne sont pas terminés.

// will not reset on recompile unless the value is changed in the code.
extern int Var1 = 20;
extern int Var2 = 40;
//will always reset on recompile
int Var1 = 20;
int Var2 = 40;
 

Un truc génial... Merci beaucoup...

J'ai supprimé extern et recompilé, mais quand j'ai lancé MetaTrader et regardé les paramètres de l'EA depuis le graphique - les variables dont j'avais supprimé extern avaient complètement disparu... J'ai fermé MetaTrader, puis relancé MetaEditor...

J'ai rajouté extern - recompilé à nouveau - et relancé MetaTrader - les variables ont été rajoutées dans l'EA - et les variables ont été mises à jour avec les nouveaux paramètres des variables...

Donc - ça a marché - MERCI BEAUCOUP :) Soopa stahs !

 
whistler: WHRoeder... Je suis toujours un peu confus de ce que vous dites...
Ce site
même que
// #define EXTERN extern
EXTERN typename var1=...;
EXTERN typename var2=...;
typename var1=...;
typename var2=...;
#define EXTERN extern
EXTERN typename var1=...;
EXTERN typename var2=...;
extern typename var1=...;
extern typename var2=...;
#define EXTERN /*EMPTY*/
EXTERN typename var1=...;
EXTERN typename var2=...;
typename var1=...;
typename var2=...;
 

Bonjour !

Après avoir recompilé (F5), allez dans l'EA, ouvrez les entrées (F7) - il y a un bouton 'Reset' en bas à droite. En cliquant sur ce bouton, vous réinitialisez l'EA aux valeurs (hard-)codées.

Il m'a fallu un certain temps pour comprendre cela... LOL. Les miracles arrivent. Tout comme le s**t. LOL

Meilleures salutations,

Simon

S love nia