Wie man mit Metatrader 5 anfängt - Seite 126

 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Neue Version der Plattform MetaTrader 5 build 2190

MetaQuotes Software Corp., 2019.11.12 15:28

Freigegebene Beta 2208:


Sie können über das Menü Hilfe -> Nach Updates suchen aktualisieren.


 

Forum über Handel, automatisierte Handelssysteme und das Testen von Handelsstrategien

Neue Grafikfähigkeiten in MQL5 mit direktem Zugang zu DirectX 11

MetaQuotes Software Corp., 2019.11.22 11:30

Am 27. November 2019 werden wir einen Build mit neuen Grafikfähigkeiten zur Erstellung komplexer 3D-Visualisierungen veröffentlichen.

Wir bieten an, eine Demonstration zu sehen:


Ein Beispiel in Form einer ex5-Datei kann mit der aktuellen Beta-Version 2224 ausgeführt werden, die über den Befehl Hilfe -> Nach Updates suchen verfügbar ist.


Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Neue Grafikfähigkeiten in MQL5 mit direktem Zugriff auf DirectX 11

Renat Fatkhullin, 2019.11.22 12:12

Dies ist die neue CCanvas3D-Klasse, die die Fähigkeiten von CCanvas erweitert.

Wir haben eine Menge nativer DirectX 11-Methoden in MQL5 hinzugefügt, damit Sie komplexe Modelle in 3D-Projektionen visualisieren können.


In der neuen Version wird höchstwahrscheinlich auch die native Arbeit mit SQLite in MQL5 verfügbar sein, wenn wir die Zeit dazu haben. Dies wird die Arbeit mit großen Datenmengen erheblich vereinfachen und schnelle Selektionen ermöglichen.


Dateien:
 

Forum über Handel, automatisierte Handelssysteme und das Testen von Handelsstrategien

Neue Grafikfähigkeiten in MQL5 mit direktem Zugriff auf DirectX 11

Renat Fatkhullin, 2019.11.24 20:10

Es gibt keinen Grund, sich über die Größe des Terminals Sorgen zu machen - es ist sehr kompakt und im Rahmen seiner Möglichkeiten integriert.

Wir haben DirectX hinzugefügt, um die Erstellung einer neuen Klasse von Programmen zu ermöglichen. Leistungsstark und professioneller durch eine hochwertige Visualisierung.

SQLite wird die Arbeit mit massiven und heterogenen Daten drastisch vereinfachen. Sie müssen sich nicht mehr mit primitiven Dateibindungen herumschlagen, sondern speichern einfach in der Datenbank.


Wir gehen weiter:

  1. Wir fügen Clang / LLVM-Unterstützung für C / C ++ in den Editor ein, um DLL / EXE-Projekte lokal zu kompilieren



  2. Noch wichtiger ist, eröffnen wir eine neue Klasse von Programmen in Form von Modulen in C / C ++ geschrieben und sicher zu EX5 konvertiert

    Es wird möglich sein, bestehende Bibliotheken in EX5 mit kleinen Korrekturen zu kompilieren. Alle potentiell gefährlichen API-Aufrufe werden durch MQL5-kontrollierende Wrapper ersetzt.



  3. Wir fügen Python-Unterstützung hinzu, um es einfach zu machen, Python-Skripte aus dem Editor heraus auszuführen, um Daten für MQL5 zu generieren/zu verarbeiten

  4. Wir erweitern die detaillierten Einstellungen von Provisionen und Belegen des Testers zusätzlich zu den bereits in der Beta-Version neu definierten Symboleinstellungen

  5. Wir reduzieren die Ressourcenkosten und das Schema der Lieferung historischer Daten an lokale Agenten


Einiges wird in der Version am 27. November verfügbar sein, der Rest in den nächsten Betas und Releases.



 

Forum über Handel, automatisierte Handelssysteme und das Testen von Handelsstrategien

Neue Grafikfähigkeiten in MQL5 mit direktem Zugriff auf DirectX 11

Renat Fatkhullin, 2019.11.25 20:13

Build 2228 verfügbar:


Jetzt können solche Visualisierungen einfach direkt in MQL5 mit der Standardbibliothek CCanvas3D durchgeführt werden.


Dateien:
 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Neue MetaTrader 5 Plattform Beta-Build 2245: DirectX-Funktionen für 3D-Visualisierung in MQL5 und Symboleinstellungen in Strategy Tester

MetaQuotes Software Corp., 2019.11.29 13:41

Die Beta-Version der aktualisierten MetaTrader 5-Plattform wird am 29. November 2019 veröffentlicht. Wir laden alle Händler ein, sich an den Tests der neuen Plattform zu beteiligen, um alle ihre Funktionen zu bewerten und den Entwicklern bei der Fehlerbehebung zu helfen.

Um die MetaTrader 5-Plattform auf den Build 2245 zu aktualisieren, navigieren Sie zu Hilfe \ Desktop-Updates prüfen \ Neueste Beta-Version:


Die endgültige Version des neuen MetaTrader 5-Plattform-Builds wird nach den öffentlichen Beta-Tests veröffentlicht.

Die neue Version enthält die folgenden Änderungen:

  1. Terminal: In Market Watch sind jetzt mehr Spalten verfügbar. Der Hauptbereich enthält jetzt 40 zusätzliche Symbolparameter, die zuvor nur auf der Registerkarte Details verfügbar waren.




  2. Terminal: Im Navigator werden nun das aktuell verbundene Konto und der aktuelle Server hervorgehoben. Die Funktion ist nützlich, wenn Sie mehrere Konten bei verschiedenen Brokern haben.




  3. Terminal: Aktualisiertes Rahmendesign für Charts. Die Rahmen sind kleiner geworden, so dass mehr Platz für nützliche Informationen zur Verfügung steht.




  4. Terminal: Geänderter Algorithmus zur Berechnung der Handelssummen bei der Anzeige der Handelshistorie als Positionen. Die Werte werden jetzt auf der Grundlage der tatsächlichen Datensätze berechnet.

    Um die Handelshistorie als Positionen anzuzeigen, verwendet das Terminal Informationen über Geschäfte, die während des angeforderten Zeitraums ausgeführt wurden. Nur die Positionen, die innerhalb dieses Zeitraums geschlossen wurden, werden in der Historie angezeigt. Wenn die Position noch offen ist oder ihr Schließungszeitpunkt nicht in das ausgewählte Intervall fällt, wird sie nicht in der Historie angezeigt. Daher können sich der Gesamtgewinn und die Provision im Modus "Positionen" von denen im Modus "Aufträge/Geschäfte" unterscheiden.

    Ein Beispiel: Sie sehen sich die Historie der letzten Woche an. In diesem Zeitraum wurden 100 Geschäfte ausgeführt, von denen 98 eröffnet und 20 Positionen geschlossen wurden. Bei den letzten beiden Geschäften wurden neue Positionen eröffnet, die bis heute nicht geschlossen wurden. In diesem Fall enthält die Historie der Geschäfte 100 Datensätze und entsprechende Gesamtwerte, die auf der Grundlage dieser Geschäfte berechnet wurden. Wenn Sie die Historie als Positionen betrachten, sehen Sie 20 Datensätze, die auf der Grundlage von 98 Geschäften gesammelt wurden. Nur diese Daten werden bei der Berechnung der Gesamtwerte berücksichtigt. Wenn der Makler Gebühren für Einstiegsgeschäfte erhebt, unterscheidet sich der endgültige Provisionswert in der Geschäftshistorie von den in der Positionshistorie angezeigten Provisionen, da im letzteren Fall die beiden letzten Geschäfte ignoriert werden.

  5. Terminal: Schnelleres Starten von MQL5-Programmen wurde implementiert.
  6. Terminal: Es wurde ein neuer /beta-Schlüssel für die Terminal-Installationsdatei hinzugefügt, der das Herunterladen der Beta-Version ermöglicht. Im normalen Modus sollte zuerst die Release-Version installiert werden, die dann bis zu einer Beta-Version aktualisiert werden kann. Wenn Sie diesen Schritt überspringen, können Sie Zeit und Datenverkehr sparen. Beispiel für den Start der Installation:
    C:\mt5setup.exe /beta
  7. Terminal: Die Anzeige der Margin-Anforderungen für Instrumente mit dem Typ "Exchange Stocks" wurde korrigiert.
  8. Terminal: Beschleunigter Betrieb aller Plattformkomponenten durch den Einsatz des Clang/LLVM-Compilers. In einigen Fällen ist die Kompilierung 20% schneller.
  9. MQL5: Neue DirectX 11-Funktionen und Shader für 3D-Visualisierung hinzugefügt. Jetzt können leistungsstarke dreidimensionale Grafiken direkt in MQL5 erstellt werden.

    Die neue Klasse CCanvas3D ist eine Erweiterung der benutzerdefinierten Grafikklasse CCanvas. Sie ist im Verzeichnis \MQL5\Include\Canvas\ verfügbar. Die Klasse bietet Funktionen zum Rendern dreidimensionaler Objekte über DirectX API.

    • Erstellen - erstellt eine Szene.
    • Anhängen - bindet eine Szene an einen Chart.
    • Zerstören - vernichtet eine Szene.
    • ObjectAdd - fügt der Szene ein von der Basisklasse CDXObject geerbtes Objekt hinzu.
    • Render - die vollständige Renderschleife mit Pufferleerung und Rendering aller CDXObjects, die über die ObjectAdd-Methode hinzugefügt wurden.
    • RenderBegin - startet das Rendering der Szene, füllt den Renderpuffer mit der angegebenen Farbe (wenn das DX_CLEAR_COLOR-Flag gesetzt ist) und die Tiefenpuffer (bei Verwendung von DX_CLEAR_DEPTH) und setzt den DXInputScene-Szenenpuffer für Standard-Shader.
    • RenderEnd - schließt das Rendern der Szene ab und empfängt ein Ergebnis in einem internen Puffer. Wenn redraw==true, wird das Bild auf der Karte angezeigt, auf der es läuft.
    • ViewMatrixGet - empfängt eine Ansichtsmatrix.
    • ViewMatrixSet - setzt eine Ansichtsmatrix. Die Matrix ist nicht kompatibel mit den Methoden ViewPositionSet, ViewRotationSet, ViewTargetSet und ViewUpDirectionsSet.
    • ViewPositionSet - legt die Kameraposition fest.
    • ViewRotationSet - legt die Matrix für die Kameradrehung fest.
    • ViewTargetSet - legt den Punkt fest, auf den die Kamera gerichtet ist. Zusammen mit ViewUpDirectionsSet ist es eine Alternative zu ViewRotationSet.
    • ViewUpDirectionsSet - legt die vertikale Position der Kamera fest. Zusammen mit ViewTargetSet ist es eine Alternative zu ViewRotationSet.
    • ProjectionMatrixGet - empfängt die Projektionsmatrix.
    • ProjectionMatrixSet - setzt die Projektionsmatrix.

    Eine ausführliche Dokumentation für die neue Bibliothek wird in Kürze veröffentlicht.

    Neue Beispiele für die Verwendung der Funktionen sind unter \MQL5\Experts\Examples\ verfügbar:

    • KorrelationMatrix3D
    • DemoMorphMath3D

    Kompilieren Sie diese und führen Sie sie in einem Diagramm aus, um die 3D-Visualisierungsmöglichkeiten in MQL5 zu sehen.




  10. MQL5: Es wurde Unterstützung für Operationen mit SQLite-Datenbanken direkt aus MQL5 hinzugefügt. Die Verbindung zu Datenbanken und die Ausführung von SQL-Abfragen können jetzt mit den MQL5-Funktionen implementiert werden. Der interne Betrieb wird durch die neue Standardbibliothekserweiterung implementiert.

    Die folgenden Funktionen sind verfügbar:
     //--- opening and closing the database
      int  DatabaseOpen(string filename,UINT flags);
      void DatabaseClose(int database);
      
      //---  working with tables
      bool DatabaseTableExists(int database,string table_name);
    
      //--- preparing an SQL query
      int  DatabasePrepare(int database,string sql,...);
      void DatabaseFinalize(int request);
      
      //--- reading a query result without/with binding to MQL5 structure
      int  DatabaseRead(int request);
      int  DatabaseReadBind(int request,struct or var);
      
      //--- extracting data from query results to different data types
      int  DatabaseGetColumnCount(int request);
      int  DatabaseGetColumnSize(int request,int column);
      int  DatabaseGetColumnType(int request,int column);
      int  DatabaseGetColumnText(int request,int column,string &value);
      int  DatabaseGetColumnInteger(int request,int column,int &value);
      int  DatabaseGetColumnLong(int request,int column,long &value);
      int  DatabaseGetColumnDouble(int request,int column,double &value);
      int  DatabaseGetColumnBlob(int request,int column,void &data[]);
    
      //--- working with transactions
      int  DatabaseExecute(int db_id,string request);  
      int  DatabaseBeginTransaction(int db_id);
      int  DatabaseCommitTransaction(int db_id);
      int  DatabaseRollbackTransaction(int db_id);
  11. MQL5: Neue Eigenschaft von MQL5-Programmen hinzugefügt, die die Auswahl einer Standard-Visualisierungsmethode ermöglicht.
    #property  optimization_chart_mode "3d,InpX,InpY"
    Die Eigenschaft ermöglicht die Einstellung des Typs des Diagramms, das am Ende der Optimierung geöffnet wird, sowie der Programmparameter für die X- und Y-Achse.

    Die Eigenschaft legt nur die Standard-Diagrammansicht fest. Sie kann jederzeit manuell über das Kontextmenü geändert werden.

  12. MQL5: Neue MathArctan2-Funktion. Gibt den Bogenmaßwert des Winkels zurück, dessen Tangens gleich dem Verhältnis der beiden angegebenen Zahlen ist.
    double  MathArctan2(
       double  y      // the y coordinate of the point
       double  x      // the x coordinate of the point
       );
  13. MQL5: Wir haben die allgemeine Optimierung von Programmen durchgeführt, um die Leistung zu verbessern und den Ressourcenverbrauch zu reduzieren.
  14. MQL5: Es wurden Beispiele für mathematische Berechnungen hinzugefügt, die im Strategietester durchgeführt werden können. Sie sind unter dem Verzeichnis \MQL5\Experts\Examples\Math 3D\ verfügbar.
  15. MQL5: Einführung einer strengeren Kontrolle von Namensräumen.
  16. MQL5: Hinzufügen des Ladens von verknüpften Bibliotheken bei der Verwendung von .NET-Bibliotheken in MQL5-Programmen. Wenn die verwendete .NET-Bibliothek andere Bibliotheken für den Betrieb benötigt, wird der Compiler versuchen, die erforderlichen Bibliotheken automatisch aus \MQL5\Libraries herunterzuladen.
  17. MQL5: Feste Zeitoperationen im MetaTrader-Modul für die Python-Integration. Jetzt verwenden alle Ausgabedaten die Zeit des Handelsservers, mit dem das Terminal verbunden ist.
  18. Tester: Eine Fülle von neuen Funktionen und Verbesserungen:


    Benutzerdefinierte Einstellungen für Finanzinstrumente
    Jetzt können Sie die Einstellungen des Haupthandelsinstruments ändern, mit dem die Tests/Optimierungen durchgeführt werden. Fast alle Spezifikationsparameter können überschrieben werden: Volumina, Handelsmodi, Margin-Anforderungen, Ausführungsmodus und andere Einstellungen. Wenn Sie also einen Expert Advisor unter anderen Bedingungen testen möchten, müssen Sie kein separates benutzerdefiniertes Symbol erstellen und dessen Verlauf herunterladen. Dies kann durch Änderung der Standardsymboleinstellungen erfolgen.



    Wenn die Symbolspezifikation angepasst ist, sind das Zahnradsymbol und das Symbolsymbol mit einem Sternchen gekennzeichnet. Dies zeigt an, dass benutzerdefinierte Parameter für den aktuellen Test verwendet werden.




    Letzte Einstellungen/Expert Advisors/Diagramme
    Verwenden Sie die neuen Befehle des Kontextmenüs für schnelle Tests oder Optimierungseinstellungen. Wählen Sie die zuletzt verwendeten Testereinstellungen, aktuellen Diagramme oder Anwendungen:




  19. MetaEditor: Es wurde die Möglichkeit hinzugefügt, C/C++- und Python-Projekte direkt aus MetaEditor zu kompilieren. Jetzt können mehrsprachige Projekte mit dem integrierten Editor verwaltet werden.

    Wenn entsprechende Compiler auf Ihrem PC installiert sind, erkennt MetaEditor diese und fügt sie zu den Einstellungen hinzu. Optional können Sie auf der Registerkarte Compiler die Pfade zu den erforderlichen Komponenten angeben. Auf der gleichen Registerkarte können Sie die Komponenten herunterladen, indem Sie neben dem entsprechenden Feld auf Installieren klicken.



    Danach können Sie C/C++- und Python-Projekte ähnlich wie MQL5-Programme kompilieren.

  20. MetaEditor: Unterstützung für Unterprojekte innerhalb des Verzeichnisses Shared Projects für die gemeinsame Projektentwicklung über MQL5 Storage hinzugefügt. Zuvor konnten nur einzelne Projekte auf der obersten Ebene erstellt werden.
  21. MetaEditor: Eingebaute Debugger-Updates.
  22. MetaEditor: Das Hinzufügen einer Funktionsüberschrift bei Verwendung eines Code Styler wurde korrigiert.
  23. MetaEditor: Die Befehle 'Zur vorherigen/nächsten Cursorposition springen' sind jetzt nicht nur im Menü Ansicht, sondern auch in der Symbolleiste verfügbar.
  24. MetaEditor: Leerzeichen können jetzt in Projektnamen verwendet werden.
  25. Android: Es wurde die Möglichkeit hinzugefügt, schnell zu Einzahlungs-/Abhebungsseiten auf der Broker-Website zu wechseln.

    Die Suche nach den entsprechenden Funktionen in einem Händlerraum auf der Broker-Website entfällt. Schnelle Navigationsbefehle sind direkt in den Terminals verfügbar: Benutzer können von den Bereichen Konten und Handel zu den Einzahlungs- und Auszahlungsseiten wechseln:



    • Einzahlungs- und Abhebungsoperationen sind nur verfügbar, wenn die entsprechenden Funktionen für das Handelskonto auf der Brokerseite aktiviert sind.
    • Das Handelsterminal führt keine Einzahlungs-/Auszahlungsoperationen durch. Die integrierten Funktionen leiten den Benutzer auf die entsprechenden Seiten der Broker-Website weiter.
  26. Android: Die Positionen in der Historie werden jetzt nach dem Schlussdatum sortiert.
  27. Android: Markierung von Positionen, die durch Stop Loss oder Take Profit geschlossen wurden, mit roten und grünen vertikalen Linien in der Historie hinzugefügt.
  28. Android: Neue Felder in der Spezifikation des Handelssymbols hinzugefügt:

    • Kategorie - die Eigenschaft wird zur zusätzlichen Kennzeichnung von Finanzinstrumenten verwendet. Dies kann zum Beispiel der Marktsektor sein, zu dem das Symbol gehört: Landwirtschaft, Öl und Gas und andere. Die Kategorie wird nur angezeigt, wenn der Broker die entsprechenden Informationen zur Verfügung stellt.
    • Börse - der Name der Börse, an der das Wertpapier gehandelt wird. Die Kategorie wird nur angezeigt, wenn die entsprechenden Informationen vom Makler bereitgestellt werden.

  29. Android: Anzeige des Margin Call Status im Handelsbereich hinzugefügt. Wenn dieser Zustand eintritt, werden die Parameter Margin, Free Margin und Margin Level in rot angezeigt.
  30. Android: Die Anzeige der Schaltfläche zum Öffnen des OTP-Bereichs auf Tablets wurde korrigiert.
  31. Android: Weitere Korrekturen und Verbesserungen.
  32. iPhone/iPad: Es wurde die Möglichkeit hinzugefügt, schnell zu den Einzahlungs-/Abhebungsseiten auf der Broker-Website zu wechseln. Weitere Details finden Sie in der Liste der Neuerungen von MetaTrader 5 für Android.



  33. iPhone/iPad: Unterstützung des dunklen Modus für iOS/iPadOS hinzugefügt.
  34. iPhone/iPad: Der Bereich für Einmalpasswörter ist nun auch in der iPad-Version verfügbar.
  35. iPhone/iPad: Die durch Stop Loss oder Take Profit geschlossenen Positionen werden mit roten und grünen vertikalen Linien in der Historie markiert.
  36. iPhone/iPad: Die Positionen in der Historie sind jetzt nach dem Schließungsdatum sortiert. Wenn die Position noch nicht geschlossen wurde, wird ihr Eröffnungsdatum für die Sortierung verwendet.
  37. iPhone/iPad: Weitere Korrekturen und Verbesserungen.
  38. Korrekturen aufgrund von Absturzprotokollen.

Das Update wird über das Live-Update-System verfügbar sein.


 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

SQLite in MQL5: Neue Funktionen und Leistungstests

Renat Fatkhullin, 2019.12.07 09:24

In Build 2265 haben wir reguläre Funktionen für die Arbeit mit Datenbanken auf Basis von SQLite 3.30.1 implementiert:


Basen können sowohl auf der Festplatte als auch nur im Speicher mit dem DATABASE_OPEN_MEMORY Flag gespeichert werden . Massive Einfügungen/Änderungen in eine DatabaseTransactionBegin/Commit/Rollback-Transaktion zu verpacken, beschleunigt die Operationen um das Hundertfache.

Da wir uns so weit wie möglich auf die Leistung konzentrieren, sind hier die Ergebnisse der LLVM 9.0.0 vs MQL5 Tests. Zeit in Millisekunden, je weniger, desto besser:
Windows 10 x64, Intel Xeon  E5-2690 v3 @ 2.60GHz
                                                        LLVM   MQL5
---------------------------------------------------------------------------------
Test  1: 1000 INSERTs:                                 11572   8488
Test  2: 25000 INSERTs in a transaction:                  59     60
Test  3: 25000 INSERTs into an indexed table:            102    105
Test  4: 100 SELECTs without an index:                   142    150
Test  5: 100 SELECTs on a string comparison:             391    390
Test  6: Creating an index:                               43     33
Test  7: 5000 SELECTs with an index:                     385    307
Test  8: 1000 UPDATEs without an index:                   58      54
Test  9: 25000 UPDATEs with an index:                    161    165
Test 10: 25000 text UPDATEs with an index:               124    120
Test 11: INSERTs from a SELECT:                           84     84
Test 12: DELETE without an index:                         25     74
Test 13: DELETE with an index:                            70     72
Test 14: A big INSERT after a big DELETE:                 62     66
Test 15: A big DELETE followed by many small INSERTs:     33     33
Test 16: DROP TABLE: finished.                            42     40

Die Geschwindigkeit in MQL5 ist absolut die gleiche wie in nativem C ++ mit einem der besten Compiler. Ein Benchmark-Paket zum Abspielen ist beigefügt.


Wir haben auch die einzigartige DatabaseReadBind-Funktion implementiert, mit der Sie Datensätze direkt in die Struktur lesen können, was Massenoperationen vereinfacht und beschleunigt.

Hier ist ein einfaches Beispiel:

 struct Person
  {
   int                id;
   string             name;
   int                age;
   string             address;
   double             salary;
  };

//+------------------------------------------------------------------+
//| Test                                                             |
//+------------------------------------------------------------------+
bool TestDB( string filename, int flags)
  {
   int db;
//--- open
   db=DatabaseOpen(filename,flags);
   if (db== INVALID_HANDLE )
     {
       Print ( "DB: " ,filename, " open failed with code " , GetLastError ());
       return ( false );
     }
//--- create a table
   if (!DatabaseTableExists(db, "COMPANY" ))
       if (!DatabaseExecute(db, "CREATE TABLE COMPANY("
                           "ID INT PRIMARY KEY     NOT NULL,"
                           "NAME           TEXT    NOT NULL,"
                           "AGE            INT     NOT NULL,"
                           "ADDRESS        CHAR(50),"
                           "SALARY         REAL );" ))
        {
         Print ( "DB: " ,filename, " create table failed with code " , GetLastError ());
         DatabaseClose(db);
         return ( false );
        }
//--- insert data
   if (!DatabaseExecute(db, "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Paul', 32, 'California', 20000.00 ); "
                       "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (2, 'Allen', 25, 'Texas', 15000.00 ); "
                       "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (3, 'Teddy', 23, 'Norway', 20000.00 );"
                       "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 );" ))
     {
       Print ( "DB: " ,filename, " insert failed with code " , GetLastError ());
      DatabaseClose(db);
       return ( false );
     }
//--- prepare the request
   int request=DatabasePrepare(db, "SELECT * FROM COMPANY WHERE SALARY>15000" );

   if (request== INVALID_HANDLE )
     {
       Print ( "DB: " ,filename, " request failed with code " , GetLastError ());
      DatabaseClose(db);
       return ( false );
     }
//--- выводим записи
   Person person;

   for ( int i= 0 ; DatabaseReadBind(request,person); i++)
       Print (i, ":  " ,person.id, " " , person.name, " " ,person.age, " " ,person.address, " " ,person.salary);

   Print ( "" );
//--- close all
   DatabaseFinalize(request);
   DatabaseClose(db);
   return ( true );
  }

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
   TestDB( "test.sqlite" ,DATABASE_OPEN_READWRITE | DATABASE_OPEN_CREATE |DATABASE_OPEN_COMMON);
  }


Output:
0 :   1 Paul 32 California 20000.0
1 :   3 Teddy 23 Norway 20000.0
2 :   4 Mark 25 Rich-Mond   65000.0 




Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Neue Version der MetaTrader 5 Plattform Build 2265: DirectX-Funktionen für 3D-Visualisierung in MQL5 und Einrichten von Tools im Strategietester

Renat Fatkhullin, 2019.12.07 08:28

Sehen Sie sich die neuen Funktionen der 3D-Grafik mit Beispielen in der Version 2265 an:

  • / include / canvas - viele Funktionen für DirectX
  • / Experten / Beispiele / Korrelationsmatrix 3D
  • / Experten / Beispiele / Math 3D Morph
  • / Skripte / Beispiele / Remnant 3D

Und eine Reihe von Funktionen für die Arbeit mit SQLite-Datenbanken.


Dateien:
SqLiteTest.zip  2709 kb
 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Einige Tools funktionieren nicht mit dem neuen 2265 Build von MT5 - wie kann man das beheben?

Aytugan Khafizov, 2019.12.09 17:30

Wir haben eine Beta-Version des MT5-Terminals veröffentlicht, in der die Probleme mit Ticksize und StringTrim behoben sind.

Bitte eröffnen Sie ein Demo-Konto auf dem MetaQuotes-Demo-Server, um das Update herunterzuladen.

Und teilen Sie uns Ihr Feedback mit.

 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Neue MetaTrader 5 Plattform Build 2280

MetaQuotes Software Corp., 2019.12.12 15:54

Das MetaTrader 5 Plattform-Update wird am Freitag, den 13. Dezember 2019, veröffentlicht. Das Update enthält wichtige Ergänzungen und Korrekturen, die auf dem Feedback basieren, das wir nach dem vorherigen MetaTrader 5 Build 2265 Major Update erhalten haben:

  1. Terminal: Es wurde ein Fehler behoben, der dazu führte, dass ein Expert Advisor aus einem Chart ohne Daten nicht gelöscht werden konnte.
  2. Terminal: Die Anzeige des Chart-Headers unter Wine wurde korrigiert.
  3. MQL5: Die Lade- und Kompiliergeschwindigkeit von MQL5-Programmen wurde verbessert.
  4. MQL5: Ein Doppelklick auf einen Chart wird jetzt als Einzelklick-Ereignis an ein MQL5-Programm weitergegeben. Zuvor wurden solche Ereignisse nicht behandelt.
  5. MQL5: Die Funktion StringTrimRight wurde korrigiert.
  6. Tester: Es wurde ein Fehler behoben, der dazu führte, dass das Testsymbol in den Einstellungen leer war. Der Fehler konnte beim Umschalten zwischen Handelskonten mit unterschiedlichen Sets von Handelsinstrumenten auftreten. Das neue Verhalten: Wenn das zuvor ausgewählte Symbol nicht im aktuell verbundenen Handelskonto gefunden wird, wird stattdessen automatisch das erste verfügbare Symbol in Market Watch ausgewählt.
  7. MetaEditor: Das Laden des Anwendungssymbols beim erneuten Öffnen der Projekteigenschaften wurde korrigiert.
  8. Die Dokumentation für DirectX 3D-Visualisierungsfunktionen wurde hinzugefügt.
  9. Aktualisierte Übersetzungen der Benutzeroberfläche.
  10. Korrekturen aufgrund von Absturzprotokollen.

