Benötigen die Kunden eine einfache, integrierte Programmiersprache? - Seite 4

 
Slava:

Um Himmels willen! Steigen Sie lieber früher als später in diese Nische ein. Aber bereiten Sie sich auf die Unterstützung von Nicht-Programmierern vor.

Das ist es also, worum es in diesem Thread geht... Alle Vorschläge und Anfragen an den Themenstarter...

 

Ich persönlich bin der Meinung, dass niemand eine "einfache Programmiersprache" braucht. Menschen, die zumindest einigermaßen in der Lage sind, das Programmieren zu verstehen - sie werden eine "komplexe" Sprache schnell genug lernen. Und wer "einen Königsweg in der Geometrie" sucht, wird in einer "einfachen Sprache" einen Haufen Probleme finden.

P.S.

Ich habe MQL II nicht verstanden.

Ich war ganz am Anfang von MQL5, und da ich Erfahrung mit C++ habe, habe ich gleich versucht, es zu benutzen, obwohl MQL4 damals noch keine OOP unterstützte. Die Zeit hat gezeigt, dass ich Recht hatte.

 

Der Gedanke, die Programmiersprachen zu aktualisieren, ist wichtig und höchstwahrscheinlich auch machbar. Erinnern Sie sich daran, wie die ersten Mikroprozessorgeräte programmiert wurden. Dann kam Assembler, und danach eine Vielzahl von Hochsprachen (Basic, Fortran, C...). In jeder Phase geht es darum, den Prozess der Interaktion zwischen Nutzern und technischen Geräten zu vereinfachen. Und diese Ziele sind erfolgreich erreicht worden. Natürlich ist es jetzt an der Zeit, das Erreichte weiter zu vertiefen und zu verbessern. Viele mehr oder weniger erfolgreiche Versuche, den Kodierungsprozess unter klaren und leicht zugänglichen Werkzeugen zu verstecken, sind in fast jeder modernen Software zu finden. Zum Beispiel Excel- oder Powerpoint-Vorlagen, Access-Makros, visuelle Programmierung in Matlab Simulink, usw. Diese Werkzeuge ermöglichen es den Nutzern, fernab vom Programmieren, Aufgaben zu lösen, die früher ohne Programmierer einfach nicht zu bewältigen waren. Und das ist eine sehr gute Sache. Der Bereich des Handels wird wahrscheinlich keine Ausnahme sein. Früher oder später wird es einen Übergang von der Programmierung in MQL zu anderen, einfacheren und klareren Methoden der Implementierung von Algorithmen geben. Bemühungen in diese Richtung können daher nur begrüßt werden. Ich wünsche Alexey viel Erfolg bei der Lösung dieser Frage. Schon die Formulierung der Frage (übrigens sehr professionell) ist ein großer Beitrag zur Lösung dieser sehr schwierigen, aber wichtigen Aufgabe.

 
Serqey Nikitin:

Darum geht es, so wie ich es verstehe, in diesem Thema... Alle Vorschläge und Anfragen an den Themenstarter...


Err, ich schrieb über eine sehr einfache Möglichkeit, dem Benutzer ein primitives Automatisierungswerkzeug an die Hand zu geben, aber dann entwickelte sich das Gespräch wie üblich in Richtung der Schaffung einer neuen Sprache)).

Ich werde die Situation mit Hilfe eines Beispiels beschreiben. Wir haben ein Handelspanel, wie diese Klone, die den Markt überschwemmen. In der Regel erlauben sie Ihnen, die einfachsten Dinge zu tun.

Und nun stellen wir uns vor, dass wir im Panel Bedingungen festlegen können, z. B. die Auswahl der Strategie in Abhängigkeit von den Marktbedingungen.

Wir haben zum Beispiel die untere Grenze des Kanals überschritten. Handelt es sich um einen Ausbruch oder um einen Fehlausbruch? Wir wissen es nicht, und wir haben keine Zeit, vor dem Bildschirm zu sitzen, wir haben etwas zu erledigen.

Ok, wir stellen eine Bedingung auf, die besagt, dass wir den Handelsmodus auf Verkaufen umstellen, wenn die Steigung der Preisänderungen den festgelegten Schwellenwert überschreitet und der Preis unter den Wert *.***** gefallen ist. Wenn die Steigung positiv ist und der Kurs innerhalb der Kanalgrenzen bis zu *.***** steigt, schalten wir den Handelsmodus im Kanal ein.

Dies ist eine sehr grobe Beschreibung. Wir sollten keine Sprache erfinden, denn ein durchschnittlicher Benutzer wird sie nicht lernen, oder, wie Slava richtig bemerkt hat, wird er große Probleme mit der Unterstützung haben. Man muss sich auf den dümmsten Nutzer konzentrieren, und davon gibt es viele. Ich habe schon so viele Leute getroffen, die nicht verstehen, wie das Dateisystem funktioniert und wo Programme installiert werden... und für sie beschränkt sich die Welt des Computers auf Symbole auf dem Desktop. Das ist die Art von Person, die wir ansprechen sollten.

 
George Merts:

Menschen, die zumindest einigermaßen in der Lage sind, das Programmieren zu verstehen - sie werden eine "komplexe" Sprache schnell genug lernen. Wer aber "einen Königsweg in der Geometrie" sucht, wird in einer "einfachen Sprache" viele Probleme finden.

Ganz genau. Du hättest es nicht besser sagen können.

 
Serqey Nikitin:

Das ist die Ausrede derjenigen, die nichts ändern wollen... Es ist sehr EINFACH, eine Sache, die man nicht ändern will, als selbstverständlich hinzunehmen...

Man betrachtet alles nur von seinem eigenen Glockenturm aus.

Es gibt zwei Arten von Nutzern.

Zu ersteren gehören 90-99 % aller Menschen, die zu faul sind, drei statt zwei Mausklicks zu machen. Alle anderen, die sich für eine solche Sprache interessieren, sind durchaus in der Lage, auch mql5 zu verstehen.

 
Комбинатор:

Man betrachtet alles nur von seinem eigenen Glockenturm aus.

Es gibt zwei Arten von Nutzern.

Der erste Typ umfasst 90-99 % aller Nutzer, die zu faul sind, drei statt zwei Mausklicks zu machen. Alle anderen, die sich für eine solche Sprache interessieren, sind durchaus in der Lage, mql5 zu verstehen.


Wie hilft der Wechsel zu mql5? Ist es einfacher, in mql5 zu schreiben? Gibt es weniger Code?

 
igrok333:

Und was ist der Vorteil des Wechsels zu mql5? ist es einfacher, darin zu schreiben? gibt es weniger Code?

ok, zu mql4. ist das ok?

 
Hier ist eine Handelseröffnung in mql4
OrderSend(Symbol(),OP_BUY,0.01,Ask,30,0,0)
eine Zeile.


Hier ist eine Handelseröffnung auf mql5
   MqlTradeRequest request;
   MqlTradeResult result;

   Ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK); 

   request.action=TRADE_ACTION_DEAL;
   request.symbol=Symbol();
   request.volume=Lot;
   request.deviation=Slip;
   request.type_filling=ORDER_FILLING_AON;
   request.sl=SL;
   request.tp=TP;
   request.type=ORDER_TYPE_BUY;
   request.price=NormalizeDouble(Ask,Digits());
   OrderSend(request,result);  
13 Zeilen.

In normalen Programmiersprachen wird ein Oop ausgelöst, wenn mit normalen Methoden nichts erreicht werden kann, aber hier ist das Eröffnen einer Transaktion der einfachste Vorgang im Handel.
Ist das nicht eine lahme Programmiersprache?
 
igrok333:
hier wird ein Handel in mql4 eröffnet
eine Zeile.


Hier wird ein Handel mit mql5 eröffnet
13 Zeilen.

In normalen Programmiersprachen wird eine Operation ausgelöst, wenn mit normalen Methoden nichts mehr getan werden kann, aber hier ist die Eröffnung einer Transaktion die einfachste Operation im Handel.
Ist das nicht eine lahme Programmiersprache?

Diese Sache wird Ihnen die Lebensfreude zurückgeben, einfacher geht es nicht ))