Dies ist die Quelle einer Funktion zur Ermittlung der optimalen gemischten Strategien für ein Nullsummenspiel zwischen zwei Individuen unter Berücksichtigung der Minimierung der Kosten für den Zeilenspieler (positive Werte in der Auszahlungsmatrix bedeuten Gewinne für den Zeilenspieler und Verluste für den Spaltenspieler). Der Quellcode funktioniert. Überprüft, keine Minen.
public double[] getData(double[][] a) { int m = a. length; int n = a[0]. length; double[] p = new double[ m]; double[] q = new double[ n]; double[] x = new double[ m]; double[] y = new double[ n]; int r = rand. nextInt( m); int c = 0; for (int t = 0; t < 100; t++) { System. out. print("Progress: " + t + "% \r"); for (int u = 0; u < 10000; u++) { for (int j = 0; j < n; j++) { y[ j] = y[ j] + a[ r][ j]; } c = 0; for (int j = 1; j < n; j++) { if (( y[ j] == y[ c]) && rand. nextBoolean()) { c = j; } if ( y[ j] > y[ c]) { c = j; } } q[ c] = q[ c] + 1 d; for (int i = 0; i < m; i++) { x[ i] = x[ i] + a[ i][ c]; } r = 0; for (int i = 1; i < m; i++) { if (( x[ i] == x[ r]) && rand. nextBoolean()) { r = i; } if ( x[ i] < x[ r]) { r = i; } } p[ r] = p[ r] + 1 d; } } System. out. println("Progress: 100%"); for (int i = 0; i < n; i++) { q[ i] = q[ i] / 1000000 d; } double ep = 0 d; for (int i = 0; i < m; i++) { double result = 0; for (int j = 0; j < n; j++) { result = result + a[ i][ j] * q[ j] * p[ i] / 1000000 d; } ep = ep + result; } System. out. println("Expected Payoff = " + ep); return q; }
Wer versucht, ein Marktmodell nach dem Prinzip der maximalen Annäherung des Modells an einen bestimmten Teil der Zeitreihen desselben Marktes aufzubauen, gerät in Schwierigkeiten.
Es ist schwer, dem zu widersprechen.
Füllen wir mit den gleichen Unterschieden der Eröffnungskurse ein Zahlenfeld, bei dem der horizontale Balken die Zeit der Sitzung - einzelne Balken vom Beginn der Sitzung an - und der vertikale Balken die Sitzungen selbst, d.h. die Kalenderdaten, darstellen wird. Wir haben also eine Zahlungsmatrix erhalten. Wenn wir sie für den Spieler spaltenweise lösen, erhalten wir eine Lösung für unser Problem, d.h. zu welchem Zeitpunkt und mit welchem Volumen wir eine Long-Position eingehen sollten. Wie bereits erwähnt, handelt es sich dabei um die schlimmste Schätzung der Situation durch mathematische Erwartung - den Preis des Spiels.
Großartig! Als Nächstes werden wir uns mit weiteren Berechnungen und Optimierungen befassen.
Nur wer sagt, dass die in der Matrix zusammengefassten "15-Tage-Kurse" die optimale Marktstrategie sind, und nicht ein anderer, aber pervertierter Ausschnitt der Zeitreihe?
Zumal sich die Natur, sorry der Markt, nicht an diese Matrix halten muss...
Erinnert mich an das Gedicht über den Arsch und seinen geliebten Hund...
Der Zutzik will unbedingt Fleisch. ;)
Fazit: Der Gärtner verstand den neuen "Optimierung on the fly"-Chip nicht.
Erklären Sie bitte die Unterschiede zu herkömmlichen Anpassungsmethoden.
Offensichtlich. Angenommen, der Markt hat diese optimale Strategie. Ich persönlich bevorzuge die Analogie des Spiels mit der Natur, bei dem die Natur keine sinnvollen Strategien entwickelt.
Ich habe es ausprobiert. Es passt nicht. Denn in der "Natur" wird wissentlich das völlige Fehlen jeglicher Strategie vorausgesetzt. Es bleibt nur noch, eines der vielen Kriterien auszuwählen, die sich als nicht einmal marktnah erweisen können.
Es ist also besser, an der Meinung festzuhalten, dass der Markt keine dumme "Natur" ist, die macht, was sie will, sondern dass er effizienter ist, als man vielleicht denkt. Es ist also besser, eine Berechnung vorzunehmen, die berücksichtigt, dass sie versuchen wird, den Händler zu betrügen, und sie wird es am effektivsten tun.
Wie einer meiner Freunde (ebenfalls Händler) sagt: In unserem Geschäft ist es besser, auf Nummer sicher zu gehen.
Aber wer sagt, dass die in einer Matrix zusammengefassten "15-Tage-Notierungen" eine optimale Marktstrategie sind und nicht das nächste, aber pervertierte Segment der Zeitreihe?
Umso mehr ist die Natur, ich bitte um Entschuldigung, nicht verpflichtet, sich an diese Matrix zu halten...
...
Erläutern Sie die Unterschiede zu herkömmlichen Anpassungsmethoden, Feuer.
Hierfür gibt es Methoden der zusätzlichen Dichtsitzprüfung. Zum Beispiel bei Vorwärtsprüfungen.
Meine Aufgabe ist es, nur eine der Anwendungsmethoden zu zeigen, und wie Sie dieses Material verwenden und modellieren, ist Ihr persönliches Problem. Meine Aufgabe ist es, anzubieten, Ihre Aufgabe ist es, abzulehnen. Wenn Sie also eine persönliche Meinung dazu haben, wie Sie die Anprobe vermeiden können, verbietet Ihnen niemand, sie zu benutzen. Und wenn nicht, sollte es kein Urteil geben.
Wenn Ihnen die 15-Tage-Geschichte nicht gefällt, gibt es keinen Grund, warum Sie nicht mehr oder weniger nehmen können.
Deshalb ist es besser, an der Meinung festzuhalten, dass der Markt keine dumme "Natur" ist, die so handelt, wie sie es für richtig hält, sondern dass er effizienter ist, als man vielleicht denkt. Daher ist es besser, eine Berechnung vorzunehmen, die auf der Tatsache basiert, dass sie versuchen wird, den Händler auszutricksen und dies möglichst effektiv zu tun.
Dann sollten wir vielleicht das Problem lösen, die vermeintlich optimale Strategie einer Gruppe von Händlern auf der Grundlage aktueller Daten zu ermitteln und dann die sprichwörtliche antagonistische Marktstrategie gegenüber den Händlern zu finden.
Und dann wird unser "Optimum in Bezug auf sie" kommen. ;)
Als Gärtner weiß ich nicht viel über Spiele, vor allem, wenn sie von der Art "Ich weiß, dass er weiß, dass ich weiß..." sind.
Dann sollte man vielleicht das Problem lösen, die vermeintlich optimale Strategie einer Gruppe von Händlern auf der Grundlage aktueller Daten zu identifizieren und dann diese notorisch antagonistische Marktstrategie in Bezug auf die Händler zu finden.
und dann wird unser "Optimum im Verhältnis dazu" kommen. ;)
Als Gärtner weiß ich nicht viel über Spiele, vor allem, wenn sie von der Art "Ich weiß, dass er weiß, dass ich weiß..." sind.
Man hat Ihnen gesagt, dass Sie für Ihre Zwecke jedes beliebige Modell verwenden können, d.h. ausnahmslos alle Händler + Modelle für Notfallinterventionen + Aktionen der Zentralbankgouverneure + Aktionen der Regierungen + .... + Erdbeben + mögliche Auswirkungen einer außerirdischen Invasion usw. auf den Puls der Welt. Was hindert Sie also daran, mehr als nur alle Händler zu modellieren, wenn Sie wirklich unbegrenzte Rechenressourcen haben, um alles und jedes zu berücksichtigen?
Aber in diesem Thread soll das vom Themensteller vorgeschlagene Modell diskutiert werden, und nicht verschiedene Ideen von allen möglichen Unsinnserzeugern.
Als Gärtner weiß ich nicht viel über Spiele, vor allem nicht, wenn sie wie "Ich weiß, dass er weiß, dass ich weiß..." sind.
Sie haben immer einen guten Berater, der sich damit auskennt wie ein Schwein mit Orangen.
Sie können jedes beliebige Modell für Ihre persönlichen Zwecke verwenden, ... + mögliche Auswirkungen einer Alien-Invasion usw. bis hin zum Verlust des Pulses.
Aber in diesem Thread soll das vom Topikstater vorgeschlagene Modell diskutiert werden, nicht die verschiedenen Ideen von allen möglichen Schwärmern.
Danke, dass Sie sich konstruktiv mit Wissenschaft und Zahlen auseinandersetzen.
Fragen entfernt.
Ich fühle mich geehrt.
Nur zur Erinnerung:
Zwei Spieler, T-rader:) und B-time:), spielen ein Spiel, bei dem sie gleichzeitig und unabhängig voneinander eine Münze werfen und sich für Crest (G - verkaufen - Preis runter) oder Tail (P - kaufen - Preis rauf) entscheiden.
Wenn die Ergebnisse von zwei Münzwürfen gleich sind (d. h. GH oder RR), erhält Spieler T einen Dollar von Spieler B.
Andernfalls zahlt Spieler T einen Dollar an Spieler B.
Die folgende Matrix der Zahlungen an Spieler T zeigt die Werte der minimalen Elemente der Zeilen und der maximalen Elemente der Spalten entsprechend den Strategien
der beiden Spieler.
| BP |
| ||||
---|---|---|---|---|---|---|
TG | 1 | -1 | -1 | |||
TR | -1 | 1 | -1 | |||
Säulenmaxima | 1 | 1 |
Die Höchst- und Mindestwerte (Preise) für dieses Spiel sind $1 bzw. $1. Da diese Werte nicht gleichwertig sind, wird das Spiel
hat keine Lösung in reinen Strategien.
Wenn Spieler T die Strategie TG wählt, wird Spieler B die Strategie BP wählen, um einen Dollar von Spieler T zu erhalten.
In diesem Fall kann Spieler T zur Strategie TP wechseln, um den Ausgang des Spiels zu ändern und einen Dollar von Spieler B zu erhalten.
Die ständige Versuchung für jeden Spieler, zu einer anderen Strategie zu wechseln, zeigt, dass eine reine Strategielösung inakzeptabel ist.
Stattdessen müssen beide Spieler eine geeignete zufällige Kombination ihrer Strategien anwenden.
Moulin E. Spieltheorie mit Beispielen aus der mathematischen Ökonomie. M.: Welt,
Es ist zu beachten, dass die Entscheidung für eine gemischte Strategie voraussetzt, dass es Wahrscheinlichkeiten für den Markt gibt, die eine oder andere Strategie anzuwenden.
Ich danke Ihnen für Ihren konstruktiven Beitrag zur Wissenschaft.
Fragen entfernt.
Ich fühle mich geehrt.
Bitte sehr. Wir freuen uns immer, wenn wir eine Flunder aufstöbern können.
Bitte sehr. Wir freuen uns immer, wenn wir eine Flunder aufstöbern können.
Danke für die Noten.
Hauptsache, es macht Spaß. :)
Dazu gibt es mehrere Möglichkeiten, von denen die gängigste ist:
1. Durch die lineare Programmierung, nämlich durch die Simplex-Methode. Die Methode ist nicht sehr gut, da sie (je nach Implementierung) ins Stocken geraten kann, wenn die Zahlungsmatrix keine Lösungen hat, und in einigen Fällen, wenn es einen Sattelpunkt in der Zahlungsmatrix oder überhaupt keine Lösung gibt (je nach Implementierung).
2. iterative Methode. Bei jedem Schritt der iterativen Methode wird die Konvergenz zu einer der möglichen Lösungen der Zahlungsmatrix erreicht. Wenn der nächste Schritt nicht eindeutig ist, wird die Wahl durch einen Zufallsgenerator getroffen. Daher kann die Methode zu unterschiedlichen Lösungen führen, wenn dieselbe Zahlungsmatrix erneut berechnet wird. Wenn es keine Lösungen gibt oder der Preis des Spiels gleich Null ist, tendiert die Konvergenzerwartung gegen Null.
Kann dies nicht vereinfacht werden, indem nur ein Teil der Geschäfte betrachtet wird, die bestimmte Bedingungen erfüllen, oder indem ein Teil der Geschäfte verworfen wird?
Angenommen, wir haben ein Intraday-System mit vielen Geschäften. Wir belassen die Long-Geschäfte, die bei einer rückläufigen Tageskerze stattgefunden haben, und die Short-Geschäfte entsprechend. Es kann nicht nur bärisch sein, sondern die 50 bärischsten Geschäfte der Handelsgeschichte usw. Man kann sich eine Vielzahl von Filterkriterien ausdenken. In Wirklichkeit handelt es sich nur um eine Auswahl der schlimmsten Situationen für einen Händler - eine bedingte asymmetrische Reaktion (:)) des Marktes.
Es kann auch andersherum sein: Sie können die besten Strategien nicht auf der gesamten Historie suchen, sondern nur auf den nach bestimmten Kriterien ungünstigsten Teilen der Historie für Long- und Short-Positionen.
Kann dies nicht vereinfacht werden, indem nur ein Teil der Geschäfte berücksichtigt wird, die bestimmte Bedingungen erfüllen, oder indem ein Teil der Geschäfte verworfen wird?
Angenommen, wir haben ein Intraday-System mit vielen Geschäften. Wir belassen die Long-Geschäfte, die bei einer rückläufigen Tageskerze stattfanden, und die Short-Geschäfte entsprechend. Es kann nicht nur bärisch sein, sondern die 50 bärischsten Geschäfte der Handelsgeschichte usw. Man kann sich eine Vielzahl von Filterkriterien ausdenken. In Wirklichkeit handelt es sich nur um eine Auswahl der schlimmsten Situationen für einen Händler - eine bedingte asymmetrische Reaktion (:)) des Marktes.
Sie können das Gegenteil tun: Suchen Sie die besten Strategien nicht in der gesamten Geschichte, sondern nur in den nach bestimmten Kriterien ungünstigsten Perioden der Geschichte für Long- und Short-Positionen.
Im Wesentlichen ist die Lösung des Spiels die nach bestimmten Kriterien ungünstigsten Teile der Geschichte, da bei der Auswahl einer Strategie für den Markt, wie ich bereits sagte, die Phasen, in denen ein Händler einen Gewinn erzielen könnte, ausgeschlossen oder sogar eliminiert werden.
Was gemischte Strategien für Short- und Long-Positionen betrifft, so ist es durchaus möglich, den günstigsten Zeitpunkt für Long- und Short-Positionen zu finden. Wenn wir zum Beispiel nur nach Strategien für Long-Positionen suchen, dann würde genau diese Strategie einem Händler empfehlen, zu bestimmten Stunden mit einem Volumen von Null zu eröffnen. Das heißt, es ist besser, zu solchen Zeiten nicht zu kaufen. Es wird möglich sein, das Vorzeichen für alle Zahlen in den Spalten der Entgeltmatrix, die diesen Stunden entsprechen, zu ändern, was im Wesentlichen die Berücksichtigung von Kurzzeitstellen bedeuten würde. Wenn die Lösung einen Wert ungleich Null ergibt, ist ein Kurzschluss möglich. Das Wichtigste ist, wie gesagt, ein positives Kursspiel für den Händler zu erreichen.
Vielen Dank für den Vorschlag einer gemischten Strategie für Shorts und Longs!
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Es ist allgemein bekannt, dass Märkte nicht stationär sind. Es ist sehr einfach, dies zu beweisen: Wir nehmen ein Marktmodell für ein bestimmtes Finanzinstrument und passen es an einen bestimmten Ausschnitt historischer Daten an und nähern uns ihm so weit wie möglich an (approximieren es). Wir erhalten ein Extremum der Differenz zwischen den historischen Daten und unserem Modell - den Rückstand. Führen wir das oben beschriebene Modell auf einem anderen historischen Datenabschnitt durch - außerhalb der Stichprobe, für dasselbe Marktinstrument. Wir erhalten ein viel schlechteres Ergebnis, was die Residuen anbelangt.
Die Märkte sind ständig in Bewegung - sie sind nicht stationär.
Wer also versucht, ein Marktmodell nach dem Prinzip der maximalen Annäherung des Modells an einen bestimmten Teil der Zeitreihe der Marktpreisdaten zu erstellen, gerät in Schwierigkeiten. Da alle diese Näherungsmodelle davon ausgehen, dass sich die Märkte nicht verändern, bleiben ihre statistischen und probabilistischen Merkmale gleich. Wir wissen jedoch, dass dies nicht stimmt. Daraus folgt, dass alle Versuche, die genauesten Modelle (Formeln) des Marktes auf der Grundlage einiger historischer Daten zu erstellen, zum Scheitern verurteilt sind, weil jede Veränderung des Marktes, auf dem das Modell aufgebaut wurde, es zumindest ungenau macht.
Was ist in diesem Fall zu tun? Vielleicht sollten wir jede Optimierung ablehnen - Anpassung an historische Daten?
Die Antwort liegt auf der Hand: Um ein optimales Marktmodell zu erstellen, sollte die Optimierung so durchgeführt werden, dass das Marktmodell dynamisch und nicht statisch ist. D.h. dem Modell einige Freiheitsgrade zu geben.
Es scheint, dass die letzte Aussage trivial erscheint. Ja. Aber wenn Sie sich ansehen, was bei der Erstellung von Marktmodellen gemacht wird, werden Sie feststellen, dass eine so triviale Wahrheit fast nie verwendet wird.
Es ist ebenso offensichtlich, dass die Optimierung mit Hilfe von Algorithmen durchgeführt werden sollte, die die optimale Lösung für das Spiel von zwei Personen (d.h. Handelssystem von Händler und Markt) mit Nullsummen- und gemischten Strategien (Freiheiten der Strategiewahl für beide Spieler) unter Verwendung von Zahlungsmatrizen finden. Denn in diesem Fall haben wir:
1. Ein bewusst dynamisches Modell des zweiten Akteurs, des Marktes, das ihm Freiheitsgrade bei der Wahl seiner Strategie - einer gemischten Strategie - einräumt.2. Ein bereits fertiger mathematischer und algorithmischer Apparat, der sofort eingesetzt werden kann. Der mathematische Apparat für das Spiel zweier Personen mit gemischten Strategien und Nullsumme ist vollständig, d.h. er enthält keine "weißen Flecken", und daher erhalten wir entweder eine Lösung oder die wissende Antwort, dass es keine Lösung gibt.
Vor allem aber ergibt die Lösung der Zahlungsmatrix für das Nullsummenspiel zweier Personen nicht eine, sondern zwei optimale Lösungen, die die Kosten jedes Spielers minimieren: eine für die potenzielle Marktstrategie, die andere für das Handelssystem des Händlers.
Und da die optimale Strategie bei der Lösung der Zahlungsmatrix die Minimierung der Kosten ist, d.h. die schlechteste Option der mathematischen Gewinnerwartung, die ein Spieler durch striktes Befolgen seiner Strategie erhalten kann, dann ist aufgrund der Nicht-Stationarität des Marktes die Wahrscheinlichkeit, dass der Markt nicht seiner eigenen optimalen Strategie folgt und daher notwendigerweise den Kostenanteil des Handelssystems des Händlers reduziert, während der Gewinnanteil erhöht wird, wenn eben dieses Handelssystem strikt der optimalen Strategie mit
Ich werde nicht weiter auf einige mathematische Details des Zwei-Personen-Nullsummenspiels für gemischte Strategien und seine Besonderheiten eingehen, da alle Informationen offen und im Internet verfügbar sind, z. B. unter diesem Link: Gemischte Strategien für Zwei-Personen-Nullsummenspiele
Zahlungsmatrix
Die Zahlungsmatrix für ein Zwei-Personen-Nullsummenspiel ist ein zweidimensionaler Zahlenraum. Der Punkt ist, dass der Erwartungswert für eine Zeile oder eine Spalte dieser Matrix unter Berücksichtigung der optimalen Strategien beider Spieler berechnet wird. Der gesamte (endgültige) Erwartungswert des gesamten Spiels, d. h. für alle Zeilen oder für alle Spalten unter Berücksichtigung der optimalen Strategien beider Spieler, wird als Spielpreis bezeichnet.
Daher wird die Auszahlungsmatrix meist mit Auszahlungswerten gefüllt. Die Zahlungsmatrix ist dann im Grunde genommen die Spielregel. Wenn die Zahl positiv ist, zahlt der erste Spieler dem zweiten Spieler einen Betrag in Höhe des in der Zelle angegebenen Wertes. Ist er negativ, so zahlt der zweite Spieler dem ersten Spieler den absoluten Betrag des angegebenen Wertes.
Mit Hilfe von Zahlungsmatrizen lassen sich also eine Reihe von Spielen modellieren, deren Ergebnis davon abhängt, ob sich die Spieler für den einen oder den anderen Ausgang des Spiels entscheiden, vorausgesetzt, keiner von ihnen kennt im Voraus die Entscheidung des zweiten Spielers. In Bezug auf den Handel ergibt sich eine Analogie, da der Händler nicht im Voraus weiß, in welche Richtung der Preis gehen wird, und der Markt nicht weiß, in welche Richtung ein bestimmter Händler eine Position eröffnen wird, es sei denn, der Händler ist ein Insider (Inhaber eines erheblichen Teils der Vermögenswerte auf dem Markt, mit denen er oder sie die Notierungen stark beeinflussen kann).
Praktisches Beispiel
Nehmen wir an, wir handeln mit Aktien an der Chicagoer Börse. Unsere Strategie besteht darin, das Wertpapier zu kaufen und für einen bestimmten Zeitraum zu halten. Die Problemstellung lautet: Zu welchem Zeitpunkt und mit welchem Volumen in Lots ist es für uns am profitabelsten, eine Long-Position einzugehen?
Die Börsensitzung dauert 7 Stunden und 30 Minuten. So kann die gesamte Sitzung in 15 gleiche Teile zu je 30 Minuten aufgeteilt werden. Daher wird die Analyse für den Zeitrahmen M30 durchgeführt.
Nehmen wir die Kurse der letzten 15 Tage - drei komplette Handelswochen. Nehmen wir an, dass das Ergebnis jeder Periode die Differenz zwischen dem Eröffnungskurs eines Balkens und dem Eröffnungskurs des vorherigen Balkens ist, d.h. für die Balkennummer n in den Verlaufsdaten ist es Open[n] - Open[n + 1]. Die Zeit basiert auf der Taktnummer n + 1
Füllen wir mit eben diesen Unterschieden in den Eröffnungskursen ein Zahlenfeld, bei dem der horizontale Balken die Sitzungszeit ist - einzelne Balken vom Beginn der Sitzung an, und der vertikale Balken ist die Sitzung selbst, d.h. Kalenderdaten. Wir haben also eine Zahlungsmatrix erhalten. Wenn wir sie für den Spieler spaltenweise lösen, erhalten wir eine Lösung für unser Problem, d.h. zu welchem Zeitpunkt und mit welchem Volumen wir eine Long-Position eingehen sollten. Wie bereits erwähnt, handelt es sich dabei um eine mathematische Schätzung des ungünstigsten Falles - den Preis des Spiels.
Da wir wissen, was die Entscheidung für das Handelssystem des Händlers bedeutet, stellt sich die Frage, was genau die Entscheidung in Bezug auf den Markt bedeutet, d.h., dass der Spieler auch einige Werte in dieser Richtung erhält. Genau diese Werte sind für den Markt am profitabelsten und für den Händler, der eine bullische Strategie verfolgt, nachteilig. D.h. bei der Auswahl einer Zahlungsmatrixlösung in Bezug auf den Markt haben wir die größten Spannen für die Tage mit einem Abwärtstrend gewählt, während wir für die Balken mit einem Aufwärtstrend die größten Spannen gewählt haben. Daraus ergibt sich ein Kompromiss für den Markt und den Händler, der besagt, dass sich die erwartete Auszahlung nicht verschlechtern kann, wenn der Händler an der optimalen Strategie festhält.
Hinweis: Wenn ein Händler eine Strategie für den Markt auswählt, die bullisch ist, werden die Bereiche für Baisse-Tage vergrößert und für Hausse-Tage vergrößert oder ganz entfernt (Nullbereich). Das heißt, wenn die untersuchten historischen Daten eine eindeutige Aufwärtsbewegung des Preises zeigen, dann wird bei der Neuberechnung unter Berücksichtigung der Abwärts- und Aufwärtsspannen der einzelnen Sitzungen für die Marktstrategie eine Abwärtsbewegung prognostiziert. Das heißt, dass sich die Strategie des Händlers in diesem Fall auf die Suche nach den am häufigsten auftretenden zinsbullischen Kerzen während der Baissephasen beschränkt. Aber keine Sorge, wenn solche Kerzenständer hinreichend wahrscheinlich sind, werden wir bestimmt eine gute Lösung finden.
Um möglichst sicher zu sein, müssen wir die mathematische Erwartung berechnen, d. h. den Preis des Spiels unter Berücksichtigung beider Strategien. Wenn es positiv ist, ist es das, was Sie brauchen, so dass die schlechteste Schätzung ein garantierter Gewinn ist.
Was aber ist zu tun, wenn die mathematische Erwartung unter Berücksichtigung der Händler- und Marktstrategien negativ ausfällt? Einige Leute, die schlechte Bücher gelesen haben, könnten argumentieren, dass die Strategie des Händlers in Bezug auf das Volumen gleich bleiben sollte, aber anstatt das Wertpapier zu kaufen und zu halten, sollten sie verkaufen - eine Umkehrung der Strategie. Dies sollte jedoch nicht getan werden. Warum? Denn nachdem wir die optimale Lösung für die Bullenstrategie berechnet und in eine Bärenstrategie umgewandelt haben, wird die resultierende Mindestbewertung das Maximum sein. Es kann positiv sein, aber es wird das Maximum sein, als ob wir es in unserem Terminal-Optimierer mit Trimming erhalten hätten. Und da der Markt nicht stationär ist, ist es unwahrscheinlich, dass eine solche Umkehrstrategie bis zum berechneten Maximum hält. Höchstwahrscheinlich wird sie wieder negativ werden. Denn gemäß der Strategie vor der Umkehrung wurden die größten Kaufvolumina bei Kerzen mit einem vorherrschenden Aufwärtstrend getätigt. Und wenn wir jetzt anfangen, in einer bärischen Stimmung auf bullische Kerzen zu handeln, werden die Kosten steigen und folglich wird die Wahrscheinlichkeit, in eine negative mathematische Erwartung zu geraten, zunehmen.
Ja, im Falle eines negativen erwarteten Gewinns und unter Berücksichtigung der erhaltenen Strategien müssen wir in der Tat von einer bullischen Strategie zu einer bearischen wechseln. Dabei müssen wir jedoch die gesamte Zahlungsmatrix neu berechnen, und zwar nicht für den Spieler nach Spalten, sondern für den Spieler nach Zeilen. Oder ändern Sie die Vorzeichen in allen Zellen der Matrix selbst, und dann können Sie die Spalten für den Spieler neu berechnen, d. h. den Algorithmus nicht ändern. Jetzt wird sich die Strategie ändern und die Erwartung wird sich auch ändern, nicht nur vom Vorzeichen her, sondern auch vom Wert her.
Wie erhält man Lösungen für eine bereits vorbereitete Zahlungsmatrix?
Es gibt mehrere Möglichkeiten, von denen die gängigsten sind:
1. Durch lineare Programmierung, nämlich die Simplex-Methode. Die Methode ist nicht sehr gut, da sie (je nach Implementierung) ins Stocken geraten kann, wenn die Zahlungsmatrix keine Lösungen hat, und in einigen Fällen, wenn es einen Sattelpunkt in der Zahlungsmatrix oder keine Lösung gibt (je nach Implementierung).
2. iterative Methode. Bei jedem Schritt der iterativen Methode wird die Konvergenz zu einer der möglichen Lösungen der Zahlungsmatrix erreicht. Wenn der nächste Schritt nicht eindeutig ist, wird die Wahl mit Hilfe eines Zufallsgenerators getroffen. Daher kann die Methode zu unterschiedlichen Lösungen führen, wenn dieselbe Zahlungsmatrix erneut berechnet wird. Wenn es keine Lösungen gibt oder der Preis des Spiels gleich Null ist, tendiert die Konvergenzerwartung gegen Null.
Ich persönlich verwende die iterative Methode, der Algorithmus ist unten dargestellt. Das Listing ist in Java verfasst, was die Konvertierung in C mit speziellen Dienstprogrammen oder die Neukompilierung in Maschinencode mit GCJ erleichtert. Theoretisch könnte alles sofort in MQL4 oder MQL5 geschrieben werden, aber die geringe Geschwindigkeit von MQL4 und die Fehler in MQL5 erlauben es nicht, diesen Algorithmus in den oben genannten Programmiersprachen zu verwenden.
Eine Zahlungsmatrix in Form eines Arrays wird als Eingabe für die Funktion - matrix
Die Ausgabe ist ein Array von Zahlen als Strategie des Spielers nach Spalten. Wenn es notwendig wird, die Strategie für einen Spieler zeilenweise neu zu berechnen, muss das Vorzeichen für alle Werte in allen Zellen der Zahlungsmatrix geändert werden.Die Funktion gibt auf der Konsole den aktuellen Wert des übergebenen Algorithmus (Fortschritt) in Prozent und die mathematische Erwartung, unter Berücksichtigung der optimalen Strategien für den Spieler nach Zeilen und Spalten, aus.