Terminal
MQL5
MetaTester
MetaEditor
Fehler in den Absturz-Logs behoben.
Terminal
MQL5
double vector.RegressionError(const enum lr_error); double matrix.RegressionError(const enum lr_error); vector matrix.RegressionError(const enum lr_error,const int axis);Die folgenden Variablen können als Metriken verwendet werden:
enum REGRESSION_ERROR { REGRESSION_MAE, // Mittlerer absoluter Fehler REGRESSION_MSE, // Mittlerer quadratischer Fehler REGRESSION_RMSE, // Wurzel des mittleren quadratischen Fehlers REGRESSION_R2, // R-Quadrat REGRESSION_MAPE, // Mittlerer absoluter Fehler in Prozent REGRESSION_MSPE, // Mittlerer quadratischer Fehler in Prozent REGRESSION_RMSLE // Logarithmus der Wurzel des mittleren quadratischen Fehlers };
MetaEditor
Tester
Terminal
Terminal
Terminal
MQL5
void OnStart() { int arr[4][5]= { {22, 34, 11, 20, 1}, {10, 36, 2, 12, 5}, {33, 37, 25, 13, 4}, {14, 9, 26, 21, 59} }; ulong indexes[4][5]; //--- Sort the array arr.ArgSort(indexes,-1,0); Print("indexes"); ArrayPrint(indexes); } // Result log: // indexes // [,0][,1][,2][,3][,4] // [0,] 4 2 3 0 1 // [1,] 2 4 0 3 1 // [2,] 4 3 2 0 1 // [3,] 1 0 3 2 4
void OnStart() { string test="some string"; PrintFormat("String length is %d",test.Length()); } // Result log: // String length is 11
MQL5
double matrix::Flat(ulong index) const; // getter void matrix::Flat(ulong index,double value); // setter
Pseudocode zur Berechnung der Adresse eines Matrixelements:
ulong row=index / mat.Cols(); ulong col=index % mat.Cols(); mat[row,col]
Für die "Matrix mat(3,3)" zum Beispiel kann der Zugriff auf die Elemente wie folgt geschrieben werden:
Tester
Terminal
Terminal
MQL5
VPS
MetaEditor
Tester
>
Die Dokumentation wurde aktualisiert.
struct POINT { int x,y; }; int GetYFunc(y) { return(y * y); } void SomeFunction(int x1,int x2,int y) { POINT pt={ x1+x2, GetYFunc(y) }; ProcessPoint(pt); };
struct complex { double real; // reeler Teile double imag; // imaginärer Teil };Der Typ "complex" kann als Parameter für MQL5-Funktionen per Wert übergeben werden (im Gegensatz zu normalen Strukturen, die nur per Referenz übergeben werden). Bei Funktionen, die aus DLLs importiert werden, muss der Typ "complex" ausschließlich als Referenz übergeben werden.
complex square(complex c) { return(c*c); } void OnStart() { Print(square(1+2i)); // Die Übergaben einer Konstanten als Parameter } // ausgegeben wird "(-3,4)", die komplexe Zahl in TextformFür komplexe Zahlen sind derzeit nur einfache Operationen verfügbar: =, +, -, *, /, +=, -=, *=, /=, ==,!=.
select count(*) as book_count, cast(avg(parent) as integer) as mean, cast(median(parent) as integer) as median, mode(parent) as mode, percentile_90(parent) as p90, percentile_95(parent) as p95, percentile_99(parent) as p99 from moz_bookmarks;
void func(int &arr[ ][ ][ ][ ]) { }
struct MyStruct { string Array[]; }; void OnStart() { MyStruct a1,a2; ArrayResize(a1.Array,3); ArrayResize(a2.Array,1); a1=a2; }Früher war die Array-Größe von "a1" nach dem Funktionsaufruf gleich 3. Jetzt ist die Größe 1.
Die Dokumentation wurde aktualisiert.
ENUM_FP_CLASS MathClassify( double value // reelle Zahl );Die Enumeration verfügt über folgende Werte:
if(MathClassify(value)>FP_ZERO) { Print("Der Wert ist keine gültige Zahle"); }