[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 37
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Voici tout ce qui est défini dans l'indicateur.
#property indicator_buffers 8 // Nombre de tampons
SetIndexBuffer(1,Set_SL) ; // affectation du tableau
SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,1) ; // Style de ligne
Vous n'avez pas besoin de définir la taille du tampon de l'indicateur !
Bonsoir. Veuillez me conseiller - dans mon conseiller expert, après la clôture réussie d'une transaction rentable, une position est rouverte dans la même direction que la transaction précédente (bien sûr, elle devient non rentable à l'avenir). Comment puis-je interdire la réouverture de ces transactions erronées ?
Supprimez la condition à laquelle vos transactions sont ouvertes de cette manière, et insérez la condition telle que vous souhaitez qu'elles soient ouvertes.
Et ce serait une bonne idée de définir d'abord la taille du tableau.
Voici tout ce qui est défini dans l'indicateur.
#property indicator_buffers 8 // Nombre de tampons
SetIndexBuffer(1,Set_SL) ; // affectation du tableau
SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,1) ; // Style de ligne
Vous n'avez pas besoin de définir la taille du tampon de l'indicateur !
Vous n'avez pas besoin de définir la taille du tampon de l'indicateur !
Ce n'est pas nécessaire. Cela signifie que le tampon double Set_SL[] ;
Ce n'est pas nécessaire. Cela signifie que le tampon double Set_SL[] ;
Il me reste donc la question postée ici le 22.03.2009 16:05 (page précédente). Oui, voici un ajout : tout s'est déroulé pendant le week-end, c'est-à-dire qu'il n'y a pas eu de TICKS.
J'ai donc encore une question.
>> mettre tout le code là-bas, voyons si on peut le comprendre.
Bonsoir. Pouvez-vous me dire - dans mon Expert Advisor, après la clôture réussie d'une transaction rentable, il y a une réouverture d'une position dans la même direction que la transaction précédente (bien sûr, elle devient non rentable dans le futur). Comment puis-je interdire la réouverture de telles transactions erronées ?
Il suffit de vérifier la dernière transaction clôturée. Mais vous devez prévoir le cas où il n'y a pas encore d'histoire.
C'est tout ce qui est défini dans l'indicateur.
#property indicator_buffers 8 // Nombre de tampons
SetIndexBuffer(1,Set_SL) ; // affectation d'un tableau
SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,1) ; // Style de ligne
Vous n'avez pas besoin de définir la taille du tampon de l'indicateur !
Ceci n'était pas présent dans le code original. Si c'est le cas, la raison est autre. Nous devrions examiner l'ensemble du code.
Postez le code complet, essayons de le comprendre.
J'ai laissé (pour simplifier) uniquement ce qui constitue le problème dans le code. Mettons l'indicateur et voyons le problème, pour ainsi dire.
//+------------------------------------------------------------------+
//| iK_exp_stat_v30.mq4 |
//| Ivan Katsko |
//| |
//+------------------------------------------------------------------+
#property copyright "Ivan Katsko"
#propriété lien ""
#property indicator_separate_window // Affichage dans une fenêtre séparée
#property indicator_buffers 8 // Nombre de tampons
#property indicator_color1 DeepPink // Couleur de la première ligne
#property indicator_color2 Purple // Couleur de la deuxième ligne
#property indicator_color3 Red // Couleur de la troisième ligne
#property indicator_color4 LawnGreen // Couleur de la quatrième ligne
#property indicator_color5 Gold // Couleur de la cinquième ligne
#property indicator_color6 Blue // Couleur de la sixième ligne
#property indicator_color7 SteelBlue // Couleur de la septième ligne
#property indicator_color8 Lime //couleur de la huitième ligne
externe interne
Depth=1 ; // Profondeur de l'historique : 1 - sur Valeur de l'historique.
extern double Level=10 ; // Niveau minimum SL/TP
int Historique ; // Nombre de barres dans l'historique calculé
double
Value_TP[] ; // Tableau - Valeur de la prise de bénéfices (Take Profit)
Av_Sum_TP[], // Tableau - Montant moyen des prises de bénéfices (Take Profit)
Sum_na_TP[], // Tableau - Montant incrémental du Take Profit
Algorithme[], // Algorithme : 1 - "aujourd'hui est comme hier", -1 - "aujourd'hui n'est pas comme hier".
Direction[], // Direction de l'ordre : 1 - achat, -1 - vente
Sum_TP[], // Tableau - Montant du Take Profit adaptatif incrémental
Set_TP[], // Mise en place du Take Profit
Set_SL[] ; // Définir le Stop Loss
//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'indicateur personnalisé |
//+------------------------------------------------------------------+
int init()
{
//--------------------------------------------------------------------
SetIndexBuffer(0,Set_TP) ; // affectation du tableau Swap Up
SetIndexStyle(0,DRAW_HISTOGRAM,STYLE_SOLID,1) ; // Style de ligne
SetIndexBuffer(1,Set_SL) ; // Affectation de l'oscillation du tableau vers le bas
SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,1) ; // Style de ligne
SetIndexBuffer(2,Sum_TP) ; // Affectation du tableau au tampon
SetIndexStyle(2,DRAW_LINE,STYLE_SOLID,2) ; // Style de ligne
SetIndexBuffer(3,Direction) ; // Affectation d'un tableau au tampon
SetIndexStyle(3,DRAW_HISTOGRAM,STYLE_SOLID,4) ; // Style de ligne
SetIndexBuffer(4,Algoritm) ; // Affectation d'un tableau au tampon
SetIndexStyle(4,DRAW_LINE,STYLE_SOLID,1) ; // Style de ligne
SetIndexBuffer(5,Value_TP) ; // Affectation d'un tableau au tampon
SetIndexStyle(5,DRAW_HISTOGRAM,STYLE_SOLID,2) ; // Style de ligne
SetIndexBuffer(6,Sum_na_TP) ; // Affectation d'un tableau au tampon
SetIndexStyle(6,DRAW_LINE,STYLE_SOLID,2) ; // Style de ligne
SetIndexBuffer(7,Av_Sum_TP) ; // Affectation d'un tableau au tampon
SetIndexStyle(7,DRAW_HISTOGRAM,STYLE_SOLID,2) ; // Style de ligne
//--------------------------------------------------------------------
switch (Period()) // Définir le nombre de barres à examiner
{
cas 1 : Historique = 30 ; pause ; // Période de 1 minute
cas 5 : Historique = 24 ; pause ; // Période de 5 minutes
cas 15 : Historique = 24 ; pause ; // Période de 15 minutes
cas 30 : Historique = 24 ; pause ; // Période de 30 minutes
cas 60 : Historique = 24 ; pause ; // Période d'une heure
cas 240 : Historique = 30 ; pause ; // Période de 4 heures
case 1440 : History = 22 ; break ; // Période quotidienne
default : Alert("Sélectionnez la période M1 à D1.") ; break ; /période horaire
}
Set_SL[Histoire*Profondeur]=1.0*Niveau*Point ;
Alert("Init :"," Set_SL[",History*Depth,"]=",Set_SL[History*Depth]);//Affichez-le pour voir : il affiche (disons) 0,0001
//--------------------------------------------------------------------//----
retour(0) ;
}
//+------------------------------------------------------------------+
//| Fonction personnalisée de désinitialisation de l'indicateur |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
retour(0) ;
}
//+------------------------------------------------------------------+
//| Fonction d'itération de l'indicateur personnalisé |
//+------------------------------------------------------------------+
int start()
{
Alert("Start :"," Set_SL[",History*Depth,"]=",Set_SL[History*Depth]);//And this already shows 2147483647
retour(0) ;
}