Das Update wird über das Live-Update-System verfügbar sein.

Wir empfehlen dringend, dieses Update zu installieren.

 

OpenCL


Das Forum

CodeBase

      Die Artikel

        Die Blogs

          Die Dokumentation

              Der Markt

              • viele in der Suchehier

              Taking Neural Networks to the next level
              Taking Neural Networks to the next level
              • 2019.11.29
              • www.mql5.com
              This thread won't be about a question or problem, but rather about the anouncement of the presentation and documentation of an exciting trading con...
               

              Erweiterung der Strategy Builder-Funktionalität - der Artikel

              Inhaltsübersicht Einführung

              Im ersten Teil der Artikelserie haben wir Merrill-Patterns analysiert und auf verschiedene Datenfelder angewandt, wie z.B. die preis- und preisbasierten Oszillatoren ATR, CCI und WPR, um nur einige zu nennen. Ziel des Artikels war es, die Aussichten für die Verwendung der genannten Muster auf Devisen- und anderen Märkten zu untersuchen und zu bewerten. Der zweite Teil war der Erstellung eines Strategy Builders gewidmet, mit dem sich einfache Strategien unter Verwendung der zuvor besprochenen Muster zusammenstellen lassen. Im dritten Teil werden wir die Funktionalität der Strategieerstellung und -prüfung erweitern. Wir werden die Möglichkeit hinzufügen, zusätzlich zu den Punkten auch mit Lots zu arbeiten, sowie die Funktionalität zur Anzeige der Testergebnisse.


              Extending Strategy Builder Functionality
              Extending Strategy Builder Functionality
              • www.mql5.com
              In the first part of the article series, we analyzed Merrill patterns and applied them to different data arrays, such as the price and price-based oscillators ATR, CCI and WPR, among others. The purpose of the article was to explore and evaluate the prospects of using the specified patterns on forex and other markets. The second part was...
              Grund der Beschwerde: