![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
und das ist ein kostenloses und erschwingliches Produkt? wo haben Sie das gesehen... wo haben Sie das fragliche Produkt überhaupt gesehen :-)
Peter macht keinen Hehl daraus, dass der Code geschlossen werden soll, und er zögert, ob und auf welcher Grundlage er bezahlt wird.
Noch einmal: Sie können über geschlossenen Code diskutieren. Sie können sogar über kostenpflichtige Produkte im Marketplace schreiben. Wenn Sie mir nicht glauben, sehen Sie sich mein Profil an und lesen Sie die Regeln noch einmal. Was Peter mit seinem Code macht, ist seine eigene Sache. Der Vorsatz kann keine Schuldvermutung sein.
Wir sind alle hier, um Peter zu befragen. Es ist nützlich und konstruktiv. Bitte diskreditieren Sie diesen Thread also nicht. Es wird bereits viel gepatzt.
Hier. Generell wäre es gut, diesen Beitrag irgendwie an den Startbeitrag anzuhängen, damit es weniger solche Fragen gibt
Das ist in Ordnung. Motor mit geschlossenem Code? TC ist also in Wirklichkeit kein Spinner, sondern ein cleverer Werber, der in wenigen Tagen 39 Seiten an Kommentaren gesammelt hat. Ich weiß nicht, ob das in den Forenregeln erlaubt ist, aber jeder, der hier postet, spielt ihm in die Hände.
Inwiefern entkräftet das, was ich gesagt habe?
C-Code liegt in der Regel nahe am Assembler-Code, aber es ist immer noch der Assembler-Code, der die größte Effizienz aufweist. Unabhängig vom Jahr.
Ich verstehe das mit dem "Laden des CPU-Cache nach der Gauge-Methode" nicht. Deshalb wird der Assembler verwendet, um den Cache so effektiv wie möglich zu laden! Welche Messmethode?
Nein! Nur weil die C++-Syntax nichts bedeutet
Mit Ihrem Ansatz zu modernen Prozessoren nur auf den Foren arduinchiki Programmierer - dort, wie Sie schreiben, hier ist ein Compiler C, es treten alles in Assembly=Maschinencode und wollen direkt Assembler schreiben. wenn Sie die Befehle des Prozessors direkt in einem Maschinencode in den Speicher schreiben wollen - das Ergebnis wird identisch sein, da es sich um einen Ein-Chip-Prozessor mit den üblichen getrennten Registern und direktem Speicherzugriff handelt, ohne Virtualisierung, Cache und Befehlspipeline - das ist bei modernen Prozessoren der Hauptvorteil, der es Ihnen ermöglicht, die Leistung neuer Prozessoren bei bereits erreichten maximalen Prozessortaktfrequenzen zu erhöhen
Hmmm, ich hätte nicht gedacht, dass ich mich mit Ihnen streiten würde, haben Sie in letzter Zeit mal auf den Kalender geschaut? Welches Jahr haben wir? Welche ineffizienten Interface-Gadgets? Sie meinen die Speicherorganisation...
Machen Sie nicht so eine große Sache daraus. Was Georges meinte, ist jedem klar. Wenn Sie Geschwindigkeit programmieren wollen, programmieren Sie sie direkt. Wenn Sie Einfachheit wünschen, verwenden Sie verschiedene Ebenen. Genau das habe ich gemeint.
Hören Sie auf, eine so große Sache daraus zu machen. Wir alle wissen, was Georges meinte. Wenn Sie Geschwindigkeit wollen, programmieren Sie direkt. Wenn Sie Einfachheit wünschen, verwenden Sie verschiedene Ebenen. Genau das habe ich gemeint.
Ich mache weder einen Buckel noch ein Hinken, über@Ilya Malev er schrieb, dass er nicht mochte, dass in MQL ein Objekt 24 Bytes belegt, alles sieht logisch aus, es gibt viel Platz für die Struktur, aber es ist in diesen Momenten und verbirgt die optimale Arbeit mit der PC-Hardware, wo mit Caches, wo mit CPU-Registern, wo ist die Vorauswahl der Befehle, und wo ist das Schalten und die Verzweigungsvorhersage, aber nur versuchen, alles kompakt nach Typen zu ordnen, kann zu Produktivitätsverlust führen
imho gibt es gut etablierte Tendenzen in der Programmierung - OOP, Arbeit mit Datenbanken, es bedeutet, dass im Moment diese die optimalsten Lösungen sind, sowohl Hardware-Hersteller und Compiler-Hersteller passen sich ihnen an und es gibt keine Notwendigkeit, einen Dummy zu bauen ))))
HH: Ich werde nicht einmal nach alten Compilern suchen, aber ich vermute, dass wir, wenn wir den bekannten Compiler aus der Region 2000 und seine neuesten Versionen an einem völlig identischen Testfall testen, den Geschwindigkeitsunterschied sehen werden, da der neue Compiler für neue Generationen von Prozessoren optimiert ist. Ich denke auch, dass, wenn es Assembler-Inserts im Compiler gibt, es dann im kompilierten Projekt unmöglich sein wird, Ihren Assembler-Code unter dem Asembler-Debugger zu finden, weil der Compiler nur die Arbeit des Assembler-Inserts interpretiert.
Was soll das heißen? Welches kommerzielle Produkt? Wo ist der Link dazu? Ist es auf dem Markt erhältlich? Kompilierte ex4 können gepostet und gegebenenfalls diskutiert werden.
Seite 30.
Nein, der "Kern" des Themenstarters ist ein Array von Zeichenketten immenser Größe, und es ist unrealistisch, auch nur theoretisch, über die Effizienz eines solchen Ansatzes zu sprechen.
Der Kern ist ein Array vom Typ int. Sie ist zweidimensional. Größe = 236 Eigenschaften*Anzahl der Objekte.
1 Schaltfläche = 3 Objekte (Basis, Text, Symbol).
Die meisten Elemente sind 1 - 2 Objekte.
Ausführungsliste - 11 Objekte.
Tab - 4 Objekte.
Schieberegler - 4 Objekte.
"Ungehindert" ist ein starkes Wort).
Der Kern ist ein Array vom Typ int. Zweidimensional. Größe = 236 Eigenschaften*Anzahl der Objekte.
1 Schaltfläche = 3 Objekte (Basis, Text, Symbol).
Die meisten Elemente sind 1 - 2 Objekte.
Ausführungsliste - 11 Objekte.
Tab - 4 Objekte.
Schieberegler - 4 Objekte.
"Ungehindert" ist ein starkes Wort)))
Das ist ein Fortschritt :))
Früher war das anders, Sie erinnern sich vielleicht an die Gradientenfunktion.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Funktion der Farbzerlegung.
Retag Konow, 2018.10.11 12:43
Über den Geschwindigkeitsunterschied zwischen den Algorithmen:
1) Ihr Algorithmus füllt ein uint-Array und meiner füllt ein string-Array. (Ich brauche genau eine Zeichenkette, um die richtigen Komponenten aus dem Farbton zu extrahieren und dann mit ihnen zu arbeiten).
Kurz gesagt, es ist falsch, Peter immer wieder in die Enge zu treiben und dabei das Thema in die Irre zu führen.
Peter hat so etwas wie einen Motor aufgestellt. Diese kann kompiliert und ausgeführt werden. Dann wird hoffentlich eine konstruktive Diskussion beginnen: eine Diskussion über den Motor, seine Schnittstellen und darüber, wie man dies und jenes tun kann.
Kommen Sie aus der Ecke und werden Sie Entwickler.
Haben Sie vor, diesem Kindergarten nachzugeben? Immerhin haben Sie sich mehr als einmal konstruktiv darüber geäußert. Aber jedes Mal, und zwar in immer kürzeren Abständen, schüttet Peter sein Handbuch über uns aus. Eine klare Werbung für sein kommerzielles Projekt. Er versteckt es nicht einmal :)
Ich weiß nicht, wie das ist.
aber ich habe schon einmal davon geträumt - die Kernmaschine
Oh, Mann.
Ich muss zurück in die Klapsmühle, um mich auszuruhen.