Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 727

 
Igor Makanu:

Wenn es darum geht, die Losgröße eines neuen Auftrags im Verhältnis zur maximalen Losgröße der bereits geöffneten Aufträge zu erhöhen, sollten Sie bei der Zählung der Aufträge die maximale Losgröße der Aufträge berücksichtigen

wie diese:

Ich habe die Lose gezählt. Ich möchte, dass sich der Schritt mit jedem Handel erhöht. Nach Koeffizient

 
Carcass77:

Ich habe die Lose gezählt. Ich möchte, dass das Spielfeld bei jedem Handel größer wird. Durch den Koeffizienten.

Dies ist das zweite Mal, dass Sie über den "magischen Schritt" schreiben, und wir müssen raten, was der Schritt ist! )))

Wenn es um die Eröffnungskurse von "extremen" Aufträgen geht und Sie neue Aufträge im Verhältnis zu den Eröffnungskursen dieser Aufträge platzieren wollen, dann ist das Prinzip dasselbe: Suchen Sie bei der Neuberechnung der Aufträge nach den maximalen/minimalen Eröffnungskursen nach Auftragsart, etwa so:

int NumberOfOrders(int magic_,double &openpricemaxbuy_,double &openpriceminsell_)
  {
   int i,ot,buy_=0,sell_=0,k=OrdersTotal();
   openpricemaxbuy_=0.0; openpriceminsell_=0.0;
   for(i=0; i<k; i++)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         ot=OrderType();
         if((OrderMagicNumber()==magic_) && (OrderSymbol()==_Symbol))
           {
            if(ot==OP_BUY) { buy_++;  openpricemaxbuy_  = fmax(openpricemaxbuy_,OrderOpenPrice());  }
            if(ot==OP_SELL){ sell_++; openpriceminsell_ = fmin(openpriceminsell_,OrderOpenPrice()); }
           }
        }
     }
   return(buy_+sell_);
  }



ZZY: Wenn es sich um geschlossene Aufträge handelt, ist der Code anders, und das Prinzip der Aufzählung von Aufträgen ist etwas anders - suchen Sie nach einem Auftrag mit der maximalen Schlusszeit und merken Sie sich seine Parameter

 

Hallo zusammen. Können Sie mir sagen, warum die Funktion Drucken im Indikator nicht funktioniert?

//+------------------------------------------------------------------+
//|                                                        test3.mq4 |
//|                        Copyright 2018, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   
//---
   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[])
  {
       Print("Hello");
       Print("---- First indicator -----");

   
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
 
Alexander Mikryukov:

Hallo zusammen. Können Sie mir sagen, warum die Funktion Drucken im Indikator nicht funktioniert?

es gibt keinen Grund, warum es nicht funktionieren sollte, siehe das Logbuch der Experten für Ihre Meldungen

 
Igor Makanu:

kein Grund, nicht zu arbeiten, schauen Sie im Logbuch der Experten nach Ihren Meldungen

Ja, dumm. Ich danke Ihnen.

 
Gute Nacht! Können Sie mir sagen, ob es möglich ist, mehrere Konten mit einem Skript zu verwalten? Ich danke Ihnen!
 
Maxim Voronin:
Gute Nacht! Können Sie mir sagen, ob es möglich ist, mehrere Konten mit einem Skript zu verwalten? Ich danke Ihnen!

Das kann man, aber nicht mit einem Drehbuch, sondern mit einem Berater. Die Konten müssen in verschiedenen Terminals geführt werden...

 
Vladimir Pastushak:

Das kann man, aber nicht mit einem Drehbuch, sondern mit einem Berater. Die Konten müssen auf verschiedenen Terminals geführt werden...

Fahren Sie fort, wenn es Ihnen nichts ausmacht
 
Maxim Voronin:
Fahren Sie fort, wenn es Ihnen nichts ausmacht

Sie schreiben einen EA, der mit anderen Endgeräten kommunizieren kann, Kopierer sind ein Beispiel für Sie.

Es ist ganz einfach, ein EA sendet etwas und empfängt es in einem anderen Terminal...

 

INIT_PARAMETERS_INCORRECT

Um dem Programmierer einen falschen Satz von Eingabeparametern anzuzeigen, wird der Ergebnisstring mit diesem Rückgabewert in der allgemeinen Optimierungstabelle rot hervorgehoben.

Für diesen Satz von Parametern des Expert Advisors werden keine Tests durchgeführt.



Etwas ist nicht rot hervorgehoben.

Ist das bei allen so?


Dies ist der Code in OnInit:
int OnInit()
{

if (Koef2<=Koef) return(INIT_PARAMETERS_INCORRECT); 

return(INIT_SUCCEEDED);


Und im Protokoll werden Fehler wie dieser geschrieben: