Diskussion über die MQL4-Dokumentation - Seite 6

 

Niemand bezweifelt, dass eines Tages ein richtiges MQL-Lehrbuch erscheinen wird. Die einzige Frage ist die nach der Zeit.
In diesem Zusammenhang ist es interessant zu wissen, was diejenigen, die nicht lernen, ohne sie zu programmieren (kann nicht) tun wird? Wenn die Entwickler zum Beispiel jetzt an dem Buch sitzen und sagen, dass ein Lehrbuch in 1-2 Jahren veröffentlicht wird, was werden diejenigen tun, die dieses Lehrbuch jetzt haben wollen? Werden sie einfach 1-2 Jahre warten und dann eine ähnliche Filiale wie diese eröffnenhttps://www.mql5.com/ru/forum/51086? ;o)
Nur aus Neugierde.

 
Ich denke, dass die meisten Menschen bereits versuchen, es herauszufinden, aber einige werden warten und nur ein Teil dieses Teils wird warten und nicht auf alles spucken. In der Tat wird in 2 Jahren MQL5 kommen. Warum sollte es ein Lehrbuch über MQL4 geben?
 

Es ist interessant zu wissen, was diejenigen tun werden, die ohne dieses Programm nicht programmieren lernen würden.


Diejenigen, die es wirklich brauchen, werden und können es. Als letzten Ausweg werden sie einfach eine Vereinbarung mit einem Programmierer treffen, der das kodieren wird, was sie brauchen.

Wenn es kein Geld für ihn gibt, dann werden sie im ersten Fall selbst etwas herstellen. Dies ist eine echte Investition in das wichtigste Kapital - das Wissen.

Als ich Trubo Pascal zum ersten Mal in meinem Leben lernte, genügte eine Woche, um es in dem Umfang zu beherrschen, der ausreichte, um zwei Semester lang Vorlesungen für die Studenten zu lesen, für die das Fachgebiet "Systemprogrammierung" kein Profil war. Gleichzeitig ist es mir gelungen, ein eigenes Programm mit etwa 500-600 Zeilen Code zu schreiben, das eine Textdatei von einer Spalte in eine mehrspaltige umformatiert (zugegeben, das ist keine Aufgabe für einen Anfänger). Ich mache mir nicht die Finger schmutzig, ich sage nur, wie lange es ungefähr dauert, bis ich etwas Normales in MQL4 schreiben kann. Die Sprache C ist nicht schwieriger (ich wiederhole: genau C, nicht C++).

Das bedeutet, dass Sie entweder nicht genug Grips oder nicht genug Ausdauer haben. Welche Art von mechanisierten Händlern sind sie?
 

Eine weitere Möglichkeit ist der Fernunterricht. Zum Beispiel so:

  1. Jemand von einem erfahrenen Programmierer schickt die einfachsten Beispiele von Skripten, Indikatoren, Ratgebern mit ausführlichen Kommentaren zu buchstäblich jeder Zeile.
  2. Der Schüler liest sie, analysiert sie, ändert die Parameter und stellt Fragen.
  3. Der Programmierer beantwortet die Fragen und gibt kompliziertere Beispiele, wobei nur neue Funktionen kommentiert werden.
  4. Der Schüler geht das Material noch einmal durch, stellt Fragen dazu und fragt nach einer Idee (Verwendung von Durchschnittswerten, Statistiken, externen Indikatoren usw.).
  5. Der Programmierer beantwortet die Fragen und gibt eine Reihe von Funktionen an, die zur Lösung des Problems verwendet werden können.
  6. Der Schüler bewältigt die Aufgabe, bedankt sich herzlich beim Lehrer und geht, nachdem er das Prinzip und die Grundlagen der Programmierung verstanden hat, baden, stellt von Zeit zu Zeit Fragen im Forum, studiert selbständig Artikel, Handbücher, Beispiele usw.
  7. Der Programmierer, der mit dem Erfolg des Schülers zufrieden ist, zieht sein Honorar von WebMoney ab und wartet auf weitere Angebote für Schulungen.

