Hilfe beim Schreiben eines Experten

 

Liebe Programmierexperten! Ich bitte Sie, einen EA für das Kreuzen von MAs zu schreiben, aber streng nach dem Algorithmus. Ich habe viele ähnliche Expert Advisors gesehen, aber sie scheitern alle, was logisch ist, weil sie ursprünglich falsch entwickelt wurden. Ich möchte den Algorithmus verwenden, mit dem ich im Strategy Tester mit Hilfe von "Hands" sehr gute Ergebnisse erzielt habe. Ich möchte Sie bitten, es für mich aufzuschreiben.

- DerEA sollte nur die eigenen Positionen kontrollieren und nicht die manuell und/oder mit Hilfe anderer EAs eröffneten Positionen berühren.

- Der Expert Advisor sollteerst dann eine Position eröffnen, wenn eine bereits geöffnete Position geschlossen wurde.

- Der Expert Advisor sollte in der Lage sein, gleichzeitig auf mehreren Währungspaaren zu arbeiten

Instrumente: EMA 14

EMA 5

Eintrag:

Der Einstieg erfolgt, wenn beide MAs gekreuzt werden.

Kaufen

- Wenn der EMA 5 den EMA 14 von unten kreuzt, können Sie bei der auf die Kreuzung folgenden Kerze einsteigen, wenn sie das Hoch um 1 Pip überschreitet.

Verkaufen

- Wenn der EMA5 den EMA 14 von oben nach unten gekreuzt hat, erfolgt der Einstieg in den Verkauf bei der Kerze, die auf die Kreuzung folgt, wenn der EMA 14 um 1 Pips unter sein Tief gefallen ist.

Ausstieg:

Der Ausstieg erfolgt, wenn das gegenteilige Signal auftritt oder wenn der Take Profit oder Stop Loss erreicht wird.

Stop Loss und Take Profit:

Deranfängliche Stop-Loss wird in einem Abstand von 30 Pips vom Einstiegspunkt gesetzt .

Der anfängliche Take Profit wird auf 50 Pips ab dem Einstiegspunkt festgelegt.

Bei der Eröffnung von Positionen und der Festlegung von Stop-Loss und Take-Profit muss der Expert Advisor den Spread berücksichtigen.

Externe Parameter:

- MA - Periode 14 Exponentialmethode, Verschiebung - 0, Anwendung auf Abschluss

- MA - Periode 5 Exponentialmethode, Verschiebung - 0, Anwendung auf Abschluss

- Möglichkeit zur Änderung der Parameter Take Profit, Stop Loss und EMA, einschließlich ihrer Methode.

Vielen herzlichen Dank im Voraus!

 
Vadimus писал (а) >>

Liebe Programmierexperten! Ich bitte Sie, einen EA für das Kreuzen von MAs zu schreiben, aber streng nach dem Algorithmus. Ich habe viele ähnliche Expert Advisors gesehen, aber sie scheitern alle, was logisch ist, weil sie ursprünglich falsch entwickelt wurden. Ich möchte den Algorithmus verwenden, mit dem ich im Strategy Tester mit Hilfe von "Hands" sehr gute Ergebnisse erzielt habe. Ich möchte Sie bitten, es für mich aufzuschreiben.

- DerExpert Advisor sollte nur seine eigenen Positionen kontrollieren und nicht die manuell und/oder mit Hilfe anderer Expert Advisors eröffneten Positionen berühren.

-Der Expert Advisor darf erst dann eine Position eröffnen, wenn die zuvor eröffnete Position geschlossen ist.

- Der Expert Advisor sollte in der Lage sein, gleichzeitig auf mehreren Währungspaaren zu arbeiten

Instrumente: EMA 14

EMA 5

Eintrag:

Der Einstieg erfolgt, wenn beide MAs gekreuzt werden.

Kaufen

- Wenn der EMA 5 den EMA 14 von unten kreuzt, können Sie bei der auf die Kreuzung folgenden Kerze einsteigen, wenn sie das Hoch um 1 Pip überschreitet.

Verkaufen

- Wenn der EMA5 den EMA 14 von oben nach unten gekreuzt hat, erfolgt der Einstieg in den Verkauf bei der Kerze, die auf die Kreuzung folgt, wenn der EMA 14 um 1 Pips unter sein Tief gefallen ist.

Ausstieg:

Der Ausstieg erfolgt, wenn das gegenteilige Signal auftritt oder wenn der Take Profit oder Stop Loss erreicht wird.

Stop Loss und Take Profit:

Deranfängliche Stop-Loss wird in einem Abstand von 30 Pips vom Einstiegspunkt gesetzt .

Der anfängliche Take Profit wird auf 50 Pips ab dem Einstiegspunkt festgelegt.

Bei der Eröffnung von Positionen und der Festlegung von Stop-Loss und Take-Profit muss der Expert Advisor den Spread berücksichtigen.

Externe Parameter:

- MA - Periode 14 Exponentialmethode, Verschiebung - 0, Anwendung auf Abschluss

- MA - Periode 5 Exponentialmethode, Verschiebung - 0, Anwendung auf Abschluss

