[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 399

 
kolyango:

Je vais certainement regarder vos liens...

Critère.mqh.

Il écrit le contenu du plugin et c'est tout, rien ne s'ouvre ou ne se télécharge !


Et donc essayé, à partir de la page précédente : "Clic droit de la souris sur la bande-annonce, puis dans le menu "enregistrer sous" ?

J'ai essayé, ça se télécharge correctement.


 
Roman.:


Avez-vous essayé de cette façon, à partir de la page précédente : "Cliquez avec le bouton droit de la souris sur la bande-annonce, puis dans le menu "enregistrer comme lien" ?

Je l'ai essayé, ça marche bien pour moi.



Téléchargé. Pourquoi .mqh et non .mq4 ?
 

Pouvez-vous me dire comment modifier la couleur de fond de la fenêtre supplémentaire de l'indicateur, ou pouvez-vous spécifier la couleur de fond de la fenêtre supplémentaire dans le profil ?

//+------------------------------------------------------------------+
//|                                                  Custom MACD.mq4 |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property  copyright "Copyright © 2004, MetaQuotes Software Corp."
#property  link      "http://www.metaquotes.net/"
//---- indicator settings
#property  indicator_separate_window
#property  indicator_buffers 2
#property  indicator_color1  Silver
#property  indicator_color2  Red
#property  indicator_width1  2
//---- indicator parameters
extern int FastEMA=12;
extern int SlowEMA=26;
extern int SignalSMA=9;
//---- indicator buffers
double     MacdBuffer[];
double     SignalBuffer[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- drawing settings
   SetIndexStyle(0,DRAW_HISTOGRAM);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexDrawBegin(1,SignalSMA);
   IndicatorDigits(Digits+1);
//---- indicator buffers mapping
   SetIndexBuffer(0,MacdBuffer);
   SetIndexBuffer(1,SignalBuffer);
//---- name for DataWindow and indicator subwindow label
   IndicatorShortName("MACD("+FastEMA+","+SlowEMA+","+SignalSMA+")");
   SetIndexLabel(0,"MACD");
   SetIndexLabel(1,"Signal");
//---- initialization done
   return(0);
  }
//+------------------------------------------------------------------+
//| Moving Averages Convergence/Divergence                           |
//+------------------------------------------------------------------+
int start()
  {
   int limit;
   int counted_bars=IndicatorCounted();
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
//---- macd counted in the 1-st buffer
   for(int i=0; i<limit; i++)
      MacdBuffer[i]=iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,i)-iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,i);
//---- signal line counted in the 2-nd buffer
   for(i=0; i<limit; i++)
      SignalBuffer[i]=iMAOnArray(MacdBuffer,Bars,SignalSMA,0,MODE_SMA,i);
//---- done
   return(0);
  }
//+------------------------------------------------------------------+
 
kolyango:

Téléchargé. Pourquoi .mqh et non .mq4 ?


Parce qu'il s'agit d'un fichier de plug-in, par exemple,

#include <stdlib.mqh>
#include <stderror.mqh>
//#include <dynamic_channel.mqh>             // динамический канал
#include <TrailingByFractals.mqh>          // trailing
lisez le tutoriel - c'est la directive #include.
 

Bonjour !

Pouvez-vous me dire comment dessiner une barre verticale (histogramme) de 0 à 4 (par exemple) dans la sous-fenêtre (objet graphique) ?

Le fait est que la sous-fenêtre de l'indicateur contient une ligne 0 de part et d'autre de laquelle s'affiche le signal de rupture (vente à la baisse, achat à la hausse).

Je sais comment le faire avec un tampon, mais il n'y a pas de tampons disponibles, il n'y en a plus.

Merci.

 
LOA:

Bonjour !

Veuillez me dire comment dessiner une barre verticale (histogramme) de 0 à 4 (par exemple) dans une sous-fenêtre (objet graphique).


ObjectCreate
 
sergeev:
ObjectCreate

Il est clair qu'avec la fonction ObjectCreate
mais la difficulté est de savoir comment attribuer des valeurs aux objets graphiques en fonction de la direction du signal 4 ou -4 par rapport à la ligne zéro.
 
artmedia70:

C'est aussi simple que cela. Utilisons les drapeaux comme un sémaphore. Il y aura trois blocs de code, dont chacun ne sera exécuté que si le précédent l'est déjà.

Initialement, tous les drapeaux ==faux.

Dès que le premier a été exécuté, nous mettons le premier flag=true ; Maintenant le deuxième bloc de code est exécuté. Dès que sa condition est remplie, le deuxième drapeau est activé = vrai ;
Maintenant, le troisième bloc de code est exécuté. Dès que sa condition est remplie, le troisième drapeau est activé = vrai ; et ainsi de suite.



Donnez-moi un lien pour en savoir plus sur les drapeaux avec des descriptions de leurs actions et des exemples de leur utilisation ?
 
LOA:

Ceci est compréhensible avec la fonction ObjectCreate
mais la difficulté est de savoir comment attribuer des valeurs aux objets graphiques en fonction de la direction du signal 4 ou -4 par rapport à la ligne zéro.

Les tampons sont épuisés ))

#property indicator_separate_window
#property indicator_minimum -8
#property indicator_maximum 8
void start()  {
   ObjectsDeleteAll(1);
   for(int i=0;i<WindowBarsPerChart();i++){
         if(Open[i]>iMA(0,0,5,1,1,4,i))
            double xz=4;
         else xz=-4;
         ObjectCreate(i+" f",OBJ_TREND,1,iTime(0,0,i),0,iTime(0,0,i),xz);
         ObjectSet(i+" f", OBJPROP_RAY, 0);
   }
   WindowRedraw();
}
 
costy_:

Nous n'avons plus de mémoire tampon.)

Pourquoi enseignez-vous la programmation incorrecte ?

ObjectsDeleteAll(1);

Comment savez-vous que le descripteur de la fenêtre de cet indicateur == 1 ?