Diese Art der Ausbildung wäre meiner Meinung nach sehr effektiv. In 5-10 Sitzungen ist es möglich, wenn der Programmierer über genügend Erfahrung verfügt und der Schüler dazu in der Lage ist, ein Niveau zu erreichen, nach dem der Programmierer leicht zur Selbstverbesserung übergehen kann. Was die Bestellung von Expert Advisors betrifft, so ist dies meiner Meinung nach in den meisten Fällen eine Geldverschwendung. Die Strategie muss verbessert (geschärft) werden. Wie stehen die Chancen, sofort auf die "Goldmine" zu stoßen? Der Devisenmarkt verändert sich und Sie müssen sich daran anpassen. Sie müssen entweder selbst schreiben oder eine langfristige Geschäftsbeziehung mit einem Programmierer eingehen und mit einem Team zusammenarbeiten. Was halten Sie davon? Mich interessiert vor allem, ob einer der Programmierer prinzipiell bereit ist, eine Ausbildung zu übernehmen.

 
Ich halte das für eine sehr gute Idee, und ich denke, es werden sich bereitwillige Schüler und Lehrer finden :-)
 
Ich nehme das an:
  • Verfügbarkeit einer integrierten Dokumentation zu MQL4 (in zwei Sprachen) in MetaEditor
  • Entwicklung der Website der MQL4-Programmiergemeinschaft in drei Sprachen (Russisch, Englisch und Chinesisch)
  • Die Bezahlung der Artikel von unabhängigen Händlern in MQL4
  • Organisation der automatisierten Handelsmeisterschaft
  • Pflege der Codebase-Online-Bibliothek mit direktem Zugriff von MetaEditor aus
  • Technische Unterstützung und laufende Beratung der Händler durch die Entwickler in unseren Foren.
einfach ist:

Das ist der Ansatz der sowjetischen Programmierer: "Wir haben ein super-geniales und klares System geschrieben, und du, Dummkopf, kannst es nicht verstehen.


Und das höfliche Interesse der Entwickler an direkten Aussagen dieser Art:

Ich möchte nicht C++ lernen. Ich werde es nie brauchen, und ich habe keine Zeit für dieses Hobby.

direct löst mit der Fortführung ähnlicher Aussagen einen Sturm der Entrüstung aus.


Leider läuft alles auf die Faulheit und den Unwillen hinaus, das zu lesen, was bereits auf dieser Website und in der eingebauten Dokumentation steht, d. h. wir verlangen Dokumentation, sind aber zu faul, sie zu lesen.
 

Ich habe den Eindruck, dass keiner der Entwickler anfangs eine Ahnung hatte, dass die Leute anfangen würden, die Grundlagen der Programmierung in mql zu erlernen. Wahrscheinlich sollten die Programmierer, die mehr oder weniger vorbereitet sind, Expert Advisors, Skripte und Indikatoren programmieren. Und die Nutzer werden nur die vorgefertigten verwenden :-)
Daher auch die relativ bescheidene Dokumentation. Und wenn man sich auf völlig fremde Menschen verlässt und für sie ein Programmiertutorial schreibt, wird es ein sehr umfangreiches Werk. Denn Sie müssen mit den Grundlagen beginnen - verstehen, was Bit und Byte bedeuten. :-)

Ein bisschen Geschichte


Die erste Version von MQL wurde 2001 (vor 6 Jahren) für die Handelsplattform MetaQuotes geschrieben. Es handelte sich um einen sehr einfachen Stack-basierten Interpreter, der es uns aber bereits ermöglichte, den Handel zu automatisieren. Das heißt, Systeme zu schreiben, die tatsächlich Aufträge verwalten. Es war das Jahr 2001, als fast keines der öffentlich verfügbaren Programme (weder Omega noch Metastock) irgendeinen Bezug zur realen Kontoführung hatte (sie verwalteten nur virtuell und weit entfernt vom Markt).

Die zweite Version von MQL 2 wurde 2002 für die Plattform MetaTrader 3 veröffentlicht. Es war eine Sprache, die der Leichten Sprache sehr viel näher kam. Leider war dieser Weg eine absolute Sackgasse. Es stellte sich heraus, dass:
  • Es gibt keine "einfachen Sprachen".
  • Ein nicht-professioneller Programmierer wird per Definition nie etwas Anständiges schreiben
  • Ein professioneller Programmierer wird von einer so "einfachen", aber nicht professionellen Sprache schockiert sein und keine Zeit für das Erlernen einer neuen Sprache aufwenden wollen.
Daher haben wir uns auf die Verwendung der C-ähnlichen Sprache MQL4 und das Schreiben eines guten Compilers konzentriert, um denjenigen Programmierern, die mit C/C++/C#/Java vertraut sind, die meisten Möglichkeiten zu bieten. Die Sprache ist sehr schnell, sicher und wir können fast alles, was wir brauchen, in ihr schreiben (DLLs helfen beim Rest).


Politik gegenüber MQL4


Ich persönlich habe im Forum http://www.metatrader4.com/ru/forum wiederholt unsere Politik in Bezug auf die Sprache MQL4 und ihre klare Positionierung speziell für Programmierer erläutert. Mit anderen Worten, wir machen keine Aussagen wie "wir garantieren, dass jeder alles in MQL4 schreiben kann, was er/sie will". Die Programmierung ist ein wirklich schwieriges Gebiet, das ein Studium erfordert.

Die Tatsache, dass wir C als Basis gewählt haben, gibt jedem die Möglichkeit, mit dem Lernen anzufangen, indem er eines der tausenden (tatsächlich gibt es Hunderte und Tausende) von C/C++-Büchern liest. Die Einstiegsschwelle für MQL4 ist recht niedrig.


Unterstützung und Dokumentation


Bei all unseren Entwicklungen haben wir die Nutzer immer unterstützt, ihre Anfragen beantwortet und viele ihrer Wünsche umgesetzt. In den letzten 2 Jahren haben wir viel in die Dokumentation und die Entwicklung entsprechender Ressourcen für Händler investiert. Und die Investitionen gehen weiter.
 

Renat! Es tut mir sehr leid, dass wir Sie beleidigt haben! Jetzt ist mir klar, dass sich die Sprache ausschließlich an Programmierer mit Grundkenntnissen in C++ richtet. Meine Aussagen beruhten auf der Tatsache, dass C++ im Vergleich zu MQL4 eine kompliziertere Sprache mit völlig anderen Funktionen ist. Es ist unlogisch, etwas Komplizierteres zu lernen, um etwas Einfaches, aber in gewisser Weise Ähnliches zu verstehen. Aber wenn Sie immer noch darauf bestehen, empfehlen Sie mir bitte, welche Teile der zahlreichen C++-Lehrbücher es wert sind, studiert zu werden, bevor man MQL4 in Angriff nimmt. Warum stampfen Sie mit den Füßen und spucken?

Aber dennoch, Renat, ist es sehr interessant, Ihre Meinung zu der oben genannten Idee des Fernunterrichts zu erfahren. Ist es unrealistisch, ohne C++ Lehrbücher zu studieren, sondern nur mit Beispielen?
 
>>>> Ich habe meine Aussagen auf die Tatsache gestützt, dass C++ eine kompliziertere Sprache ist als MQL4, die völlig andere Funktionen hat. Es ist unlogisch >>>>, etwas Komplizierteres zu lernen, um etwas Einfaches, aber in gewisser Weise Ähnliches zu verstehen. Wenn Sie immer noch darauf bestehen, empfehlen Sie bitte >>>>, welche Teile der zahlreichen Lehrbücher über C++ Sie studieren sollten, bevor Sie MQL4 ausprobieren.