- Möglichkeit zur Änderung der Parameter Take Profit, Stop Loss und EMA, einschließlich ihrer Methode.

Vielen herzlichen Dank im Voraus!

Werden Sie den Zaun streichen? :)

 
BARS писал (а) >>

Text mir auf icq 380-108-968.

Was ist los? :)

 
Registr писал(а) >>

Was ist los? :)

>> da ist noch nichts.)

 
Vadimus >> :

>> Und es ist noch nichts da)

Sagen Sie mir bitte, in welchem Zeitrahmen funktioniert es bei Ihnen?

 
Ich habe bereits an jemanden geschrieben, der ähnlich denkt! Bei Interesse: icq 459027664 possol@meta.ua
 
mamma писал(а) >>

Bitte sagen Sie mir, in welchem Zeitrahmen funktioniert das bei Ihnen?

Es funktioniert in jedem Zeitrahmen, nur mit anderen Parametern und mit einer anderen Effizienz)

 
Registr писал(а) >>

Werden Sie den Zaun streichen? :)

>> Ruhig, hol ihn her.)

 

Geld zu nehmen, um einen solchen Experten zu schreiben, ist "Grizzly as it eats"... Das würde ich mir nicht zutrauen =)

Wenn Sie die Geduld haben - morgen, wenn ich von der Uni zurück bin, werde ich es hier posten

 
Fduch писал(а) >>

Geld zu nehmen, um einen solchen Experten zu schreiben, ist "Grizzly as it eats"... Das würde ich mir nicht zutrauen =)

Wenn Sie die Geduld haben - morgen, wenn ich von der Uni zurückkomme, werde ich es hier posten.

Meine Dankbarkeit wird keine Grenzen haben... im Rahmen des Möglichen (Danke im Voraus).

 
//+------------------------------------------------------------------+
//|                                                       E_A_MA.mq4 |
//|                                                               TO |
//|                           http://ridecrufter.narod.ru/index.html |
//+------------------------------------------------------------------+
#property copyright "TO"
#property link      "http://ridecrufter.narod.ru/index.html"

extern int Ma_Fast_Period=5;
extern int shift_fast=0;
extern int method_fast=1;
extern int applied_price_fast=0;
extern int Ma_Slow_Period=14;
extern int shift_slow=0;
extern int method_slow=1;
extern int applied_price_slow=0;
extern int TP=50;
extern int SL=30;
extern double vol=0.1;
extern int magic=387149;

int i;
bool buy, sell;

int init()
  {   
   return(0);
  }

int deinit()
  {

   return(0);
  }

int start()
  {
   
   if(iMA(NULL,0, Ma_Fast_Period, shift_fast, method_fast, applied_price_fast,1)>
   iMA(NULL,0, Ma_Slow_Period, shift_slow, method_slow, applied_price_slow,1)
   && iMA(NULL,0, Ma_Fast_Period, shift_fast, method_fast, applied_price_fast,2)<=
   iMA(NULL,0, Ma_Slow_Period, shift_slow, method_slow, applied_price_slow,2) && Bid>=(High[1]+1*Point))
   {
      if(OrdersTotal()!=0)
      {
         for( i=0; i<OrdersTotal(); i++)
         {
            OrderSelect( i, SELECT_BY_POS, MODE_TRADES);
            if(OrderMagicNumber()== magic && OrderType()==1)
            {
               OrderClose(OrderTicket(),OrderLots(),Ask,3,Gold);               
            }
            if(OrderMagicNumber()== magic && OrderType()==0) buy=true;
         }
      }
      if(! buy){OrderSend(Symbol(),OP_BUY, vol,Ask,3,Bid- SL*Point,Ask+ TP*Point,NULL, magic,0,Aqua); sell=false;}      
   }
   if(iMA(NULL,0, Ma_Fast_Period, shift_fast, method_fast, applied_price_fast,1)<
   iMA(NULL,0, Ma_Slow_Period, shift_slow, method_slow, applied_price_slow,1)
   && iMA(NULL,0, Ma_Fast_Period, shift_fast, method_fast, applied_price_fast,2)>=
   iMA(NULL,0, Ma_Slow_Period, shift_slow, method_slow, applied_price_slow,2)&& Bid<=(Low[1]-1*Point))
   {
      if(OrdersTotal()!=0)
      {
         for( i=0; i<OrdersTotal(); i++)
         {
            OrderSelect( i, SELECT_BY_POS, MODE_TRADES);
            if(OrderMagicNumber()== magic && OrderType()==0)
            {
               OrderClose(OrderTicket(),OrderLots(),Bid,3,Gold);               
            }
            if(OrderMagicNumber()== magic && OrderType()==1) sell=true;
         }
      }
      if(! sell){OrderSend(Symbol(),OP_SELL, vol,Bid,3,Ask+ SL*Point,Bid- TP*Point,NULL, magic,0,Magenta); buy=false;}      
   }
   
   return(0);
  }
Sie können sie gerne verwenden, und wenn Sie etwas ändern müssen, können Sie das hier tun: .....