Probleme mit HistoryDealGetString() und HistoryDealGetInteger()

 

Laut Dokumentation sollte das funktionieren, mach ich da was falsch?

symbol ist string,

ticket ist ulong.

Variante 1: symbol=HistoryDealGetString(ticket,POSITION_SYMBOL);

Variante 2: HistoryDealGetString(ticket,POSITION_SYMBOL,symbol);

Dokumentation:

1. Immediately returns the property value.

string  HistoryDealGetString(
   ulong                      ticket_number,     // Ticket
   ENUM_DEAL_PROPERTY_STRING  property_id        // Property identifier
   );

2. Returns true or false, depending on the success of the function. If successful, the value of the property is placed into a target variable passed by reference by the last parameter.

bool  HistoryDealGetString(
   ulong                      ticket_number,     // Ticket
   ENUM_DEAL_PROPERTY_STRING  property_id,       // Property identifier
   string&                    string_var         // Here we accept the property value
   );


Das meldet der Compiler:


Ich finde die Ursache einfach nicht.

Simples Codebeispie hab ich drangehängt.

Die Funktion 'allow_open' soll prüfen ob bei offenen und/oder geschlossenen Positionen eine gewisse Zeitspanne (in Bars) vergangen ist.

Account ist HEDGING/MT5. Auf einem NETTING Account funktioniert das so nicht.

Oder ist das ein bug?

Bitte schaut euch das an, danke im vorraus.

Dateien:
Test.mq5  10 kb
 

Das Problem ist "POSITION_SYMBOL"!

Das gilt nicht für Deals, deren Enum beginnen alle mit DEAL_.... (siehe hier: https://www.mql5.com/de/docs/trading/historydealgetstring).

Ich glaube, wenn Du "DEAL_SYMBOL" nimmst passt's.

Ich hatte auch schon solche Probleme, Du bist da nicht alleine :)

Dokumentation zu MQL5: Handelsfunktionen / HistoryDealGetString
Dokumentation zu MQL5: Handelsfunktionen / HistoryDealGetString
  • www.mql5.com
2. Gibt true oder false zurück abhängig davon, ob die Funktion erfolgreich durchgeführt wird. Im Erfolgsfall wird der Wert der Variable in die Empfangsvaiable gesetzt, die durch Referenz vom letzten Parameter übertagen wird.   Man...
 
Carl Schreiber:

Das Problem ist "POSITION_SYMBOL"!

Das gilt nicht für Deals, deren Enum beginnen alle mit DEAL_.... (siehe hier: https://www.mql5.com/de/docs/trading/historydealgetstring).

Ich glaube, wenn Du "DEAL_SYMBOL" nimmst passt's.

Ich hatte auch schon solche Probleme, Du bist da nicht alleine :)

Calli, du bist der Größte! Da hab ich in der dok nicht genau genug gelesen. Jetzt funzts! Danke!
Grund der Beschwerde: