Leinwand ist cool! - Seite 17

 
Алексей Тарабанов:

Morphometrische Analyse - Analyse der abgetöteten Zellen. Zuerst töten wir sie, dann legen wir sie unter das Mikroskop.

Morphometrie (griechisch: morphe Form + ...metry)

Das war's. Genug davon, das Thema durcheinander zu bringen.

 
fxsaber:


Double int ist doppelt so schnell wie double

Sie sind sich des Umfangs nicht bewusst, und Sie führen die Tests in der Mikrosynthetik nicht korrekt durch, da Sie nicht bedenken, welche Auswirkungen es hat, wenn nicht 30 Assemblerfunktionen, sondern ein Array mit 50 000 bis 100 000 Anweisungen ausgeführt werden.

Widerlegen Sie alle Punkte, die ich in meiner ursprünglichen Antwort angeführt habe.

 
Renat Fatkhullin:

Sie sind sich der Größenordnung nicht bewusst und führen fälschlicherweise Tests in Mikrosynthetik durch, ohne die Konsequenzen zu bedenken, die sich ergeben, wenn nicht 30 Assemblerfunktionen, sondern ein Array mit 50k-100k Anweisungen ausgeführt werden.

Widerlegen Sie jeden meiner oben genannten Punkte in Ihrer ursprünglichen Antwort.

Widerlegt diesen Punkt (wenn auch mit primitiven Aktionen bei jedem Tick)

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Leinwand ist großartig!

Renat Fatkhullin, 2019.01.15 22:37

Unter Berücksichtigung der 64-Bit-Code und unsere Compiler müssen wir vergessen, Integer in der Aufgabe Klasse basiert auf doppelten Berechnungen ...

Das Prüfgerät basiert auf doppelten Berechnungen. Und davon gibt es so viele, dass selbst ein Leerlauf mit 7 Millionen Ticks pro Sekunde abläuft.


Sie können einen Simulator mit komplizierteren Aktionen bei jedem Tick schreiben. Aber die Grundlage des Testers ist der Vergleich des aktuellen Tickpreises mit dem Auftragspreis, der die Codes höher macht. Diese Behauptung ist nicht aus dem luftleeren Raum heraus entstanden. Ich habe reproduzierbare Messungen und Berechnungsalternativen in den öffentlichen Bereich gestellt.

 
fxsaber:

Widerlegt diesen Punkt (wenn auch durch primitive Aktionen bei jedem Tick)

Das Prüfgerät basiert auf doppelten Berechnungen. Und davon gibt es so viele, dass selbst ein Leerlauf mit einer Geschwindigkeit von 7 Millionen Ticks pro Sekunde erfolgt.


Es ist möglich, einen Simulator mit komplizierteren Aktionen bei jedem Tick zu schreiben. Aber die Grundlage des Testers ist der Vergleich des aktuellen Tickpreises mit dem Auftragspreis, was die Codes ungefähr höher macht.

Widerlegen Sie dies:

  1. alles muss in Ints umgewandelt werden
  2. Bei der Datenkonvertierung kommt es zu großen Verzögerungen
  3. einen wilden Speicherverbrauch bekommen
  4. 100%ige Wahrscheinlichkeit von Überläufen bei jedem Vorgang und vollständiges Absterben des Systems
  5. eine Missachtung von Entwicklern erfahren, die Ihnen anbieten, ihre Indikatoren zu lesen und in Ints statt in Dubs zu arbeiten
  6. Und siehe da, es gibt keinen Unterschied mehr zwischen Dubs und Ints in der Geschwindigkeit. Kaum zu glauben, aber ja.

Jeder Punkt, bitte.

Denken Sie daran, dass schon ein Punkt 4 oder 5 ausreicht, um die Idee der ganzzahligen Beschleunigung zu vereinen.

Ich spreche nicht von der Tatsache, dass der Prüfer nicht for(i=0;i<limit;i++ ) { }

Ich kann aber auch darauf hinweisen, dass man nicht hoffen kann, die Ergebnisse der lokalen Mikrocode-Optimierung bei Ganzzahloperationen zu erhalten. Manchmal reicht es aus, eine harmlose Zeichenfolge in eine Schleife einzufügen, um die Geschwindigkeit um mehrere Dutzend Prozent zu verringern. Und wenn Sie sich echten Aufgaben zuwenden, wenn der Code mit echter Arbeit aufgebläht ist, gehen alle Vergleiche dort zum Teufel.

 
Renat Fatkhullin:

Widerlegen Sie dies:

  1. alles muss in Ints umgewandelt werden
  2. Bei der Datenkonvertierung kommt es zu großen Verzögerungen
  3. einen verrückten Speicherverbrauch haben
  4. eine 100-prozentige Wahrscheinlichkeit von Überläufen bei jedem Vorgang und einen Totalausfall des Systems erhalten
  5. eine Missachtung von Entwicklern erfahren, die Ihnen anbieten, ihre Indikatoren zu lesen und in Ints statt in Dubs zu arbeiten
  6. Und siehe da, es gibt keinen Unterschied mehr zwischen Dubs und Ints in der Geschwindigkeit. Kaum zu glauben, aber ja.

Jeder Punkt, bitte.

Denken Sie daran, dass schon ein Punkt 4 oder 5 ausreicht, um die Idee der ganzzahligen Beschleunigung zu vereinen.

Ziel war es, zu zeigen, dass es Probleme gibt, die immer noch in ganzen Zahlen gelöst werden können, um schneller zu werden. Ein solcher Tester ist nicht universell einsetzbar, da er nicht mindestens Punkt 5 entspricht.


Was die ersten vier Punkte betrifft, so sind die Probleme weit hergeholt. Denn die Geschwindigkeit des Testers wird nur während der Optimierung benötigt. Es werden nur einmal für alle Durchgänge Ticks umgewandelt.

 
fxsaber:

Ziel war es, zu zeigen, dass es Probleme gibt, die immer noch in ganzen Zahlen gelöst werden können, um die Geschwindigkeit zu erhöhen. Ein solcher Tester ist nicht universell, da er nicht mindestens Punkt 5 entspricht.


Was die ersten vier Punkte betrifft, so sind die Probleme weit hergeholt. Da die Geschwindigkeit des Testers nur während der Optimierung benötigt wird. Es wandelt die Häkchen nur einmal für die gesamte Reihe von Durchgängen um.

Das heißt, weder die Punkte 4 noch 5 sind widerlegt.

Und auch die Umrechnung wollen Sie sparen, was den Zeitaufwand sofort um ein Vielfaches erhöht. Ja, zuweilen, einschließlich des Speichers für die Konvertierung. Ich dachte, du schlägst vor, dass die gesamte Plattform in int64-Preise umgewandelt werden sollte, um Konvertierungen loszuwerden.

Selbst theoretisch gibt es schon seit 10 Jahren keinen Gewinn aus der Migration zu int.
 
Renat Fatkhullin:

Ich spreche nicht davon, wie ein Prüfer nicht for(i=0;i<limit;i++ ) { }

Wenn es sich um einen Tester ohne Timer handelt, ist bewiesen, dass ein Tester nach Ticks funktioniert.

 
fxsaber:

Wenn es sich um einen Tester ohne Timer handelt, ist bewiesen, dass ein Tester für Ticks ist.

Dies ist kein Tester, sondern eine Fälschung. Ohne Indikatoren, ohne Gewinne oder irgendetwas anderes. Dabei besteht jedoch ständig die Gefahr eines Integer-Überlaufs.

Es macht nicht einmal Sinn, darüber zu diskutieren.

Und wieder:

Ich kann aber auch darauf hinweisen, dass man nicht darauf hoffen kann, lokale Mikrocode-Optimierungsergebnisse bei Ganzzahloperationen zu speichern.

Manchmal reicht es aus, eine harmlose Zeichenkette in eine Schleife einzufügen, um mehrere Dutzend Prozent an Geschwindigkeit zu verlieren. Und wenn man sich echten Aufgaben zuwendet, wenn der Code mit echter Arbeit anschwillt, gehen alle Vergleiche in die Hose.

Verstehen Sie, dass die Optimierung von 20 Assembler-Befehlen und einem echten Block für mehrere hundert oder tausend Befehle Ihr Beispiel zunichte machen wird?
 
Renat Fatkhullin:

Somit sind weder Punkt 4 noch 5 widerlegt.

Und Sie wollen die Umwandlung sogar speichern, was den Zeitaufwand sofort vervielfacht. Ja, um ein Vielfaches, einschließlich des Konvertierungsspeichers. Ich dachte, du schlägst vor, die gesamte Plattform auf int64-Preise umzustellen, um die Konvertierungen loszuwerden.

Das scheint ein Missverständnis dessen zu sein, worüber ich gesprochen habe. Ich sprach von einem Beispiel für ein privates Testerproblem, bei dem ganzzahlige Preise in bestimmten Situationen einen Gewinn bringen können. Der universelle Fall war nicht im Sinn. Deshalb ist mein Tester, zu dem ich oben einen Link angegeben habe, auf Dubs implementiert, da er universell ist.

Selbst theoretisch gibt es keine Vorteile, wenn man jetzt 10 Jahre lang zu int geht.

Ich kann nicht immer zu 100 % zustimmen.

 
Renat Fatkhullin:

Es ist kein Tester, es ist ein Blindgänger. Ohne Indikatoren, ohne Gewinne, mit gar nichts. Dabei besteht jedoch ständig die Gefahr eines Integer-Überlaufs.

Dies ist ein Add-on für Ihren Tester, der einen vollständigen Durchlauf mit allen Trades und Gewinnen macht, ohne irgendwelche Änderungen im Code eines Expert Advisors (mit irgendwelchen Indikatoren). Aber es geht schneller als mit dem normalen Tester. Alle reproduzierbaren Beweise wurden angegeben. Personen aus der Quelle haben diese Behauptungen bestätigt.

Grund der Beschwerde: