[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 1125

 
drknn:

Il existe une fonction très intéressante pour marquer les variables trouvées. Appuyez sur Ctrl+F, entrez un nom de variable, cochez les cases "Signet" et "Marqueur trouvé". Ensuite, appuyez sur le bouton "Rechercher tout". Pour le supprimer, cliquez sur le bouton "Tout supprimer".
C'est pratique. Merci
 
Il y a une commission sur le compte Alpari USN. Comment tester un EA dans le testeur, en tenant compte de la commission ?
 
Galion:

Et un double-clic vous amène à un extrait de code)))) Juste ce dont j'ai besoin, merci)

Je ne comprends pas, quel est l'objet sur lequel il faut double-cliquer ?
 

Échangez une fois par jour !!! Comment cela serait-il fait ?

Il existe une telle variante, qui ne fonctionne pas lorsqu'elle est activée (lorsqu'elle est désactivée, les transactions sont ouvertes, mais pas une fois par jour). Comme base pour le code pris quelque part sur ces espaces ouverts. Veuillez corriger ce code.

extern bool WaitForNewDay = true ; //----- commutateur pour vérifier chaque jour

bool Trade=true ; //--flag pour la prochaine transaction (défini à true)

datetime bt,tm ; //---- variables pour la fonction de contrôle du jour

....

int init()

{

if(WaitForNewDay) {Trade=false;} //---- si le mode est activé, alors dans l'initialisation le drapeau est assigné à l'interdiction du commerce.

retour(0) ;

}

.....

int start()

{

if(WaitForNewDay) CheckForNewDay() ;

...

if(CalculateCurrentOrders(Symbol())==0 && Trade) //----- vérifier les ordres ouverts et vérifier le drapeau

{

CheckForOpen() ; //--------- ordre d'ouverture

if (WaitForNewDay) {Trade=false;} //----------- si le mode jour même est activé, le commerce est désactivé après le commerce

retour ;

}

}

//--------------fonctionnement à vérifier un jour

void CheckForNewDay()

{

tm=iTime(Symbol(),PERIOD_D1,0) ; //--------- vérifier le jour actuel

if (bt!=tm) {bt=tm ; trade=true;} //---------- si l'ancienne date ne correspond pas à la date du jour, l'ancienne date est affectée à la valeur de la date du jour et le drapeau reçoit l'autorisation de négocier.

}

Et où est-ce qu'il y a un bouton ? ??

 
dzhini:

(métiers ouverts lorsqu'ils sont éteints, mais pas une fois par jour)

Que pensez-vous de ça ?
 
drknn:
Et comment cela se fait-il ?

L'erreur est dans le message original, je vais la corriger maintenant. Lorsque WaitForNewDay = false, le conseiller expert travaille sans limite - 1 transaction par jour.

 
comment voir le graphique en tic-tac, avec tout l'historique ?
 
dzhini:

Erreur dans le message original, je vais la corriger maintenant. Lorsque WaitForNewDay = false, l'EA fonctionne sans limite - 1 transaction par jour.


Le code est faux. Tout d'abord, si la fonction start() est de type int, elle doit renvoyer une valeur entière. Le retour que vous avez ici n'est rendu que par une condition. Et si la condition n'est pas remplie, que doit renvoyer la fonction start() au terminal ?

De plus, vous êtes trop compliqué à vérifier - mieux vaut faire comme suit : nous créons un compteur d'ordres, ouverts et fermés aujourd'hui. Si le nombre d'ordres clôturés aujourd'hui est supérieur à zéro, alors vous ne négociez pas. Sinon, vous êtes autorisé à faire des échanges.

 
Danil93:
Comment voir le graphique en tic-tac, avec tout l'historique ?

Ecrivez un indicateur qui dessinera des ticks après le lancement. Option 2 - écrire chaque tick dans un document texte et récupérer ensuite l'historique complet des tick au bon moment.
 
drknn:

Ecrivez un indicateur qui dessinera les ticks après le lancement. Option 2 - enregistrer chaque tick dans un document texte et récupérer ensuite l'historique complet des tick au moment opportun.
ouais...compliqué. alors répondez soudainement à cette question : 5 pips ou 10, pas de rollback. combien de temps le prix peut-il vivre ?