Schätzung des Margenbedarfs in MQL5 - Seite 7

 
Vladimir:

Sie verstehen, dass es nicht um den Code geht, sondern um jeden, der weiß, wie man ihn neu berechnet. Aber Sie haben die Liste der Merkmale, deren Auswirkungen Sie tatsächlich festgestellt haben, um die Volatilität erweitert. Und wenn du weiter in den Wald gehst, wirst du mehr und mehr Brennholz sammeln. Wie ist das zu berücksichtigen? Der Fall scheint ziemlich hoffnungslos zu sein...

Ich weiß gar nicht, was Sie meinen.

Das alles ist in den Handelsbedingungen, in den eigentlichen Handelsregeln, beschrieben.

Das Phänomen ist im Grunde alltäglich.

Die Berechnung ist entsprechend unterschiedlich.

Aber das Problem ist lösbar

Wie zu berücksichtigen ist - früherer Beitrag.
 
Renat Akhtyamov:

Ich weiß nicht, was Sie meinen.

Das alles ist in den Handelsbedingungen, in den eigentlichen Handelsregeln, beschrieben.

Das Phänomen ist im Grunde genommen alltäglich.

Dementsprechend ist die Berechnung unterschiedlich

Aber das Problem ist lösbar.

Ich werde versuchen, das zu erklären. Der Algorithmus sieht folgendermaßen aus: Wir beobachten mehrere Dutzend Symbole in mehreren Dutzend Maklerunternehmen. Die Schätzungen erfolgen in Stufen, die ich der Einfachheit halber so bezeichne: die erwartete Rentabilität eines Geschäfts auf der von ihm eingenommenen Marge. Sie ist für jedes Paar unterschiedlich (Symbol, DC). Und zwar nicht nur zum Zeitpunkt der Eröffnung der Transaktion. Um die Symbole und Maklerunternehmen auszuwählen, bei denen wir ein Geschäft eröffnen wollen, müssen wir diese Zahl vergleichen. Für diese Wahl müssen wir die Hebelwirkung schätzen, in welchen Grenzen sie in einem erwarteten Zeitraum vor Abschluss der Transaktion liegen wird. Schließlich müssen wir diesen Betrag zurücklegen.

Dies ist das maximale Programm. Bislang weiß ich nicht einmal, ob ich OrderCalcMargin() als Grundlage für die Schätzung der erforderlichen Marge verwenden kann. Es soll nur der Spielraum für den gegenwärtigen Moment sein. Sie sagten, wenn sich die Volatilität ändert, ändert sich auch die Hebelwirkung. Wir müssen also Statistiken sammeln - in welchen Bereichen sich die VC für jedes Symbol ändert. Oder es wird möglich sein, akzeptable Bandbreiten für diese Schwankungen zu finden. Das Schlimmste wäre, wenn sich herausstellt, dass die Hebelwirkung auf unvorhersehbare Weise variiert...

Meine Frage "Berücksichtigt OrderCheck() oder OrderCalcMargin() die in der Spezifikation angegebenen Merkmale der Hebelwirkung" ist ein Ausgangspunkt für diesen Ansatz.
 
Vladimir:

Lassen Sie mich versuchen, das zu erklären. Der Algorithmus sieht folgendermaßen aus: Mehrere Dutzend Symbole in mehreren Dutzend DCs werden überwacht. In einem bestimmten Stadium werden Schätzungen vorgenommen, ich nenne sie der Einfachheit halber die erwartete Rentabilität eines Geschäfts auf der von ihm eingenommenen Marge. Sie ist für jedes Paar unterschiedlich (Symbol, DC). Und zwar nicht nur zum Zeitpunkt der Eröffnung der Transaktion. Um die Symbole und Maklerunternehmen auszuwählen, bei denen wir ein Geschäft eröffnen wollen, müssen wir diese Zahl vergleichen. Für diese Wahl müssen wir die Hebelwirkung schätzen, in welchen Grenzen sie in einem erwarteten Zeitraum vor Abschluss der Transaktion liegen wird. Schließlich müssen wir diesen Betrag zurücklegen.

