Annonce
Réduire
Aucune annonce.
Ads
Réduire
MACD zero retard
Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • MACD zero retard

    bon jour à tous

    Je cherche le code pr MT4 de "zero lag". Celui que j'ai pu déniché sur le net n'est pas propre, impossible à compiler cause erreurs

    Comme je ne sais absolument pas code cette plateforme, help

    bonne journée
    pascal

  • #2
    Avec le code et les messages d'erreurs je peux eventuellement aider.

    Commentaire


    • #3
      merci altair

      Sur PRT pas de soucis, mais MT4, vraiment fermé comme language, malgré qq réalisations en php, pascal...je coince totalement

      voici le code récupéré (en espérant qu'il soit pertinent)ci-dessous et msg d'erreur :

      image : ../forums-bourse/0110/19722_191252.jpgintrouvable ou format inconnu


      //ZeroLag MACDx.mq4 |
      #property indicator_separate_window
      #property indicator_buffers 3
      #property indicator_color1 Blue
      #property indicator_color2 Red
      //---- input parameters
      extern int FastEMA = 12;
      extern int SlowEMA = 24;
      extern int SignalEMA = 9;
      //---- buffers
      double MACDBuffer[];
      double SignalBuffer[];
      double FastEMABuffer[];
      double SlowEMABuffer[];
      double SignalEMABuffer[];
      double ZEROline[];
      //+------------------------------------------------------------------+
      //| Custom indicator initialization function |
      //+------------------------------------------------------------------+
      int init()
      {
      //---- indicators
      IndicatorBuffers(6);
      SetIndexBuffer(0, MACDBuffer);
      SetIndexBuffer(1, SignalBuffer);
      SetIndexBuffer(3, FastEMABuffer);
      SetIndexBuffer(4, SlowEMABuffer);
      SetIndexBuffer(5, SignalEMABuffer);
      //SetIndexStyle(0, DRAW_HISTOGRAM);
      SetIndexStyle(0, DRAW_LINE,EMPTY);
      SetIndexStyle(1, DRAW_LINE,EMPTY);
      SetIndexDrawBegin(0, SlowEMA);
      SetIndexDrawBegin(1, SlowEMA);
      IndicatorShortName("ZeroLag MACD(" + FastEMA + "," + SlowEMA + "," + SignalEMA + ")");
      SetIndexLabel(0, "MACD");
      SetIndexLabel(1, "Signal");
      //draw zero line. means user not need to add via indicator properties>levels
      SetIndexStyle(2, DRAW_LINE);
      SetIndexBuffer(2, ZEROline);
      SetIndexDrawBegin(2, SlowEMA);
      SetLevelStyle(DRAW_LINE, 1, Gainsboro);
      SetLevelValue(2,0.0);
      IndicatorDigits(Cool;

      //----
      return(0);
      }
      //+------------------------------------------------------------------+
      //| Custor indicator deinitialization function |
      //+------------------------------------------------------------------+
      int deinit()
      {
      //----
      return(0);
      }
      //+------------------------------------------------------------------+
      //| Custom indicator iteration function |
      //+------------------------------------------------------------------+
      int start()
      {
      int limit;
      int counted_bars = IndicatorCounted();
      if(counted_bars < 0)
      return(-1);
      if(counted_bars > 0)
      counted_bars--;
      limit = Bars - counted_bars;
      double EMA, ZeroLagEMAp, ZeroLagEMAq;
      for(int i = 0; i < limit; i++)
      {
      FastEMABuffer = iMA(NULL, 0, FastEMA, 0, MODE_EMA, PRICE_CLOSE, i);
      SlowEMABuffer = iMA(NULL, 0, SlowEMA, 0, MODE_EMA, PRICE_CLOSE, i);
      }
      for(i = 0; i < limit; i++)
      {
      EMA = iMAOnArray(FastEMABuffer, Bars, FastEMA, 0, MODE_EMA, i);
      ZeroLagEMAp = FastEMABuffer + FastEMABuffer - EMA;
      EMA = iMAOnArray(SlowEMABuffer, Bars, SlowEMA, 0, MODE_EMA, i);
      ZeroLagEMAq = SlowEMABuffer + SlowEMABuffer - EMA;
      MACDBuffer = ZeroLagEMAp - ZeroLagEMAq;
      }
      for(i = 0; i < limit; i++)
      SignalEMABuffer = iMAOnArray(MACDBuffer, Bars, SignalEMA, 0, MODE_EMA, i);
      for(i = 0; i < limit; i++)
      {
      EMA = iMAOnArray(SignalEMABuffer, Bars, SignalEMA, 0, MODE_EMA, i);
      SignalBuffer = SignalEMABuffer + SignalEMABuffer - EMA;
      }
      return(0);
      }
      //+------------------------------------------------------------------+

      Commentaire


      • #4
        Pour commencer, remplace :
        IndicatorDigits(Cool;

        par ca:

        IndicatorDigits(Cool);

        Commentaire


        • #5
          Bonjour Grassel ,Altair,



          il y a beaucoup d'erreurs dans le code.

          le mieux ,est que tu essayes celui là:

          http://codebase.mql4.com/716

          @+

          Commentaire


          • #6
            merci à vous deux

            Je regarde à ceci tout à l'heure.

            Magique cette entraide

            Commentaire


            • #7
              Bonsoir,
              Vous trouverez 84 pages d'indicateurs MT4 sur le lien ci-dessous, cela devrait suffire


              abysse.co.jp/mt4/indicator_image.html
              Plan the trade and trade the plan.

              Commentaire


              • #8
                Citation de : spadaii (au 19-01-2010 22:22:17)

                abysse.co.jp/mt4/indicator_image.html



                Effectivement c'est une mine d'or dommage que mon coréen soit ce qu'il est : difficile de trouver le bon indic sans l'aide d'un champs de recherche ou d'un index

                En fait, en cliquant sur le lien entouré de jaune comme montré ci-dessous, on trouve un index alpha bien pratique



                image : ../forums-bourse/0110/19722_192254.pngintrouvable ou format inconnu

                Commentaire


                • #9
                  Généralement pour trouver un indicateur google et une requete du genre "mql4 + nom de l'indic" suffisent dans la plupart des cas.

                  C'est la magie de Metatrader.

                  Commentaire


                  • #10
                    Bonjour,

                    pour la petite histoire , la MACD ZeroLag s'écrit en EasyLanguage (TradeStation & MultiCharts :

                    // début du code
                    inputs: MMEcourte(9), MMElongue(19), Signal(6);

                    value1 = XAverage(Close,MMEcourte) + XAverage(Close,MMEcourte)-XAverage(XAverage(Close,MMEcourte),MMEcourte);
                    value2 = XAverage(Close,MMElongue) + XAverage(Close,MMElongue)-XAverage(XAverage(Close,MMElongue),MMElongue);
                    value3 = value1-value2;
                    value4= XAverage(value3,Signal)+XAverage(value3,Signal)-XAverage(xaverage(value3,Signal),Signal);

                    Plot1( 0,"Ligne0" ,darkgray) ;
                    Plot2(value3,"ZeroLag",Yellow,default,1);
                    Plot3(value4,"ZeroLagAvg",darkbrown);
                    //fin du code

                    ça me paraît plus clair , désolé pour le HS

                    Commentaire

                    Chargement...
                    X