Eine wirksame Handelsstrategie auf der Grundlage der Analyse mehrerer Währungen und mehrerer DCs - Seite 12

 
In der Tat, man muss es tun und versuchen:) Die Hauptsache ist, dass man etwas hat, mit dem man anfangen kann:) Vielen Dank an alle, die zur Entwicklung dieses Themas beigetragen haben. Eure Meinungen und Kommentare haben die Idee auf ein Niveau gebracht, das wir allein nicht erreicht hätten:)
 
xnsnet:
Na, na, Alexey ich mag deine Gedanken:) Ich nehme eine maximale Datendefinition Tick 128 Byte, multipliziert mit 100 Tausend Ticks, zwölf Meter, von einem Client pro Tag multipliziert mit 100 Clients, Gigabyte, auch mit meinen Ressourcen kann ich Geschichte für ein paar Monate von hundert Clients zu halten, was zu sagen, wenn ich die notwendige Hardware setzen, für Jahre mit zuverlässigen Verdichtung.

Noch besser: Der Server speichert nichts, sondern verarbeitet nur Anfragen und sucht die erforderlichen Daten von Kunden, die gerade online sind, oder er wartet auf Kunden, die online sind und diese Daten bereits gesehen haben.
Dies ist eine Art pia tu pia (Esel oder Kazy) System, aber für Zitate. Findet der Server die angeforderten Daten von mehreren Clients, verteilt er das Herunterladen verschiedener Teile der angeforderten Historie von verschiedenen Clients, so dass er nicht nur einen herunterlädt. Häufig angeforderte Teile der Historie können im Cache auf dem Server gespeichert werden.
 
Aber wie sieht es erstens mit der Aufbewahrung der Geschichte und zweitens mit der Qualität der Geschichte aus, denn dann wäre es schwierig, Schädlinge zu identifizieren. Es handelt sich nicht um Dateien, die weit verbreitet sind und auch in einem P2P-Netzwerk nicht vor unzuverlässigen Hashcode-Informationen schützen. Es ist möglich, den Verlauf auf dem Client als Backup zu speichern, falls der Server selbst ausfällt. Wie viele Clients müssten angeschlossen sein, um alle Daten gemeinsam zu erfassen, außerdem sind viele unter strengen Sicherheitsvorkehrungen untergebracht und nicht jeder hat eine eigene IP-Adresse, da wir uns nicht in einem lokalen Bereich befinden. Viele Menschen sind mit so viel Verkehr einfach nicht einverstanden. Alternativ können auch mehrere Server in Betracht gezogen werden, in jedem Fall sollten die Server über eine Datenübertragung verfügen.
 
Viele Gewerbetreibende haben DSL oder eine andere Möglichkeit, sich schnell und dauerhaft mit dem Internet zu verbinden. Ich habe einen ADSL-Anschluss, und wenn es um eine dynamische IP-Änderung geht, ist diese geplant. Im Allgemeinen gibt es zunächst vielleicht einen Kunden, mich und vielleicht einen anderen Enthusiasten, die alle von ihnen herunterladen, aber wenn er herunterlädt, muss er auch anderen Daten zur Verfügung stellen - das geschieht automatisch. Ich denke, dass es mit der Zeit viele Kunden wie Sie geben wird. Dies ist eine Art OpenQuotes-Projekt:)
Ja, es kann zu Sabotage kommen, wenn falsche Angaben gemacht werden. Das Problem könnte gelöst werden, indem die Daten von mindestens zwei verschiedenen Clients auch programmatisch verglichen werden. Aber im Allgemeinen denke ich auch, dass der Server sicherer sein wird. Sie können einen Laptop als Server einsetzen - er macht nicht viel Lärm und ist relativ billig. Aber dann muss man sich darauf stürzen und festlegen, wer es aushalten soll :) Es kann aber auch sein, dass jemand seinen Computer spendet. Aber dann ist es wünschenswert, mindestens zwei Server bei verschiedenen Personen zu haben, und dann kann ein Server mit Feldbetten verschwinden.
Vielleicht wird MQ einen Server zur Verfügung stellen, da das Projekt sehr beliebt ist ;).
Die MQ-Vertreter werden sagen: "Warum braucht ihr die Historie von Maklerunternehmen, wenn wir unsere flauschigen Kurse im History Center haben, dann nutzt sie und entwickelt robuste EAs, die nicht auf Kurse reagieren. Das ist richtig, aber wie kann man schnell überprüfen, ob der EA auch mit den Daten anderer Maklerunternehmen akzeptabel arbeitet - es ist wünschenswert, eine lange Historie mit diesen Unternehmen zu haben, zum Beispiel ein Jahr lang. Wenn Sie nicht wissen, wie man diese Methode anwendet, können wir versuchen, die Differenz zwischen der Zeit, die wir den Markt erreicht haben, und der Zeit, die wir verpasst haben, zu überprüfen.
 

Ich habe einen dedizierten, 100 Megabit-Kanal zum Internet, der Verkehr ist nur begrenzt, ausgehende Bypass, für Experimente genug:) Nun, dann können Sie einen vollwertigen Server zu kaufen, und nicht ein und legte es auf der Website, wenn die Idee funktionieren wird:) Wie das Sprichwort sagt, wenn nur um der Sache willen, alles andere ist nicht wichtig:) Investoren werden sich von selbst für dieses Vorhaben finden, wenn die Ergebnisse und der Sinn:)) Ich arbeite nicht ohne Grund mit Zecken, denn wie man so schön sagt, muss man global denken, dann macht alles einen Sinn:) Um der Minuten willen sehe ich den Sinn nicht:) Tick ist eine genaue Zeit und Preis, na ja, plus Kundenzeit, und der Balken ist ein paar Werte dazwischen, die alles Mögliche sein können, ich kann mir nicht einmal vorstellen, wie man Balken kombiniert und vergleicht, das ist Unsinn, denn bei jedem Schritt werden Fehler auftreten. Wenn man Ticks und dann Balken vergleichen kann, ist das, als würde man einen Elefanten mit einer Maus vergleichen, vor allem zwischen Handelsplätzen.

Von welchem Metaquote-Zitatenserver sprechen wir? Wenn es ein Demoserver ist, filtert er auch die Zitate auf Kleinigkeiten, bei anderen weiß ich es nicht :) Obwohl ich eine Vielzahl von Servern verglichen, etwas ist überall gefiltert, oder ich verstehe nicht, dass es nicht Filter, aber es ist nur Informationen, die keine Zeit gehabt hat, um zu passieren, aber die Frage ist, wo es keine Zeit, wenn der Unterschied zwischen Ticks pro Sekunde und weniger, aber noch mehr zu, Filter sind eindeutig durch ihre Eigenschaften definiert.

 

Ich denke, ich werde ein Programm schreiben, das auch Zecken raubt - es wird nicht lange dauern. Wir werden Zecken austauschen, wenn es Probleme gibt. Ich denke, dass der Angebotsserver eine mühsame und zeitraubende Aufgabe ist. Aber wenn Sie das tun, schließe ich meinen Client an Ihren Server an.

 
elritmo:
Piligrimm:
elritmo:
Piligrimm, sagen Sie mir, wie können Sie mt verwenden, um einen Schlusskurs eines beliebigen Währungspaares auf einem Diagramm eines anderen Währungspaares darzustellen?

Erstellen Sie mit der Funktion iClose eine Datei mit allen benötigten Instrumenten und ermitteln Sie dann für jedes Instrument ein Mittelwertverhältnis, indem Sie z. B. die letzten 100 Balken für jedes Instrument addieren und durch 100 dividieren. Danach teilen Sie alle Daten für jedes Instrument durch seinen Koeffizienten, als Ergebnis erhalten Sie die Werte aller Instrumente, die um eins schwanken (übrigens ist es für die weitere Verarbeitung mit neuronalen Netzen praktisch, dass alle Daten normalisiert sind), danach multiplizieren Sie die Werte des Instruments, das Sie auf einem anderen Diagramm anzeigen möchten, mit dem Koeffizienten, der für das Instrument auf dem Diagramm, das Sie anzeigen möchten, ermittelt wurde.

OK, ich verstehe, wie Sie die Klone der ausgewählten Paare über iClose nehmen. Dann schreiben Sie diese Werte in eine Datei (ich frage mich, welche Art von Datei und welches Format?).
Dann, so vermute ich, öffnen Sie diese Datei irgendwie in MT4 und es zeichnet alle Werte in Form von Linien, die den Close der verschiedenen Instrumente verbinden. Zumindest in Ihrem Screenshot, wo die Verbindungslinien zwischen den Lücken GBPUSD, AUDUSD und EURUSD eingezeichnet sind, ganz zu schweigen von den Trendlinien, die nach einem Algorithmus gezeichnet werden. Ich habe mich nur gefragt, wie man alle drei Paare in Form von verschiedenfarbigen Linien zeichnen kann, die den Abschluss verbinden.
Die geschlossene Linie des Instruments, in dessen Fenster gezeichnet wird, ist in MT grün gezeichnet. In der angehängten Datei ist ein Beispiel, ich konnte es nicht in Form von Code in das Fenster laden. Die Datei selbst ist für einige andere Aufgaben gedacht, daher hat sie einige Eigenheiten, außerdem kenne ich MQL nicht und schreibe es sehr locker.

Meine Daten werden auf den gebildeten Balken geladen, bzw. die überlagerten Charts sollen um einen Balken verschoben werden. (Wenn jemand innerhalb einer Stunde, nachdem ich das Programm eingestellt habe, heruntergeladen hat, bitte korrigieren:
ExtMapBuffer1[155-iw+ip] zu ExtMapBuffer1[156-iw+ip], und andere Puffer in ähnlicher Weise).
Dateien:
multim_1.mq4  11 kb
 