Mit
einem solchen Ansatz werden Sie wahrscheinlich nie ein Programmierer werden! Und es geht nicht darum, wer Sie unterrichtet und wie, und was Sie zu diesem Zweck lesen.
Zur Vorablektüre kann ich gleich sagen, dass niemand Sie zwingt, alle C++ zu lesen. Es wurde Ihnen deutlich gesagt, dass MQL4 eine C-ähnliche Sprache ist. Alles, was Sie tun müssen, ist C-Programmierung zu lesen. C++ ist eine Erweiterung von C durch die Einführung von Klassen, Strukturen usw. usw., über die MQL4 nicht verfügt. Auf den Fingern kann es im Allgemeinen folgendermaßen aussehen:
1. Gehen Sie zur nächsten Buchhandlung
2. Im Programmierregal finden Sie das dünnste (<200 Seiten) und billigste Buch über die Sprache C. Es kann den Titel "Grundlagen der C-Programmierung", "Einführung in die C-Programmierung" oder einfach "C-Programmierung für Dummies" tragen.
3. Lesen Sie es "diagonal" und entnehmen Sie ihm nur die allgemeine Idee, wie Funktionen und Operatoren beschrieben werden, welche Datentypen es gibt usw., ohne sich auf die Beispiele für die Verwendung von C zu konzentrieren.
4. Lesen Sie zunächst die Hilfe des MetaEditors (https://docs.mql4.com/ru/). Danach werden Sie verstehen, dass MQL4 in seiner Bedeutung 95% oder mehr der Sprache C entspricht.
5. Als Nächstes werden Sie beginnen, Roshs Artikel http://old.alpari.org/ru/experts/articles/ sorgfältig zu lesen und versuchen zu verstehen, was bei der Erstellung von EAs, Indikatoren und Skripten zu beachten ist.
6. Lesen Sie (wenn Sie zum ersten Mal lesen, können Sie "diagonal" vorgehen) die Artikel dieser Website, nur um Informationen darüber zu erhalten, "wo etwas ist" und wohin Sie eventuell für weitere Informationen gehen müssen.
7. Nach all dem werden Sie anfangen zu programmieren und technische Fragen in diesem Forum zu stellen. Die Menschen haben kein Problem damit, Ihnen zu helfen, zumal Ihre Fragen die gleichen sein werden wie die, die schon einmal bei anderen aufgetreten sind.
8. Als Nächstes werden Sie beginnen, bewusst nach Ihrer Handelsstrategie zu suchen. Ohne einen Algorithmus zu programmieren, basiert die Suche nach einer Handelsstrategie in der Regel auf dem Prinzip "es schien mir, dass diese oder jene Indikatoren profitabel sind, und ich habe sogar 99 von 100 erfolgreichen Transaktionen während des gesamten Demomonats von Hand gemacht". Wenn Sie dieses und andere Foren lesen, in denen fast täglich Leute auftauchen, die etwas so Geniales programmiert haben wollen (manchmal sind die Leute sogar bereit, für dieses Geniale Geld zu bezahlen). Doch nach den Bewertungen zu urteilen, haben erfahrene Programmierer keine genialen Dinge für Geld programmieren müssen, die sie nicht haben.

Im Allgemeinen habe ich einen groben Algorithmus skizziert, um ein Programmierer zu werden. Sie können die Reihenfolge der Etappen nach eigenem Ermessen ändern.
 
Durch die Art und Weise über die Dokumentation, bemerkte ich einige seltsame Sache, wenn ich F1 auf OBJPROP_FIBOLEVELS Eigenschaft in der QuickInfo gedrückt, geht etwas falsch, oder vielmehr fast nichts passiert. Wenn ich die Registerkarte Fehler oder eine andere Registerkarte als Hilfe auswähle, wechselt die Registerkarte zur Hilfe, zeigt aber die alten Informationen über die letzte Anfrage an, und über diese Eigenschaft will sie nichts sagen. Erst eine Suche im Navigator führte zur Antwort. Und ich glaube, das war auch bei einem anderen Grundstück so, aber ich weiß es nicht mehr. Bitte korrigieren Sie dies.