Conversion indicateur LRMA MT5 à ProRealTime

Forums ProRealTime forum Français Support ProBuilder Conversion indicateur LRMA MT5 à ProRealTime

This topic contains 3 replies, has 2 voices, and was last updated by avatar Nicolas 1 week, 4 days ago.

View all attachments
Viewing 4 posts - 1 through 4 (of 4 total)
  • #104719

    Bonjour à tous,

    Alors je viens vers vous car j’utilise MT5 et j’aimerai maintenant passer sur ProRealTime sauf que sur MT5, j’utilise un indicateur qui me permet de gérer ma stratégie de scalping facilement, sans ça….. c’est très compliquer pour moi.  Vous aurez surement devinez que moi et le code, c’est pas trop ça pour l’instant… peut-être plus tard. J’aimerai savoir si c’est possible de pouvoir recréer l’indicateur sur ProRealTime sinon je serai obliger de rester sur MT5 car j’ai pas trop en confiance en moi pour recommencer ma stratégie de trading à zéro surtout que la je travail sur moi pour laisser de côté les sentiments etc.. qui prennent parfois le dessus, et avec cette indicateur, disons que je suis un peu plus en confiance.

    Alors voici le lien qui explique sur quoi ce base le code de mon indicateur

    https://www.mql5.com/en/code/429

    Et voici comment se présente le code en MQL5.

    #property indicator_chart_window
    #property indicator_buffers 1
    #property indicator_plots 1
    //— plot LRMA
    #property indicator_label1 “LRMA”
    #property indicator_type1 DRAW_LINE
    #property indicator_color1 clrBlue
    #property indicator_style1 STYLE_SOLID
    #property indicator_width1 2
    //— input parameters
    input int LRMAPeriod=14; // Period LRMA
    //— indicator buffers
    double LRMABuffer[];
    //#include <MovingAverages.mqh>
    //+——————————————————————+
    //| Custom indicator initialization function |
    //+——————————————————————+
    int OnInit()
    {
    //— indicator buffers mapping
    SetIndexBuffer(0,LRMABuffer,INDICATOR_DATA);
    PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,0.0);

    ArraySetAsSeries(LRMABuffer,true);
    //—
    return(INIT_SUCCEEDED);
    }
    //+——————————————————————+
    //| Custom indicator iteration function |
    //+——————————————————————+
    int OnCalculate(const int rates_total,
    const int prev_calculated,
    const datetime &time[],
    const double &open[],
    const double &high[],
    const double &low[],
    const double &close[],
    const long &tick_volume[],
    const long &volume[],
    const int &spread[])
    {
    //—
    // ArraySetAsSeries(LRMABuffer,true);
    ArraySetAsSeries(close,true);

    if(rates_total<=LRMAPeriod) return(0);
    int limit=rates_total-prev_calculated;
    if(limit>1)
    {
    ArrayInitialize(LRMABuffer,0.0);
    limit=rates_total-LRMAPeriod-1;
    }

    for(int pos=limit;pos>=0;pos–)
    {
    LRMABuffer[pos]=LRMA(pos,LRMAPeriod,close);
    // Print(“Bar(“,pos,”)=”, LRMABuffer[pos]);
    }

    //— return value of prev_calculated for next call
    return(rates_total);
    }
    //+——————————————————————+\\
    // Calculate LRMA
    //+——————————————————————+\\
    double LRMA(const int pos,const int period,const double &price[])
    {
    double Res=0;
    double tmpS=0,tmpW=0,wsum=0;;
    for(int i=0;i<period;i++)
    {
    tmpS+=price[pos+i];
    tmpW+=price[pos+i]*(period-i);
    wsum+=(period-i);
    }
    tmpS/=period;
    tmpW/=wsum;
    Res=3.0*tmpW-2.0*tmpS;

    return(Res);
    }
    //+——————————————————————+

    Attachments:
    #104726

    > Merci de renseigner votre pays dans votre page de profile ! <<

    J’ai modifié ton message pour qu’il respecte les règles de demande de conversion de code (voir cette page: Demande de conversion de code gratuite pour ProRealTime

    Ci-joint la conversion de l’indicateur pour PRT.

     

    #104744

    Wow incroyable, merci beaucoup, je teste ça. Encore merci

    #106438

    Ajouté à notre bibliothèque de codes pour ProRealTime, dans la section indicateurs: LRMA

Viewing 4 posts - 1 through 4 (of 4 total)

Create your free account now and post your request to benefit from the help of the community
Register or