Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 11.05.20
LQK LQK ist offline
Mitglied
 
Registriert seit: Nov 2019
Beiträge: 76
LQK befindet sich auf einem aufstrebenden Ast
Standard Liste mit allen Ausprägungen von SYMBOL

Hallo,

ich arbeite gerade an einem EA.

Die Methodensignatur von OrderSend() erfordert ja u.a. die Übergabe eines Wertes für SYMBOL.

Ich wusste zuerst nicht, was mit SYMBOL gemeint ist. Eine Suche hat dann ergeben, dass SYMBOL anscheinend ein Text-String ist, welcher angibt welches Wertpapier gerade gehandelt wird.

Bei mir sollen aktuell CFD gehandelt werden. Allerdings ist "CFD" vielleicht nicht das Symbol das ich brauche (gibt ja vielleicht mehrere unterschiedliche CFD) und überdies kann es ja sein, dass ich irgendwann mal was anderes handeln will.

In einem Beispiel-EA den ich gefunden habe, wurde das so gelöst, dass anstelle eines konkreten Werts für Symbol einfach nur "Symbol()" übergeben wurde. Symbol() gibt offenbar das Symbol zurück, das zuletzt gehandelt wurde.

Eine testweise Anwendung des u.g. Codes hat bei mir USDCHF als Wert für Symbol ausgegeben (also nicht den von mir erwünschte Symbol für CFD, d.h. in dem Fall hätte die Anwendung von Symbol() zu einem unerwünschten Resultat geführt):

Code:
void OnStart()
  {
   test5();
 
}


void test5()
  {

   Print(Symbol());

}

Somit ist die Lösung, Symbol() als Wert in die Methodensignatur von
OrderSend() zu übergeben, vielleicht nicht unbedingt immer die beste oder die einzige mögliche Lösung. Z.B. könnte es passieren, dass, wie im vorliegenden Fall, ein falscher Wert übergeben wird. Überdies wird so vereitelt, dass Z.B. Symbol als Input-Variable verwendet werden kann.

--

Ich würde daher lieber nicht mit Symbol() arbeiten, sondern direkt den Text-String eingeben, der mein zu handelndes Wertpapier codiert. Womöglich auch unter Verwendung einer Input-Variablen.

Um das zu bewerkstelligen habe ich, auch in der MQL-Reference, nach einer Liste mit allen möglichen Werten für SYMBOL gesucht. Bisher habe ich eine solche Liste aber nicht gefunden.

Womöglich habe ich nur falsch gesucht?

Wo könnte ich eine solche Liste finden? Oder wo ist ggf. mein Denkfehler?

Ich bedanke mich für jeden konstruktiven Beitrag!

Grüße ,
LQK