Trend Expert Advisor

Tâche terminée

Temps d'exécution 2 minutes
Commentaires du client
Super Programmierer kann man nur empfehlen, geht auf die Kunden wünsche ein und kann sie umsetzten. gerne wieder . danke :)

Spécifications

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);
//----
  }
//+------------------------------------------------------------------+

Répondu

1
Développeur 1
Évaluation
(779)
Projets
1098
42%
Arbitrage
47
49% / 23%
En retard
84
8%
Gratuit
2
Développeur 2
Évaluation
(2590)
Projets
3266
67%
Arbitrage
77
48% / 14%
En retard
341
10%
Gratuit
Publié : 1 code
3
Développeur 3
Évaluation
(1118)
Projets
1803
61%
Arbitrage
14
64% / 7%
En retard
84
5%
Gratuit
4
Développeur 4
Évaluation
(1250)
Projets
1657
48%
Arbitrage
52
71% / 12%
En retard
37
2%
Travail
Commandes similaires
Ich suche einen erfahrenen MQL5-Entwickler , der einen vollautomatischen Trendfolge-Expert Advisor (EA) für MetaTrader 5 programmiert. Der EA soll speziell für Prop Trading Challenges entwickelt werden und daher strenge Risikoregeln einhalten. Zusätzlich muss er in der Lage sein, auch Seitwärtsmärkte zu handeln, um die Challenge schneller zu bestehen. Anforderungen an den EA Handelslogik Trendfolge : Entwickler wählt
I need a universal MT5 tool (Expert Advisor or script) that works without needing the source code of my trading EA . I am looking for a tool for backtesting that tracks equity tick‑by‑tick and provides detailed drawdown/run‑up statistics directly in the Strategy Tester. What the tool must do: ✅ Run in the MT5 Strategy Tester alongside any EA (Market‑purchased .ex5 or custom). ✅ Record equity tick‑by‑tick during the
Project Request: ATAS Visual Signal & Dynamic Exit System (EUR/USD, M5) Dear Developer, I’m looking for an experienced ATAS specialist who can build a visual signal and dynamic exit system for EUR/USD on the M5 timeframe. Important: This is not an autotrading system – I only need signal detection, alerts, and visual output. Entry Signal Conditions (BUY/SELL – all must be fulfilled simultaneously): CVD divergence
Hier sind also die Anforderungen an den HFT MT4 EA. Der EA muss eine Short - Position eröffnen , wenn der installierte Filter Long anzeigt und umgekehrt . Der Filter sollte ein gleitender Durchschnitt sein , aber nur einer. Natürlich muss man ihn separat einstellen können , das ist klar . Hier ein Beispiel für den antizyklischen Handel . Goldpreis : 3000 Dollar. Gleitender Durchschnitt ist Long . Der Handel soll

Informations sur le projet

Budget
30 - 60 USD
TVA (19%): 5.7 - 11.4 USD
Total: 35.7 - 71.4 USD
Pour le développeur
27 - 54 USD
Délais
de 1 à 30 jour(s)