Ouverture, fermeture dans le conseiller expert généré par l'assistant MQL5 - page 7

 
Andy:

Peut-être.

Par ailleurs, Vladimir, pourriez-vous nous donner des conseils sur le schéma - quel est ce bloc de modèles de marché (sélection du signal le plus fort) et sous quelle forme se trouve-t-il dans l'assistant MQL ?

***


D'après ce que j'ai compris, il n'y a pas de sélection du signal le plus fort parmi les modèles d'un module.


Andy:

***

Et ensuite, comment supprimer les lignes fléchées du graphique obtenu à la suite de votre fichier ?


Fermez le TESTEUR DE STRATÉGIES et toutes les icônes et lignes disparaîtront :)

 
Andy:

OK, mais s'il y a deux modules, alors qu'est-ce qui sélectionne le signal (et l'exemple de calcul d'un signal à partir de deux modules, qui se trouve dans l'aide, ne le mentionne pas) ?

***


Lorsqu'il y a plus d'un module (décrit dans l'articleAssistant MQL5 : nouvelle version), tous les signaux sont résultants et la prévision finale (direction et force) est obtenue.


Andy:

***

Si j'ai exécuté le fichier directement sur le graphique et non dans le testeur, comment puis-je le supprimer ?

Supprimer : cliquez avec le bouton droit de la souris sur le graphique et sélectionnez "Liste des objets". Dans la fenêtre ouverte, appuyez sur le bouton "Tout", puis vous devez tout sélectionner : "Ctrl" + "C" et supprimer : bouton "Delete". Pour éviter de créer ces objets à l'avenir, utilisez un Expert Advisor basé sur le module standard "SignalMA.mqh".
 
Andy:

Oui, c'est rétractable comme un objet. Je vais m'occuper des informations sur les modèles que j'ai reçus.

Alors, qu'y a-t-il sur le diagramme tout en haut (où le signal 100 est sélectionné) - je n'arrive pas à trouver où cela pourrait être dans l'assistant, qu'en pensez-vous ?


Je ne comprends pas. Insérez une photo montrant la zone correcte.

 
Andy:
Dans le diagramme, la partie supérieure - où il est dit sélection d'un signal plus fort (100) et des modèles de marché. Ceci est sélectionné par quoi et même sans balance ?

Je ne comprends pas, collez déjà l'image.

 
Andy:

Vous avez inséré un dessin entier. J'attends que vous entouriez la bonne section - sinon, je ne comprends pas bien ce que vous demandez à nouveau.

 
Andy:

Je l'ai corrigé - regardez là juste en dessous de ma ligne au-dessus de la photo.


Modifiez l'image : encerclez la zone qui vous intéresse, puis formulez votre question.

 
Andy:

J'ai modifié le message ci-dessus - jetez-y un coup d'œil.


J'ai déjà répondu sur la dernière page :

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

Ouverture et fermeture dans le conseiller expert généré par l'assistant MQL5

Vladimir Karputov, 2017.09.29 12:54


D'après ce que je comprends, il n'y a pas de sélection du signal le plus fort parmi les modèles d'un module.

***


 
Andy:

Et une autre question : pourquoi la valeur m_base_price est-elle attribuée dans le module de signal MA lorsque tous les modèles (1-3) sont sélectionnés, mais pas lorsque le modèle 0 est sélectionné ?


Voyons voir...

 
Andy:

Et une autre question - pourquoi lors de la sélection de tous les modèles (1-3) dans le module de signal MA m_base_price est attribué, mais pas lors de la sélection du modèle 0 ?


Je l'ai obtenu de la façon suivante : la classe CExpert contient un objet -m_signal

//+------------------------------------------------------------------+
//| Class CExpert.                                                   |
//| Purpose: Base class expert advisor.                              |
//| Derives from class CExpertBase.                                  |
//+------------------------------------------------------------------+
class CExpert : public CExpertBase
  {
protected:
***
   //--- trading objects
***
   CExpertSignal    *m_signal;                   // trading signals object
***

- qui est un objet parent de la classe CExpertSignal. Le module de signaux de trading (laissé SignalMA.mqh dans ce cas) est hérité et son descendant est CExpertSignal.

Dans le module Trading Signals, lorsque le motif 2 est déclenché, son descendant écrit un certain prix dans la variablem_base_price (il n'est même pas important de savoir lequel). Mais alors, la classe CExpertSignal n'accède pas à la variablem_base_price de notre module de signaux - quand une position est ouverte, la classe CExpertSignal se réfère à la variablem_base_price de l'objetm_signal- l'objet parent de la classe CExpertSignal.

Il s'avère que cela n'a aucun sens d'écrire une valeur dans lavariablem_base_price dans le module Trading Signals.

 
Andy:
Là, quand m_base_price=0, le prix Ask ou Bid est pris, selon la condition d'achat/vente, sauf pour le modèle 2 (là il prend le prix MA comme un ordre en attente), mais pourquoi tout cela et pourquoi avec le modèle 0 il n'est pas utilisé du tout ?

Oui, MAIS : la variable m_base_price recherche l'objet parent, pas le module de signalisation.