Dies ist das maximale Programm. Bislang weiß ich nicht einmal, ob ich OrderCalcMargin() als Grundlage für die Schätzung der erforderlichen Marge verwenden kann. Es soll nur der Spielraum für den gegenwärtigen Moment sein. Sie sagten, wenn sich die Volatilität ändert, ändert sich auch die Hebelwirkung. Wir müssen also Statistiken sammeln - in welchen Bereichen sich die VC für jedes Symbol ändert. Oder es wird möglich sein, akzeptable Bandbreiten für diese Schwankungen zu finden. Das Schlimmste wäre, wenn sich herausstellt, dass die Hebelwirkung auf unvorhersehbare Weise variiert...

Ich schreibe zum letzten Mal:

Lesen Sie die Handelsbedingungen eines bestimmten Maklerunternehmens und Sie werden keine Statistiken benötigen.

 
Renat Akhtyamov:

Das letzte Mal, dass ich schreibe:

Sie können die Hebelwirkung nach eigenem Ermessen ändern, und es kann sein, dass Sie für ein paar Stunden nur 20 erhalten.

//Meine Frage "Berücksichtigt OrderCheck() oder OrderCalcMargin() die in der Spezifikation angegebenen Merkmale der Hebelwirkung" ist ein Ausgangspunkt für diesen Ansatz.

Aktuell

Man sieht nie, wann eine E-Mail zur Verringerung der Hebelwirkung eintrifft, und es kann viele Faktoren geben, nicht nur bei Wahlen in den Ländern. Sie können die Hebelwirkung nach eigenem Ermessen ändern, von 100 auf 20, und das nur für ein paar Stunden.

 
Vitaly Muzichenko:

Haben Sie schon einmal ein Schreiben in der Post gesehen, in dem Sie über eine Verringerung der Hebelwirkung informiert werden, und es kann viele Faktoren geben, nicht nur bei Wahlen in Ländern. Es kann auch sein, dass Sie keinen Brief erhalten - sie ändern die Hebelwirkung nach eigenem Gutdünken, sie können von 100 auf 20 gehen, und das nur für ein paar Stunden.

Vitaly, ich habe den Tracking-Algorithmus bereits in der vorherigen Version geschrieben, ich habe ihn selbst verwendet, weil der Hebel 1:2000 war.

In den Handelsbedingungen werden die Grenzen für die Änderung der Hebelwirkung, die Bedingungen, die Zeit, die Bedingungen, unter denen die Hebelwirkung nicht geändert wird, usw. genau angegeben.

Sie können es auch spontan ändern, deshalb habe ich es ja verfolgt.

 
Vladimir:.
Meine Frage "Berücksichtigt OrderCheck() oder OrderCalcMargin() die in der Spezifikation angegebenen Merkmale der Hebelwirkung" ist ein Ausgangspunkt für diesen Ansatz.

Entschuldigung, mit Ihren eigenen Worten:

"Es geht nicht um den Code, es geht um jeden, der nachrechnen kann."

Es ist wahrscheinlich, dass Sie sich selbst auch allen zugeordnet haben.

Rechnen Sie nach und alles wird
 

Oder hat das Terminal vielleicht nicht die richtigen Informationen?
Ich habe geprüft, ob das Terminal jedes Mal eine Anfrage an den Server sendet oder ob es prüft, ob ich genügend Geld habe. Ich habe nur eine Brokerfirma im MT5 gefunden, die ihre Anfragen in zwei Zeilen mit zwei Punkten protokolliert, wenn nicht genügend Geld vorhanden ist. Vielleicht, weil von den MT5 dieses Terminal das einzige ist, das mit einem echten Konto verbunden ist, die anderen MT5 habe ich als Demo. Protokoll für 6 manuelle Handelseröffnungsversuche:

2018.07.03 04:59:35.231 Trades '3038119': Marktkauf 1,26 EURUSD.m
2018.07.03 04:59:35.331 Trades '3038119': Marktkauf 1.26 EURUSD.m [Kein Geld]
2018.07.03 05:00:51.667 Trades '3038119': Marktkauf 1,26 EURUSD.m
2018.07.03 05:00:51.747 Trades '3038119': fehlgeschlagener Marktkauf 1.26 EURUSD.m [Kein Geld]
2018.07.03 05:00:55.001 Trades '3038119': Marktkauf 1,26 EURUSD.m
2018.07.03 05:00:55.091 Trades '3038119': Marktkauf 1.26 EURUSD.m [Kein Geld]
2018.07.03 05:01:00.008 Trades '3038119': Markt verkaufen 1,26 EURUSD.m
2018.07.03 05:01:00.091 Trades '3038119': failed market sell 1.26 EURUSD.m [No money]
2018.07.03 05:01:02.911 Trades '3038119': Markt verkaufen 1.26 EURUSD.m
2018.07.03 05:01:03.007 Trades '3038119': failed market sell 1.26 EURUSD.m [No money]
2018.07.03 05:01:05.952 Trades '3038119': Markt verkaufen 1,26 EURUSD.m
2018.07.03 05:01:06.035 Trades '3038119': failed market sell 1.26 EURUSD.m [No money]

Zeitintervalle zwischen der Anforderungszeile und der Antwort "Kein Geld" (in Millisekunden): 100 80 90 83 96 87.
Außerdem beträgt der Server-Ping im Terminal 73,56 ms. Warum wartet das Terminal 80 ms oder länger, bevor es beschließt, dass das Geld nicht ausreicht? Es sieht so aus, als ob er alle Anfragen an den Server sendet, ohne zu prüfen, ob sie ausreichend sind. Warum ist das so? Ich sehe einen natürlichen Grund - das Terminal verfügt nicht über die für eine solche Prüfung erforderlichen Informationen.
Und ich war mir immer sicher, dass die Meldung "Nicht genug Geld..." vom Terminal selbst ausgegeben wird, dass es nicht nur die Entscheidungen des Servers sind.

Dennis Kirichenko scheint die präziseste Antwort auf meine Frage zu sein https://www.mql5.com/ru/forum/261955/page4#comment_7949343

Renat Akhtyamov, welche Methode schlugen Sie in https://www.mql5.com/ru/forum/261955/page2#comment_7945930"Request margin information from the server" vor? Auch wenn es eine Sekunde dauert, okay, aber auf welche Art von Anfrage an den Server beziehen Sie sich? Handelt es sich nur um den Versuch, ein voraussichtliches Geschäft zu eröffnen, für das eine vorläufige Margenschätzung vorgenommen wird?

 
Vladimir:

Oder haben Sie vielleicht nicht die richtigen Informationen in Ihrem Terminal?
Ich habe angefangen zu überprüfen, ob das Terminal die Anfrage jedes Mal an den Server sendet oder ob es die Angemessenheit der Mittel überprüft. Ich habe nur eine Brokerfirma im MT5 gefunden, die Anfragen in zwei Zeilen protokolliert und zwei Punkte bei unzureichender Deckung anzeigt. Vielleicht, weil von den MT5 dieses Terminal das einzige ist, das mit einem echten Konto verbunden ist, die anderen MT5 habe ich als Demo. Protokoll für 6 manuelle Handelseröffnungsversuche:

2018.07.03 04:59:35.231 Trades '3038119': Marktkauf 1,26 EURUSD.m
2018.07.03 04:59:35.331 Trades '3038119': Marktkauf 1.26 EURUSD.m [Kein Geld]
2018.07.03 05:00:51.667 Trades '3038119': Marktkauf 1,26 EURUSD.m
2018.07.03 05:00:51.747 Trades '3038119': fehlgeschlagener Marktkauf 1.26 EURUSD.m [Kein Geld]
2018.07.03 05:00:55.001 Trades '3038119': Marktkauf 1,26 EURUSD.m
2018.07.03 05:00:55.091 Trades '3038119': Marktkauf 1.26 EURUSD.m [Kein Geld]
2018.07.03 05:01:00.008 Trades '3038119': Markt verkaufen 1,26 EURUSD.m
2018.07.03 05:01:00.091 Trades '3038119': failed market sell 1.26 EURUSD.m [No money]
2018.07.03 05:01:02.911 Trades '3038119': Markt verkaufen 1.26 EURUSD.m
2018.07.03 05:01:03.007 Trades '3038119': failed market sell 1.26 EURUSD.m [No money]
2018.07.03 05:01:05.952 Trades '3038119': Markt verkaufen 1,26 EURUSD.m
2018.07.03 05:01:06.035 Trades '3038119': failed market sell 1.26 EURUSD.m [No money]

Zeitintervalle zwischen der Anforderungszeile und der Antwort "Kein Geld" (in Millisekunden): 100 80 90 83 96 87.
Der im Terminal angezeigte Ping zum Server beträgt 73,56 ms. Warum wartet das Terminal 80 ms oder länger, bevor es beschließt, dass das Geld nicht ausreicht? Es sieht so aus, als ob er alle Anfragen an den Server sendet, ohne zu prüfen, ob sie ausreichend sind. Warum ist das so? Ich sehe einen natürlichen Grund - das Terminal verfügt nicht über die für eine solche Prüfung erforderlichen Informationen.
Und ich war mir immer sicher, dass die Meldung "Nicht genug Geld..." vom Terminal selbst ausgegeben wird, dass es nicht nur die Entscheidungen des Servers sind.

Dennis Kirichenko scheint meine Frage am treffendsten beantwortet zu haben https://www.mql5.com/ru/forum/261955/page4#comment_7949343

Renat Akhtyamov, welche Methode schlugen Sie in https://www.mql5.com/ru/forum/261955/page2#comment_7945930"Request margin information from the server" vor? Auch wenn es eine Sekunde dauert, okay, aber auf welche Art von Anfrage an den Server beziehen Sie sich? Handelt es sich nur um den Versuch, ein voraussichtliches Geschäft zu eröffnen, für das eine vorläufige Margenschätzung vorgenommen wird?

Ich verstehe Sie natürlich.

Am Anfang habe ich einfache Dinge nicht sofort verstanden

Hier noch einmal die Marge für 1 zu verkaufendes Los

OrderCalcMargin(ORDER_TYPE_SELL,_Symbol,1,BID,Mgn)

Aber für den Kauf

OrderCalcMargin(ORDER_TYPE_BUY,_Symbol,1,ASK,Mgn)

Die Hebelwirkung ist das Verhältnis zu ihr, nicht mehr als

k=100/Leverage

wie diese

Und Ihr Logbuch sagt Ihnen, dass Sie kein Geld haben und keine kostenlose Bestellung aufgeben können.

Sie können einen Auftrag mit Demo-Geld eröffnen. Soweit ich weiß, haben Sie aber auch kein Demogeld.

Der Saldo ist gleich Null, nicht wahr?
 
Leute, gebt mir die Adresse eines Brokers, bei dem sich die Hebelwirkung für ein Symbol oder die Hebelwirkung eines Kontos häufig ändert. Oder zumindest für einige Symbole separate Hebelbedingungen.
 

ForexClub.

Überprüfung der Marge im Verhältnis zu diesem Los mit ::OrderCalcMargin(). Realkonto, Hebelwirkung 1:500.

EURUSDLosPreisVolumenwert, $Marge, $Theoretische Hebelwirkung
100 0001.001.16716116 716233.43500

11.001.167161 283 8762 567.75500

51.001.167165 952 51611 905.03500

101.00
1.1671611 788 31623 576.63500


Es zeigt sich, dass sich die Hebelwirkung nicht ändert, wenn das Handelsvolumen steigt, was nicht der Spezifikation entspricht.