Übrigens bin ich nicht dazu gekommen, mehrere Währungen zu verwenden, weil Nebenfaktoren im Weg waren, und da ich alles in Runs mache, die schnell genug sind, behebe ich nur Bugs, so dass der Server nicht so eine lange Arbeit ist, um ihn zu schreiben. Oft erledige ich die Hauptarbeit in ein paar Stunden oder sagen wir an einem Tag, und dann denke ich nur noch darüber nach, denn bevor man etwas weiter macht, braucht man Sinnhaftigkeit, die manchmal einfach nicht gegeben ist. Man nennt es Idealismus oder Maximalismus, was fast dasselbe ist :) Wenn die Daten meine erste Sorge ist, vergesse ich manchmal über die Ausgabe Grafik, weil alles allmählich getan wird, Schritt für Schritt, nur bei Bedarf, diese oder jene Wahl. Vielleicht, wenn ich zuerst schrieb und dann dachte, es würde bereits eine Multi-Währung und ein Diagramm mit numerischen Indikatoren, aber wie genau und richtig wäre es für die Anzeige, kann ich nicht behaupten, wenn die Daten gefiltert wird:) Filtration ist identifiziert, bis dieses Problem gelöst ist, wird ein anderes Problem nicht vor der Ansicht erscheinen :)

Wie Pilgrim richtig bemerkt hat, ist die Genauigkeit der Rohdaten nicht unwichtig:) Übrigens, über die Synchronisation der Ticks, alles ist in dieser Angelegenheit gelöst, weil der Markt reagiert sequentiell auf Ereignisse, und deshalb reagieren wir auf Ticks als sequentiell, jeder Tick hat einen Wert, aber ohne Daten von anderen Ticks von Paaren, seine Daten sind nicht so genau in der gleichen grafischen Darstellung, Einflüsse - Bewegungen, Überschneidungen, all dies macht Qualität, ohne alle Ticks wir eigentlich blind oder nicht so sicher, was genau Einfluss auftritt. Während wir die Zeit nicht genauer als eine Sekunde erhalten, wird dies durch die Client-Absorptionszeit kompensiert. Je mehr solcher Clients, desto präziser kann das Timing mit Nanosekunden-Genauigkeit sein, das ist die ganze Präzision der Tick-Synchronisation :) Zehn Millionen Ticks in einer Sekunde reichen nicht aus, es ist genug in der Acht-Byte-Struktur der Zeitnummer, daher ist ihre Reihenfolge fortlaufend. Die Tick-Differenz ist in unserem Fall die wichtigste Bedingung, wenn ein Tick keinen Preisunterschied zum führenden Tick aufweist, ist dies das erste, worauf man achten muss, da es sich per Definition nicht um eine Preisänderung handelt, sondern, in einfachen Worten, um einen Fehler des Servers oder Clients.
 
Piligrimm:
Die Schließlinie für das Werkzeug im Fenster ist in MT grün gezeichnet. Die anderen werden nach der Skalierung angewendet, ein Beispiel ist in der angehängten Datei enthalten, ich habe es nicht geschafft, es als Code in das Fenster zu laden. Die Datei selbst ist für andere Aufgaben gedacht, hat also einige Eigenheiten, außerdem kenne ich mich mit MQL nicht aus, und das Schreiben in MQL ist sehr unübersichtlich.
Jetzt habe ich es verstanden - es ist das Indikatorfenster, in dem Sie alles im Indikatorcode zeichnen.
 
Ich glaube, ihr seid albern.

1. Die Broker werden nicht zulassen, dass Sie ein System auf der Basis von Ticks aufbauen, sie haben viele Möglichkeiten, sich dagegen zu wehren.
2. Zecken sind kontingent und zufällig. Sie sind per definitionem für jeden anders, und es gibt kein System dafür.
3. Wie in der Quantenmechanik gibt es auch bei der Tik einen Effekt der Unschärferelation - der Messvorgang beeinflusst das Ergebnis. Solange Sie ein Beobachter sind (auf der Demo), haben Sie keinen Einfluss auf den Fluss der Ticks. Wenn Sie beginnen, an der Realität zu arbeiten (Messung - Einholung von Angeboten), werden Sie selbst einen Strom von Ticks erzeugen, der von den Marktbedingungen, der Stimmung Ihres Maklers und den Ergebnissen Ihrer Arbeit abhängt ...

Außerdem, vielleicht habe ich viel verpasst, ich habe nicht den ganzen Thread gelesen, aber warum braucht man 128 Bytes pro Tick?
IMHO reichen 2 für die Augen. Verwenden wir die Delta-Kodierung - das erste Byte gibt das Zeitinkrement (z.B. in Sekunden) an, das zweite Byte das Preisinkrement in Pips. Der Preis wird sich während eines Ticks kaum um mehr als eine Zahl ändern, und es ist unwahrscheinlich, dass zwischen zwei aufeinander folgenden Ticks mehr als 4 Minuten liegen. Die resultierende Reihe besteht hauptsächlich aus Werten nahe Null und lässt sich mit jedem Kompressionsalgorithmus gut komprimieren. Außerdem gibt es nicht so viele Zecken an einem Tag. Zum Beispiel hat EURUSD bei Alpari jetzt etwa 5000 Ticks pro Tag.
Grund der Beschwerde: