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
Comment faire fonctionner un indicateur sur un autre indicateur ?
Si vous déposez la moyenne mobile de base (incluse comme indicateur dans MT4) sur un autre indicateur, il est possible de calculer la MA de l'indicateur, mais comment modifier un indicateur personnalisé de telle manière qu'il soit possible de le déposer sur un autre indicateur ?
sur le bar ouvert
Bonjour,
Je veux exécuter un bout de code uniquement lorsqu'une nouvelle barre est créée (à l'ouverture de la barre).
Quelqu'un a-t-il un extrait de code pour quelque chose comme ça ?
Merci
pourquoi mon Indicateur ne fonctionne pas bien ????
#property copyright "沈欣"
#property link "shenxinon@126.com"
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 SteelBlue
//#property indicator_minimum -0.01
//#property indicator_maximum 0.01
//---- paramètres d'entrée
extern int SMA1=12 ;
extern int SMA2=72 ;
//---- tampons
double ExtMapBuffer1[] ;
//---- 自定义区
//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'indicateur personnalisé |
//+------------------------------------------------------------------+
int init()
{
//---- indicateurs
SetIndexStyle(0,DRAW_LINE) ;
SetIndexBuffer(0,ExtMapBuffer1) ;
string sName="Indicateur RAVI" ;
IndicatorShortName("Indicateur RAVI("+SMA1+", "+SMA2+")") ;
//----
return(0) ;
}
//+------------------------------------------------------------------+
//| Fonction personnalisée de désinitialisation de l'indicateur |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0) ;
}
//+------------------------------------------------------------------+
//| Fonction d'itération de l'indicateur personnalisée |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted() ;
//----
if(counted_bars<0) return(-1);// s'il y a une erreur, sortez et retournez -1
if(counted_bars>0) counted_bars-- ;
int pos = Bars-counted_bars ;
double sma1,sma2,r ;
while(pos>=0)
{
sma1=iMA(NULL,0,SMA1,0,MODE_SMA,PRICE_CLOSE,pos) ;
sma2=iMA(NULL,0,SMA2,0,MODE_SMA,PRICE_CLOSE,pos) ;
r=((sma1-sma2)/sma2)*10000;
//Alert("r=",r) ;
ExtMapBuffer1[pos]=r ;
pos-- ;
}
retour(0) ;
...
Je l'ai.
Bonjour,
Je veux exécuter un morceau de code uniquement lorsqu'une nouvelle barre est créée (à l'ouverture de la barre).
Quelqu'un a-t-il un extrait de code pour quelque chose comme ça ?
Cheersif (Volume[0] == 1)
{FAIRE...}
Big Be
trend Enveloppe EA
Hola
J'enseigne le mql.
J'ai lu Usage of Technical Indicators - Simple Programs in MQL4 - MQL4 Tutorial, mais je n'ai pas trouvé quelque chose du genre
Est-ce qu'il est possible de colorer une seule barre ? Par exemple, pendant le test de votre EA, vous pouvez colorer la barre d'entrée...
Sur metatrader je ne vois pas de système de surveillance, comme pour voir le champ de mon tableau variabile qu'il y a dans tous les compilateurs C.
Je veux faire ce système stupide :
Quand le prix a cassé et fermé l'évolution de la tendance (regardez l'image avec le cercle jaune) j'ouvre une alerte et je colorie une barre de rupture.
Mais mon problème est que je ne lis que l'indicateur de tendance à la hausse et pas pendant les périodes courtes, pourquoi ?
double maxprec= iHigh(NULL, PERIOD_M5,1);
double minprec=iLow(NULL, PERIOD_M5,1);
double chiusura2 = iClose(NULL,PERIOD_M15 ,2);
double chiusura = iClose(NULL,PERIOD_M15 ,1);
double chiu2 = iClose(NULL,PERIOD_M5 ,2);
double chiu = iClose(NULL,PERIOD_M5 ,1);
double apertura = iOpen(NULL,PERIOD_M15 ,0)
string rottura [3] = {" Nulla"," ROTTO"};
envelope15_1=iCustom(NULL, PERIOD_M15, "TrendEnvelopes_v1", 5,0,1);// trend envelope
if( chiusura2 > envelope15_2 && chiusura < envelope15_2 && apertura <= envelope15_2)
{
rot=1;
Alert ( " ha rotto SH M15");
}
else
rot=0;
Comment( ""\nBreak Enveolpe M 5= ", rottura[rot2],
"\nBrerak Enveolpe M 15= ", rottura[rot]
); // AlertEst-ce la bonne formule
Est-ce la formule correcte pour calculer la valeur d'un pip pour le croisement eur/chf :
(1/(eur/chf))*10*(eur/us)
Un pip vaut 0,0001.
Formule correcte ci-dessus ?
Est-ce la formule correcte pour calculer la valeur d'un pip pour le cross eur/chf ?
(1/(eur/chf))*10*(eur/us)
un pip correspond à 0,0001.
Formule correcte ci-dessus ?Utilisez ce code :
pipvalue=MarketInfo("EURCHF",MODE_TICKVALUE) ;
J'espère que cela vous aidera
J'ai besoin du code pour arrêter l'ouverture des positions après un certain temps
J'ai déjà vu tous les messages dans cette section et j'ai fait une recherche sur tout le forum en utilisant l'outil de recherche google en haut du forum, mais ce que j'ai trouvé n'est pas exactement ce que je cherche.
Ce dont j'ai besoin est un code que je dois implémenter dans mon EA qui arrête d'ouvrir une nouvelle position après une certaine heure, par exemple après 15 GMT. Ce paramètre devrait être un paramètre que je peux modifier à partir du panneau de l'utilisateur.
Ce serait génial si je pouvais définir une période de temps pendant laquelle l'EA peut ouvrir les positions, comme suit
Ouvrir de X heures à Y heures
Merci pour votre aide.
Salutations
J'ai déjà vu tous les messages de cette section et j'ai fait une recherche sur tout le forum en utilisant l'outil de recherche google en haut du forum, mais ce que j'ai trouvé n'est pas exactement ce que je cherche.
Ce dont j'ai besoin est un code que je dois implémenter dans mon EA qui arrête d'ouvrir une nouvelle position après une certaine heure, par exemple après 15 GMT. Ce paramètre devrait être un paramètre que je peux modifier depuis le panneau de l'utilisateur.
Ce serait génial si je pouvais définir une période de temps pendant laquelle l'EA peut ouvrir les positions, comme suit
Ouvrir de X heures à Y heures
Merci pour votre aide.
SalutationsVoici comment je procède :
extern string Server.Time.To.Start = "08:00" ;
extern string Server.Time.To.Stop = "16:00" ;end_time = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE) + " " + Server.Time.To.Stop) ;
if(Use.Time.Filter && (TimeCurrent() = end_time)) return(0) ;J'espère que cela vous aidera.
FerruFx