PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : String-Variablen mit Globals übergeben



vanessa6190
13:46,
Kann mir jemand sagen, ob Sie String-Variablen mit globalen Variablen übergeben können? Ich weiß, dass Sie andere Variablen wie Integer, Doubles und Boolean übergeben können, und müssen nichts extra hinzufügen, aber wenn ich versuche, eine Zeichenfolge zu übergeben, bekomme ich nur eine Menge Nullen.

Irgendwelche Ideen?

Vielen Dank.

edyy95
21:47,
Es scheint nicht ..... selbst wenn Sie versuchen, es manuell in der Plattform zu erstellen, akzeptiert es keine Alpha-Zeichen. Ich denke, der nächstbeste wäre, entweder in eine Datei zu schreiben, oder, wenn es eine wirklich kurze Zeichenfolge ist, könnten Sie jeden Buchstaben gemäß seinem ASCII-Code konvertieren und speichern.

vanessa6190
23:08,
Eigentlich wollte ich eine Reihe von Zahlen (Ganzzahlen und Doppelzahlen) erzeugen, die durch Leerzeichen getrennt sind, dann gebe ich sie als globale Zahl weiter und wandle sie in die entsprechenden Zahlen um, sobald sie ihr Ziel erreicht haben. Ich denke jetzt vielleicht, da es nur vier oder fünf Zahlen gibt, könnte ich eine for-Anweisung einrichten und jedem Wert eine Variable zuweisen und sie sequentiell durch ein globales weiterleiten. Oder, wenn nichts anderes, ein separates globales für jedes einzelne erstellen, obwohl ich nicht sicher bin, dass ich das tun möchte? Ich habe wahrscheinlich sechs oder sieben Diagramme geöffnet, oder mehr, mit vier oder fünf Globals, die jedem zugewiesen sind, und es könnte ein bisschen verwirrend werden. Oder vielleicht könnte ich eine Zeichenfolge erstellen, die mit der Zahl 1 beginnt, und alle anderen Variablen hinzufügen, zumindest die ersten vier, die nur eine Ziffer sein sollten, so dass es wie eine tatsächliche ganze Zahl aussieht. Dann könnte ich das in eine ganze Zahl umwandeln und sie als eine globale übergeben und den Prozess am anderen Ende umkehren. Ich denke, ich könnte das zuerst versuchen ... Hey, danke.

edyy95
00:29,
Hallo, ich würde einfach die globale Variable (Gvar) -Route gehen ...... Sie können so etwas wie 10 000 Gvars haben, also wenn Sie die verschiedenen Instanzen des EA verfolgen können, sollte es kein Problem geben, als zu speichern viele Variablen, wie Sie möchten. Ich verwende normalerweise eine Routine, die jeder Instanz eines EA eine eindeutige MagicNumber zuweist, basierend auf Währungspaar, Zeitrahmen, EA-Kennung und eindeutiger EA-Instanz-ID. Sie können eine ähnliche Struktur verwenden, so dass jedes Diagramm (EA-Instanz) seine eigenen Gvars über seine eigene MagicNumber verfolgen kann. So zum Beispiel: - EA 1 EURGBP MagicNumber = 15645 gt; gt; gt; Gvar name = string 15645_var1, 15645_var2,15645_var3, ......... EA 1 EURUSD MagicNumber = 10222 gt; gt; gt; Gvar name = string 10222 _var1, 10222 _var2,10222 _var3, ........

vanessa6190
01:50,
Ich habe es tatsächlich in der zweiten Instanz, die ich oben erwähnt habe, funktionieren lassen, und es funktioniert gut. Es geht jedoch nicht auf das eigentliche Problem ein, auf das ich hier kurz eingegangen bin. Ich habe versucht, mit dieser TradeSwitch DLL zwischen zwei verschiedenen Accounts hin- und herzuwechseln ... die Art und Weise, wie der Code geschrieben wurde, wurde nur so eingerichtet, dass er in einer Richtung kommuniziert. Also, ich dachte, wenn ich die EA (bereitgestellt) modifiziert, um nach Globals auf dem bestimmten Konto zu suchen, das sendet (und auf dem anderen Konto empfängt), anstatt Informationen über ein bestimmtes Symbol () zu senden, dann könnte ich jedes mögliche Übersprechen eliminieren, wie beide Konten senden und empfangen. Wie ich schon sagte, wenn es nur auf eine Art kommuniziert, funktioniert es großartig. Aber sobald ich den zweiten Account eingehe, bin ich tot im Wasser.

EA 1 EURGBP MagicNumber = 15645 gt; gt; gt; Gvar name = string 15645_var1, 15645_var2,15645_var3, ......... EA 1 EURUSD MagicNumber = 10222 gt; gt; gt; Gvar name = Zeichenfolge 10222 _var1, 10222 _var2,10222 _var3, ........
Ja, das ist genau das Richtige für Globals, da es sozusagen ermöglicht, Variablen im laufenden Betrieb zu erstellen.

ODITtmio
03:10,
Warum erforschst du nicht die Verwendung von DLLs und lassst es einfach mit all dem Übersprechen und den globalen Variablen usw. umgehen, anstatt zu versuchen, es in mt4 zu schüren?

vanessa6190
04:31,
Natürlich vorausgesetzt, dass Sie wissen, was Sie tun. Da ich mehr als eine Instanz des EA verwende, auf den ich dies anwende (derzeit neun für jedes Konto), dachte ich mir, dass es für jeden EA am einfachsten wäre, ein globales Diagramm zu erstellen und ein einzelner EA, der nach Globalen sucht und mit der DLL eine Schnittstelle bildet, um die Information an das andere Konto zu übertragen und umgekehrt. Ich denke, das ist ziemlich einfach genug. Obwohl, wenn ich eine Möglichkeit finden könnte, die Informationen von jedem EA (jede Instanz) direkt an die DLL zu senden, ohne globale Variablen zu verwenden, könnte es einfacher sein. Tatsächlich habe ich zuerst so etwas probiert, konnte es aber nicht zur Arbeit bringen. Ich sollte wahrscheinlich zurückgehen und noch einmal nachsehen.