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

 
TarasBY:
Toute tâche peut être résolue de différentes manières. Sixième année sur le marché, mais je n'ai jamais eu besoin de changer Magik (même à l'époque de la "jeunesse verte").
Il y a toutes sortes de choses. Par exemple, si la gestion des postes doit être transférée à un autre EA.
 
tara:
Il y a toutes sortes de choses. Par exemple, si la gestion des postes doit être transférée à un autre conseiller.
Si l'autre conseiller est aussi le sien, alors vous pouvez le nourrir avec n'importe quel magicien supplémentaire.
 
tara:
Il y a toutes sortes de choses. Par exemple, si la gestion des postes doit être transférée à un autre EA.
Je divise un EA en deux parties : analytique et commerciale. La partie analytique est propre à chaque EE, mais la partie administrative est la même pour toutes (peut-être que toutes les fonctions administratives ne sont pas concernées dans chaque EE). Et je n'ai pas besoin de transférer des ordres entre les EA.
 

J'ai fouillé dans l'aide et sur le site, mais je n'ai trouvé aucun exemple de l'utilisation de la fonction MessageBox. Veuillez me conseiller :

1. Est-il possible de modifier l'emplacement de la fenêtre affichée par MessageBox ?

2. Puis-je changer les noms des boutons, par exemple de "Ok" et "Annuler" à "aha" et "no way" ?

3. Que font les drapeaux MB_DEFBUTTON dans cette fonction - de quels boutons s'agit-il et à quoi cela sert-il ?

 

Bonne journée (ou nuit).

Veuillez me conseiller, si je boucle le code (for ou while, peu importe), et que je mets dans la boucle le code pour obtenir la valeur d'un des indicateurs (ou le prix dans une variable), cela fonctionnera-t-il ?

La variable, qui est dans la boucle, recevra-t-elle ses valeurs à un nouveau tic, parce que la procédure est bouclée ?

 
culler:

Bonne journée (ou nuit).

Veuillez me conseiller, si je boucle le code (for ou while, peu importe), et que je mets dans la boucle le code pour obtenir la valeur d'un des indicateurs (ou le prix dans une variable), cela fonctionnera-t-il ?

La variable située dans la boucle recevra-t-elle toujours une valeur à un nouveau tic, puisque la procédure est bouclée ?

Dans une telle boucle, avant par exemple d'obtenir le prix de la demande (ou quelque chose d'autre qui vient avec le tick), mettez RefreshRates() avant cette action pour demander la valeur actuelle de la demande, et non l'ancienne valeur de la demande qui est venue avec le tick qui a commencé la boucle. Si vous demandez la valeur de l'indicateur à l'intérieur de la boucle, la valeur actuelle devrait être correcte.

Pour être sûr à 100%, créez un simple Expert Advisor avec votre boucle et affichez les informations sur le graphique via Comment(), et vous verrez immédiatement si les valeurs sont correctes dans la boucle.
 
paladin80:

Dans une telle boucle, avant d'obtenir, par exemple, le prix Ask (ou quelque chose d'autre qui vient avec le tick), placez RefreshRates() avant cette action pour demander la valeur Ask actuelle, et non l'ancienne valeur Ask qui venait avec le tick qui a commencé la boucle. Si à l'intérieur de la boucle vous demandez la valeur de l'indicateur, la valeur correcte du courant devrait être obtenue.

Pour être sûr à 100%, faites un simple Expert Advisor avec la boucle et affichez les informations sur le graphique par le biais de Comment() et vous verrez immédiatement si les valeurs obtenues dans la boucle sont correctes.


Merci.
Donc, ça va marcher. C'est bien.

Au fait, est-il correct d'utiliser cette approche dans une boucle, ou est-ce pervers ?

J'ai remarqué qu'à cause d'un tel cycle, MT4 se bloque complètement.

 
culler:


Au fait, est-ce la bonne approche du cycle ou est-ce un peu pervers ?

J'ai remarqué qu'à cause de ce cycle, MT4 se bloque complètement.


Et il y a des amoureux de la perversion. Je veux dire en boucle.
 
Bonjour à tous. Pouvez-vous me dire comment tester un EA à 0 spread. Peut-être que quelque chose doit être prescrit dans le code.
 
culler:


Merci.
Donc ça va marcher. C'est génial.

Au fait, cette approche du cycle est-elle correcte ou un peu perverse ?

J'ai remarqué que la boucle provoque un gel complet de MT4.


Extrait de l'aide"Chaque script et chaque expert travaille dans son propre fil de discussion. "

"Un script en boucle ou un Expert Advisor ne peut pas perturber le travail des autres programmes".

c'est-à-dire que le bouclage peut être utilisé.

J'utilise un script et un tel modèle pour ces tâches :

void OnStart()
  {
   while(!IsStopped()) // пока скрипт не удалён с графика
     {
      bool is_new_tick=RefreshRates();
      // если true значит пришли новые котировки
      if(is_new_tick)
        {
         // код который необходимо выполнять при новых котировках
        }
      //остальной код
      Sleep(100);
     }
  }
Raison: