Zeit für die Umwandlung von Bibliotheken in MQL5 - Seite 2

 

Nein, nicht jeder Handel basiert auf dem NS. Wir werden also keine universelle Handelsplattform bekommen, sondern... Handelslösungen. Natürlich ist es ein recht anständiges Paket, aber es ist zu spezialisiert.

Sie brauchen allgemeine mathematische Bibeln - lineare Algebra, Analysis, Diphire (alle Arten, nicht nur gewöhnliche), Optimierungsmethoden (nicht nur GA, das ist ein Tropfen auf den heißen Stein), Thermostat/Matstat - und vieles mehr.

Ich schreibe diesen Artikel nicht, weil ich genau weiß, was Sie brauchen. Und ich schreibe dies, weil es nicht nur Neural Network Trader unter den Händlern gibt, und eine Schieflage zu ausschließlich NS ist grundsätzlich inakzeptabel.

 
Renat:
Das Hauptaugenmerk liegt auf nativen Bibliotheken in MQL5 ohne die Notwendigkeit von DLLs.

Wir arbeiten sehr hart an der Compilerleistung und werden sie an die Leistung des C++-Compilers heranführen. Dies bedeutet, dass der Bedarf an DLLs stark zurückgehen wird.

Darüber hinaus wird die nächste Version des Editors wahrscheinlich native Unterstützung für die Kompilierung von C/C++-DLL-Code bieten. So wird es möglich sein, einfache DLLs direkt aus dem Meta-Editor zu kompilieren. Wenn Sie Visual Studio 2005/2008/2010 lokal haben, wird ein lokaler Compiler verwendet, andernfalls wird unser Online-Kompilierungsdienst verwendet.

So können Sie die Quell-DLLs gemeinsam nutzen und sie leicht selbst kompilieren. Dadurch wird mehr Kontrolle über die Sicherheit möglich.
Renat, es hat sich herausgestellt, dass du einen Parser geschrieben hast, der mql5-Code in C++ übersetzt, indem er Aufrufe und so weiter ersetzt.
Und dann wird er als gewöhnlicher C/C++-Code in dll-Code kompiliert, verschlüsselt und ex5 erhalten?

Also, das ist nur für die Selbstentwicklung:)
Ich interessiere mich für die grundlegende Strategie der MQL5-Erstellung.

Übrigens, die Kompilierung kann z.B. mit Hilfe von gcc erfolgen.

 
Kompilierung in dll, keine Konvertierung in mql5.
 

Meines Erachtens sollten bei Bedarf die seit Jahren bestehenden Bibliotheken, die von Open-Source- und ähnlichen Bibliotheken entwickelt wurden, in ihrer jetzigen Form verwendet werden. Sie sollten nicht umgeschrieben werden.

Die Entwickler ändern ihre Bibliotheken, erweitern sie, finden Fehler. Das heißt, sie unterhalten ihr Kind und tragen eine gewisse Verantwortung für es. Falls diese Bibliotheken auf mql5 umgeschrieben werden, wer ist dann für die Nachverfolgung der neuen Builds und andere Wartungsarbeiten verantwortlich? Höchstwahrscheinlich handelt es sich um eine völlig unnötige Arbeit.

Wenn Sie z.B. OpenOffice benötigen, werden Sie es nicht auf mql5 umschreiben, sondern einfach sofort benutzen, obwohl die Quellen verfügbar sind. In diesem Fall sparen Sie Zeit und vermeiden Fehler bei der Übersetzung.

Ich denke, Sie sollten nur dann mit der Entwicklung einer DLL beginnen, wenn es sich um eine originelle Entwicklung handelt. Es lohnt sich nicht, die Bibliotheken anderer Leute zu portieren.

Es wäre wahrscheinlich logischer, einen garantierten Verweis von mql auf bereits vorhandene Bibliotheken(dll) bereitzustellen. In diesem Fall können die Entwickler von mql einfach eine Schicht erstellen, die den Aufruf von Funktionen und die Übergabe von Parametern an Fortran, gcc,visualc dll ermöglicht, indem sie das entsprechende Pragma bei der Deklaration der Bibliothek verwenden.

Aber das ist nur meine subjektive Meinung.

Документация по MQL5: Основы языка / Функции / Передача параметров
Документация по MQL5: Основы языка / Функции / Передача параметров
  • www.mql5.com
Основы языка / Функции / Передача параметров - Документация по MQL5
 
Renat: Kompilierung in dll, keine Konvertierung in mql5.

noch einmal erklären, was los ist :)

Es scheint, dass schon jetzt jeder Benutzer selbst .dll zu mql5 hinzufügen kann, aber was wird jetzt passieren? Wird es ein Standard-.dll-Paket für mql5 von Entwicklern geben, das z.B. in der Championship 2012 verwendet werden könnte?

 
Es ist seltsam, von einem "garantierten Zugriff auf die DLL" zu hören, wenn diese in MQL4 und MQL5 seit 7 Jahren perfekt funktioniert hat.

Native Bibliotheken, in Form des Quellcodes in MQL5, sind für diejenigen notwendig, die Programme zum Verkauf schreiben. Für den erfolgreichen Verkauf ist es von entscheidender Bedeutung, die DLL loszuwerden, um die volle Sicherheit des Codes zu gewährleisten.

Stellen Sie sich einfach die Frage, wie Sie Ihren ex5 an 100.000 Händler verkaufen können, und es wird klar, dass DLLs nicht in Frage kommen.
 
Was die Kompilierung von C++-Code angeht, empfehle ich, meinen ursprünglichen Beitrag noch einmal zu lesen. Es wird klar beschrieben, was funktionieren wird und wie es funktionieren wird.
 
IgorM:

noch einmal erklären, was los ist :)

Das Fleisch wird mit mehr Inhalt gefüllt. Die Bibliothek für MT4 ist riesig und beschränkt sich nicht auf mql4.com.

Im Vergleich dazu verliert MT5 jetzt sehr viel. Und nicht nur das: Wenn Sie etwas Originelles und Nützliches schreiben, wird es wahrscheinlich viel zur Migration der Nutzer beitragen.

Es scheint, dass auch jetzt jeder Benutzer eine .dll zu mql5 hinzufügen kann.

Es kann, aber es ist nicht unbedingt einfach.

Soweit ich weiß, besteht die Absicht darin, die erforderlichen Bibliotheken zu nehmen, zu portieren, wo dies möglich ist, den Rest zu verpacken und in einer Form bereitzustellen, die für den normalen Gebrauch geeignet ist.

 

Renat, erklären Sie bitte "an den Fingern" für diejenigen, die so ahnungslos sind wie ich.

Wenn ich ein C++ DLL-Projekt für Visual Studio habe, kann ich Ihre Idee verwenden, um es im Meta-Editor in ex5 zu kompilieren?

Kann ich es weiter mit meinem MQL5-Projekt als Bibliothek verbinden?

 
avoitenko:

Renat, bitte erkläre das an deinen Fingern.

Wenn ich ein DLL-Projekt für Visual Studio habe, kann ich Ihre Idee verwenden, um es in ex5 in MetaEditor zu kompilieren?

Und dann kann es zu meinem MQL5-Projekt als eine Bibliothek angehängt werden?


Könnt ihr Leute nicht lesen?

Es ist klar geschrieben, wie viel klarer könnte es sein?

Darüber hinaus wird die nächste Version des Editors voraussichtlich native Unterstützung für die Kompilierung von C/C++-DLL-Code enthalten. Das heißt, Sie können eine einfache DLL direkt aus dem Meta-Editor kompilieren. Wenn Sie Visual Studio 2005/2008/2010 lokal haben, wird ein lokaler Compiler verwendet, andernfalls wird unser Online-Kompilierungsdienst verwendet.

Wo steht, dass die dll in ex5 kompiliert werden soll?

die DLL wird kompiliert