Announcement

Collapse
No announcement yet.

Help with convert MT4 EA to EFS

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Help with convert MT4 EA to EFS

    Does anyone have a way to convert the following MT4 code to EFS?


    #property indicator_chart_window
    #property indicator_buffers 8
    #property indicator_color1 Green
    #property indicator_color2 Blue
    #property indicator_color3 Red
    #property indicator_color4 Red
    #property indicator_color5 Red
    #property indicator_color6 Red
    #property indicator_color7 Red
    #property indicator_color8 Red
    //---- input parameters
    extern bool Alerts=true;
    extern int RiskModel=1;
    extern int MA1=24;
    extern int MA2=28;
    //---- buffers
    double ExtMapBuffer1[];
    double ExtMapBuffer2[];
    double ExtMapBuffer3[];
    double ExtMapBuffer4[];
    double ExtMapBuffer5[];
    double ExtMapBuffer6[];
    double ExtMapBuffer7[];
    double ExtMapBuffer8[];
    //+------------------------------------------------------------------+
    //| Custom indicator initialization function |
    //+------------------------------------------------------------------+
    int init()
    {
    //---- indicators
    SetIndexStyle(0,DRAW_LINE);
    SetIndexBuffer(0,ExtMapBuffer1);
    SetIndexStyle(1,DRAW_LINE);
    SetIndexBuffer(1,ExtMapBuffer2);
    SetIndexStyle(2,DRAW_LINE);
    SetIndexBuffer(2,ExtMapBuffer3);
    SetIndexStyle(3,DRAW_LINE);
    SetIndexBuffer(3,ExtMapBuffer4);
    SetIndexStyle(4,DRAW_LINE);
    SetIndexBuffer(4,ExtMapBuffer5);
    SetIndexStyle(5,DRAW_LINE);
    SetIndexBuffer(5,ExtMapBuffer6);
    SetIndexStyle(6,DRAW_LINE);
    SetIndexBuffer(6,ExtMapBuffer7);
    SetIndexStyle(7,DRAW_LINE);
    SetIndexBuffer(7,ExtMapBuffer8);
    //----
    return(0);
    }
    //+------------------------------------------------------------------+
    //| Custor indicator deinitialization function |
    //+------------------------------------------------------------------+
    int deinit()
    {
    //----

    //----
    return(0);
    }
    //+------------------------------------------------------------------+
    //| Custom indicator iteration function |
    //+------------------------------------------------------------------+
    int start()
    {
    int limit;
    int counted_bars=IndicatorCounted();
    //---- check for possible errors
    if(counted_bars<0) return(-1);
    //---- last counted bar will be recounted
    if(counted_bars>0) counted_bars--;
    limit=Bars-counted_bars;
    //---- main loop
    for(int i=0; i<limit; i++)
    {
    //---- ma_shift set to 0 because SetIndexShift called abowe
    ExtMapBuffer1[i]=iMA(NULL,0,24,0,MODE_EMA,PRICE_CLOSE,i);
    ExtMapBuffer2[i]=iMA(NULL,0,28,0,MODE_EMA,PRICE_CLOSE,i);

    //Model #1 89,144,233
    if(RiskModel==1)
    {
    ExtMapBuffer3[i]=ExtMapBuffer2[i]+89*Point;
    ExtMapBuffer4[i]=ExtMapBuffer2[i]+144*Point;
    ExtMapBuffer5[i]=ExtMapBuffer2[i]+233*Point;

    ExtMapBuffer6[i]=ExtMapBuffer2[i]-89*Point;
    ExtMapBuffer7[i]=ExtMapBuffer2[i]-144*Point;
    ExtMapBuffer8[i]=ExtMapBuffer2[i]-233*Point;
    }

    //Model #2 144,233,377
    if(RiskModel==2)
    {
    ExtMapBuffer3[i]=ExtMapBuffer2[i]+144*Point;
    ExtMapBuffer4[i]=ExtMapBuffer2[i]+233*Point;
    ExtMapBuffer5[i]=ExtMapBuffer2[i]+377*Point;

    ExtMapBuffer6[i]=ExtMapBuffer2[i]-144*Point;
    ExtMapBuffer7[i]=ExtMapBuffer2[i]-233*Point;
    ExtMapBuffer8[i]=ExtMapBuffer2[i]-377*Point;
    }

    //Model #3 233,377,610
    if(RiskModel==3)
    {
    ExtMapBuffer3[i]=ExtMapBuffer2[i]+233*Point;
    ExtMapBuffer4[i]=ExtMapBuffer2[i]+377*Point;
    ExtMapBuffer5[i]=ExtMapBuffer2[i]+610*Point;

    ExtMapBuffer6[i]=ExtMapBuffer2[i]-233*Point;
    ExtMapBuffer7[i]=ExtMapBuffer2[i]-377*Point;
    ExtMapBuffer8[i]=ExtMapBuffer2[i]-610*Point;
    }

    //Model #4 377,610,987
    if(RiskModel==4)
    {
    ExtMapBuffer3[i]=ExtMapBuffer2[i]+377*Point;
    ExtMapBuffer4[i]=ExtMapBuffer2[i]+610*Point;
    ExtMapBuffer5[i]=ExtMapBuffer2[i]+987*Point;

    ExtMapBuffer6[i]=ExtMapBuffer2[i]-377*Point;
    ExtMapBuffer7[i]=ExtMapBuffer2[i]-610*Point;
    ExtMapBuffer8[i]=ExtMapBuffer2[i]-987*Point;
    }

    Comment("\nRISK MODEL #",RiskModel," (1-4)\n\nEMA24 - ",ExtMapBuffer1[limit],"\nEMA28 - ",ExtMapBuffer2[limit],
    "\n\nF+1 - ",ExtMapBuffer3[limit],"\nF+2 - ",ExtMapBuffer4[limit],
    "\nF+3 - ",ExtMapBuffer5[limit],"\n\nF-1 - ",ExtMapBuffer6[limit],
    "\nF-2 - ",ExtMapBuffer7[limit],"\nF-3 - ",ExtMapBuffer8[limit]);
    }

    //+--------------------------------------------------------------------------+
    //- ALERTS PlaySound("alert.wav"); -
    //+--------------------------------------------------------------------------+
    if(Alerts)
    {
    if(Close[i]==ExtMapBuffer1[i] || Close[i]==ExtMapBuffer2[i])
    {
    PlaySound("alert.wav");
    }
    if(Close[i]==ExtMapBuffer3[i] || Close[i]==ExtMapBuffer4[i] || Close[i]==ExtMapBuffer5[i])
    {
    PlaySound("alert.wav");
    }
    if(Close[i]==ExtMapBuffer6[i] || Close[i]==ExtMapBuffer7[i] || Close[i]==ExtMapBuffer8[i])
    {
    PlaySound("alert.wav");
    }
    }

    //---- done

    //----

    //----
    return(0);
    }
    //+------------------------------------------------------------------+
Working...
X