Trend Expert Advisor

Trabajo finalizado

Plazo de ejecución 2 minutos
Comentario del Cliente
Super Programmierer kann man nur empfehlen, geht auf die Kunden wünsche ein und kann sie umsetzten. gerne wieder . danke :)

Tarea técnica

hallo,


Suche einen Deutschsprachigen Programmierer der mir einen bereits vorhandenen mql4 Indikator zu einem mql4 Expert Advisor um Programmieren kann bzw. so schreiben kann dass wenn das "Popup Fenster" des Indikators erscheint der EA Automatisch Handelt (selbstständig Positionen eröffnet oder bei gegen signal wieder schließt)


Der Indikator reagiert bei Eintritt der ereignisses beim eröffnen einer neuen Kerze mit einem Alarm "Popup Fenster"


In dem angewendetem Chartfenster erscheint ein

Blauer Punkt für eine evtl. "Long BUY Position".

und ein Roter Punkt für evtl. "Short SELL Position "

der erscheinte Punkt im chart gleicht dem  Risiko der Einstellungen z.B RISK 4


Der EXPERT ADVISOR sollte bei dem eintritt der Ereignisses Positionen eröffnen

Roter Punkt    "Short SELL Position "

Blauer Punkt   "Long BUY Position"


Eingaben (Variable)

Der Stop Loss sollte man manuell zusätzlich einstellen können (Pips) oder dem jeweiligem Punkt im chart entsprechen zuordnen

Der Take Profit sollte ebenfalls eingestellt werden können (Pips) (Manuell Variabl einstellbar)

Breakeven SL auf Entry bei z.b 10 Pips (Manuell Variable einstellbar)

Magic Number zb. 666 (Manuell Variable einstellbar)

Ebenfalls sollte man wie im Indikator  RISK und ALLBARS manuell eingestellt werden können (Manuell Variabl einstellbar)


//----
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 RoyalBlue
#property indicator_color2 Red
//----
extern int RISK=4;
extern int AllBars=250;
int up=0,dn=0;
double val1buffer[];
double val2buffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_ARROW,EMPTY);
   SetIndexArrow(0,108);
   SetIndexBuffer(0, val1buffer);
   //
   SetIndexStyle(1,DRAW_ARROW,EMPTY);
   SetIndexArrow(1,108);
   SetIndexBuffer(1, val2buffer);
   //----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   double value2;
   double value3;
   double value10=10;
   double value11;
   double x1=70;
   double x2=30;
   int TrueCount;
   int counter;
   int MRO1;
   int MRO2;
   int i1;
   double Range;
   double AvgRange;
   double val1;
   double val2;
   double Table_value2[500][2];
   int counted_bars=IndicatorCounted();
   //
   value10=3+RISK*2;
   x1=67+RISK;
   x2=33-RISK;
   value11=value10;
//----------------------------
   if(counted_bars<0) return(-1);
   if(counted_bars>0) counted_bars--;       //last bar recounted
   int i;
   int shift=Bars-counted_bars-1;
   if (shift > AllBars) shift=AllBars;
   for(i=shift; i>0; i--)
     {
      counter=i;
      Range=0;
      AvgRange=0;
      for(counter=i ;counter<=i+9;counter++)
        {
         AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);
        }
      Range=AvgRange/10;
      counter=i;
      TrueCount=0;
      while(counter<i+9 && TrueCount<1)
        {
         if (MathAbs(Open[counter]-Close[counter+1])>=Range*2.0 )
            TrueCount++;
         counter++;
        }
      if (TrueCount>=1)
         MRO1=counter;
      else
         MRO1=-1;
      counter=i;
      TrueCount=0;
      while(counter<i+6 && TrueCount<1)
        {
         if(MathAbs(Close[counter+3]-Close[counter])>=Range*4.6)
         {TrueCount++;}
         counter++;
        }
      if(TrueCount>=1)
         MRO2=counter;
      else
         MRO2=-1;
      if (MRO1>-1)
         value11=3;
      else
         value11=value10;
      if (MRO2>-1)
         value11=4;
      else
         value11=value10;
      //----
      value2=100-MathAbs(iWPR(NULL,0,value11,i));
      Table_value2[i][0]=i;
      Table_value2[i][1]=value2;
      val1=0;
      val2=0;
      value3=0;
      //-------------------     val1 
      if (value2<x2) //  x2 = 30
        {
         i1=1;
         while(Table_value2[i+i1][1]>=x2 && Table_value2[i+i1][1]<=x1)
         {i1++;}
         if (Table_value2[i+i1][1]>x1)
           {
            value3=High[i]+Range*0.5;
            val1=value3;
           }
        }
      //-------------------     val2 
      if(value2>x1) // x1 = 70
        {
         i1=1;
         while(Table_value2[i+i1][1]>=x2 && Table_value2[i+i1][1]<=x1)
         {i1++;}
         if (Table_value2[i+i1][1]< x2)
           {
            value3=Low[i]-Range*0.5;
            val2=value3;
           }
        }
      if (val2!=0 && up==0 )
        {
         val1buffer[i]= val2-1*Point;
         up=1;
         dn=0;
         if(shift<=2)
           {
            Alert (Symbol()," ",Period(),"M  Asctrend BUY ");
           }
        }
      if (val1 !=0 && dn==0)
        {
         val2buffer[i]= val1+1*Point;
         dn=1;
         up=0;
         if(shift<=2)
           {
            Alert (Symbol()," ",Period(),"M   Asctrend SELL ");
           }
        }
     }
   return(0);
//----
  }
//+------------------------------------------------------------------+

Han respondido

1
Desarrollador 1
Evaluación
(728)
Proyectos
1048
40%
Arbitraje
47
49% / 23%
Caducado
84
8%
Libre
2
Desarrollador 2
Evaluación
(2435)
Proyectos
3067
66%
Arbitraje
77
48% / 14%
Caducado
340
11%
Libre
3
Desarrollador 3
Evaluación
(1097)
Proyectos
1778
61%
Arbitraje
14
64% / 7%
Caducado
84
5%
Libre
4
Desarrollador 4
Evaluación
(1098)
Proyectos
1455
45%
Arbitraje
49
73% / 12%
Caducado
36
2%
Libre
Solicitudes similares
Suche einen Programmierer der aus einem eingestellten telegram Channel mir Trades kopiert. Der EA soll einen Trade öffnen so bald im Channel ein Signal ankommt mit TP und Sl zum Einstellen soll auch die Lotgrösse sein weiters sollen bei Channel mit z.b.3 Take Profit Levels 3 Trades geöffnet werden. Wenn er die Trades automatisch mit den vorgegeben Take Profit Levels und Stop Loss kopiert hat , soll er sie automatisch

Información sobre el proyecto

Presupuesto
30 - 60 USD
IVA (19%): 5.7 - 11.4 USD
Total: 35.7 - 71.4 USD
Para el ejecutor
27 - 54 USD
Plazo límite de ejecución
de 1 a 30 día(s)