Ich versuche, den Wert eines Loses mit SymbolInfoDouble(Symbol(),SYMBOL_MARGIN_INITIAL) zu ermitteln, aber das Ergebnis ist =0. Können Sie mir sagen, was falsch ist?
Guten Tag! Ich versuche, eine Unterscheidung für die ausgewählte Position zu schreiben - kaufen oder verkaufen. Ich schreibe es auf diese Weise.
if (PositionGetInteger(POSITION_TYPE)== ??? {
Womit sollte ich es vergleichen? Ich kann sie in der Referenz nicht finden. Dort steht es wirklich nicht, es ist nicht false und True, eine Art ENUM_POSITION_TYPE, ich klicke darauf und der Link führt zur gleichen Tabelle.
Dimka-novitsek: Guten Tag! Ich versuche, eine Unterscheidung für eine Position zu treffen - kaufen oder verkaufen. Ich schreibe es so: Womit soll es verglichen werden? Ich kann es in der Hilfe nicht finden. Dort steht es wirklich nicht, es ist nicht false und True, es ist irgendein ENUM_POSITION_TYPE, ich klicke darauf und der Link führt zur gleichen Tabelle.
Ganz unten auf der Seite befindet sich eine Tabelle
Es tut mir leid, könnten Sie bitte ein paar Zeilen weiter oben schreiben, und sagen wir, ich habe einen Auftrag ausgewählt, nicht eine Position. Hier verwende ich die Funktion PositionGetDouble, was wird passieren? Was wird diese Funktion melden, und wird sie überhaupt etwas melden?
Dimka-novitsek: Entschuldigung, ein paar Zeilen weiter oben habe ich einen Auftrag ausgewählt, keine Position. Hier verwende ich die Funktion PositionGetDouble, was wird passieren? Was wird die Funktion melden, und wird sie überhaupt etwas melden?
Es sieht so aus, als würde man den Cursor auf die richtige Zeile bewegen. Befindet sich der Cursor bereits in der richtigen Zeile (die Situation, in der die Funktion PositionSelect(symbol) früher im Code aufgerufen wurde und true zurückgegeben hat), kann man die Funktionen PositionGetXXX oder PositionSetXXX sofort verwenden; befindet sich der Cursor in einer anderen Zeile, muss er erst positioniert werden.
Ich versuche, den Wert eines Loses mit SymbolInfoDouble(Symbol(),SYMBOL_MARGIN_INITIAL) zu ermitteln, aber das Ergebnis ist =0. Können Sie mir sagen, was falsch ist?
https://www.mql5.com/ru/forum/1111/page95#comment_14665
https://www.mql5.com/ru/forum/1111/page95#comment_14665
Guten Tag! Ich versuche, eine Unterscheidung für eine Position zu treffen - kaufen oder verkaufen. Ich schreibe es so: Womit soll es verglichen werden? Ich kann es in der Hilfe nicht finden. Dort steht es wirklich nicht, es ist nicht false und True, es ist irgendein ENUM_POSITION_TYPE, ich klicke darauf und der Link führt zur gleichen Tabelle.
Ganz unten auf der Seite befindet sich eine Tabelle
vergleichen mit
POSITION_TYPE_BUY für BUY und
POSITION_TYPE_SELL für SELL
Entschuldigung, ein paar Zeilen weiter oben habe ich einen Auftrag ausgewählt, keine Position. Hier verwende ich die Funktion PositionGetDouble, was wird passieren? Was wird die Funktion melden, und wird sie überhaupt etwas melden?
Die Funktion wird etwas ausgeben, aber es gibt keine Garantie. Bevor Sie die Funktion PositionGetDouble verwenden, sollten Sie PositionSelect(symbol) verwenden.
wenn es nicht vorher aufgerufen wurde.
Es sieht so aus, als würde man den Cursor auf die richtige Zeile bewegen. Befindet sich der Cursor bereits in der richtigen Zeile (die Situation, in der die Funktion PositionSelect(symbol) früher im Code aufgerufen wurde und true zurückgegeben hat), kann man die Funktionen PositionGetXXX oder PositionSetXXX sofort verwenden; befindet sich der Cursor in einer anderen Zeile, muss er erst positioniert werden.
DANKESCHÖN!!!