Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1172

 
Evgeny Dyuka:

Das Forum ist riesig und es gibt kein Thema über den Einsatz neuronaler Netze im Handel. Das ist seltsam. Oder gibt es das irgendwo?

Oder gibt es einfach niemanden, der sich damit befasst?

https://www.mql5.com/ru/search#!keyword=%D0%BD%D0%B5%D0%B9%D1%80%D0%BE%D1%81%D0%B5%D1%82%D0%B8&module=mql5_module_articles

Поиск - MQL5.community
Поиск - MQL5.community
  • www.mql5.com
Поиск выполняется с учетом морфологии и без учета регистра. Все буквы, независимо от того, как они введены, будут рассматриваться как строчные. По умолчанию наш поиск показывает страницы...
 

Alexei, bitte als Freund hinzufügen, ich muss dich per PM kontaktieren

 
Hallo liebe Experten. Haben Funktionen wie SymbolInfoDouble(symb,SYMBOL_BID) oder PositionsTotal() irgendeine Auswirkung auf die Verzögerung (Ping zum Server), oder werden diese Daten vom Terminal übernommen? Und was ist besser: PositionGetDouble(POSITION_PRICE_OPEN) oder Daten aus der MqlTradeResult-Strukturverwenden?
 
Wie kann man Parameter aus der Funktion OnCalculate(const datetime &time[]) per Referenz an eine andere Funktion übergeben, wenn geschrieben wird, dass eine konstante Variable nicht als Referenz übergeben werden kann?
 

Was ist das Problem mit dem zweidimensionalen Array?

Einfacher Testskript-Code:

double ARtst[5][6];
double sss=0.0;

void OnStart()
{
   for(int nn=0; nn<5; nn++) {
      for(int mm=0; mm<6; mm++) {
         ARtst[nn][mm] = 1.0 + 1.0*nn*mm;
      }
   }

   for(int nn=0; nn<5; nn++) {
      testproc(nn,sss,ARtst);
   }
}

void testproc(int ii, double& sum, double& ARR[][])
{  int kk;

   kk = ArrayRange(ARR,1);
   sum = 0.0;
   for(int nn=0; nn<kk; nn++) sum = sum + ARR[ii][nn];

   return;
}

Gibt zwei Fehler auf einmal aus:

1. "[" - ungültiger Indexwert, der auf ein zweidimensionales Array ARR in der testproc-Prozedurdefinition zeigt.

2. "ARtst" - Parameterumwandlung nicht erlaubt, zeigt auf Array ARtst in der Definition der Prozedur testproc.

Kein Problem mit eindimensionalem Array.

 
VANDER:
Wie kann man Parameter von OnCalculate(const datetime &time[]) an eine andere Funktion per Referenz übergeben, da eine konstante Variable nicht als Referenz übergeben werden kann?
void другая_функция(const datetime &time[], const int rates_total) 
{
 Print(time[rates_total-1]);
}
// Вызов функции из OnCalculate

другая_функция(time, rates_total);
 
Yurixx:

Was ist das Problem mit dem zweidimensionalen Array?

Einfacher Testskript-Code:

Gibt zwei Fehler auf einmal aus:

1. "[" - ungültiger Indexwert, der auf ein zweidimensionales Array ARR in der testproc-Prozedurdefinition zeigt.

2. "ARtst" - Parameterumwandlung nicht erlaubt, zeigt auf Array ARtst in der Definition der Prozedur testproc.

Bei eindimensionalen Arrays gibt es keine Probleme.

Ich habe den Code nicht ganz verstanden, aber es sollte so sein:

void testproc(int ii, double& sum, double& ARR[][6])
 
Alexey Viktorov:

Ich habe den Code nicht ganz verstanden, aber es sollte so sein:

Ganz genau! Ich danke Ihnen vielmals.

Ich muss mich noch mit den Unterschieden zwischen MT5 und MT4 auseinandersetzen, bevor ich fertig bin. )))

 
Yurixx:

Ganz genau! Ich danke Ihnen vielmals.

Ich muss mich noch mit den Unterschieden zwischen MT5 und MT4 auseinandersetzen, bevor ich fertig bin. )))

In mql5 unterscheidet sich die Arbeit mit Arrays in keiner Weise von mql4.

 
Alexey Viktorov:

In mql5 unterscheidet sich die Arbeit mit Arrays überhaupt nicht von mql4.

Meiner Meinung nach ist es anders.

In MT4 war es bei der Deklaration von mehrdimensionalen Arrays in Prozeduren nicht erforderlich, die Dimensionalität in einer der Dimensionen explizit anzugeben.