Indicatorcode correctie
Results 1 to 4 of 4

Thread: Indicatorcode correctie

  1. #1
    Duizend excuses als dit elders is afgehandeld. Ik wil een versie van MACD op de prijsgrafiek uitzetten. Ik heb geprobeerd hiervoor een nieuw interieur te maken. Het resultaat wordt niet weergegeven, hoewel het op de grafiek tussen de cijfers staat vermeld. Ik erken dat een of ander amendement het zal oplossen. Help alstublieft om het te wijzigen als u kunt.
    Hier is de code:
    // ------------------------------------------------------------ -------------------
    //| MACDChart.mq4 |
    //| Copyright 2014, MetaQuotes Software Corp. |
    //|
    http://www.mql5.com|
    // ------------------------------------------------------------ -------------------
    #property copyright Copyright 2014, MetaQuotes Software Corp.
    #property-link http://www.mql5.com
    #property versie 1.00
    #eigendom streng
    #property indior_chart_window
    // ------------------------------------------------------------ -------------------
    #propertyindior_buffers 3
    #propertyindior_color1 Blauw
    #propertyindior_color2 Rood
    #propertyindior_color3 Groen
    //---- invoerparameters
    extern int FastMAPeriod=12;
    extern int SlowMAPeriod=26;
    extern int SignalMAPeriod=9;
    //---- buffers
    dubbele MACDLineBuffer[];
    dubbele SignaalLijnBuffer[];
    dubbele histogrambuffer[];
    //---- variabelen
    dubbele alfa = 0;
    dubbele alpha_1 = 0;
    // ------------------------------------------------------------ -------------------
    //| Aangepaste interne initialisatiefunctie |
    // ------------------------------------------------------------ -------------------
    int begin()
    {
    IndiorDigits(MarketInfo(Symbol(),MODE_DIGITS) 1);
    //---- binnenshuis
    SetIndexStyle(0,DRAW_LINE);
    SetIndexBuffer(0,MACDLineBuffer);
    SetIndexDrawBegin(0,SlowMAPeriod);
    SetIndexStyle(1,DRAW_LINE,STYLE_DOT);
    SetIndexBuffer(1,SignaallijnBuffer);
    SetIndexDrawBegin(1,SlowMAPeriod SignalMAPeriod);
    SetIndexStyle(2,DRAW_HISTOGRAM);
    SetIndexBuffer(2,HistogramBuffer);
    SetIndexDrawBegin(2,SlowMAPeriod SignalMAPeriod);
    //---- naam voor DataWindow en indior subwindow label
    IndiorShortName(MACD( FastMAPeriod , SlowMAPeriod , SignalMAPeriod ));
    SetIndexLabel(0,MACD);
    SetIndexLabel(1,Signaal);
    //----
    alfa = 2,0(SignalMAPeriod 1,0);
    alfa_1 = 1,0 - alfa;
    //----
    terug(0);
    }
    // ------------------------------------------------------------ -------------------
    //| Aangepaste interne deinitialisatiefunctie |
    // ------------------------------------------------------------ -------------------
    int deinit()
    {
    //----

    //----
    terug(0);
    }
    // ------------------------------------------------------------ -------------------
    //| Aangepaste interne iteratiefunctie |
    // ------------------------------------------------------------ -------------------
    int begin()
    {
    int limiet;
    int counted_bars = IndiorCounted();
    //---- controleer op mogelijke fouten
    if (counted_barslt;0) return(-1);
    //---- laatst getelde balk wordt opnieuw geteld
    if (counted_barsgt;0) counted_bars--;
    limiet = Bars - counted_bars;
    for(int i=limiet; igt;=0; i--)
    {
    MACDLineBuffer[i] = iMA(NULL,0,FastMAPeriod,0,MODE_EMA,PRICE_CLOSE,i) - iMA(NULL,0,SlowMAPeriod,0,MODE_EMA,PRICE_CLOSE,i);
    SignalLineBuffer[i] = alpha*MACDLineBuffer[i] alpha_1*SignalLineBuffer[i 1];
    HistogramBuffer[i] = MACDLineBuffer[i] - SignalLineBuffer[i];
    }

    //----
    terug(0);
    }
    // ------------------------------------------------------------ -------------------

  2. #2
    Het resultaat van uw berekening valt buiten het bereik van de prijsgrafiek ...

  3. #3
    Bedankt voor het reageren. Kunt u zo vriendelijk zijn om te suggereren wat ik zou moeten verwijderen, toevoegen of wijzigen? Zeer gewaardeerd.

  4. #4

    Quote Originally Posted by ;
    Bedankt voor het reageren. Kunt u zo vriendelijk zijn om te suggereren wat ik zou moeten verwijderen, toevoegen of wijzigen? Zeer gewaardeerd. bobomini
    Dat is de formule die aangepast moet worden. Trouwens, als je de 2 EMA's (snel en langzaam) op de kaart uitzet, heb je het histogram 0 lijnkruis.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.