Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4973
Beiträge: 43251
Benutzer: 7.219
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: Hopfen&Malz
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einem Tag
- Hopfen&Mal...
vor 2 Tagen
- frankmicha...
vor einer Woche
- DFeck
vor einer Woche
- bb1107
vor 2 Wochen
- rg-trader

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 263
Gesamt: 263
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 27.08.16
Mitglied
 
Registriert seit: Aug 2014
Beiträge: 45
knopf009 befindet sich auf einem aufstrebenden Ast
Standard Datei per #include einbinden

Hallo Trader,

ich möchte eine Datei einbinden, deren Namen dynamisch mit Variable erstellt wird bzw. die MagicNr enthält. Wie kann ich das machen?

Denn wenn ich die Doku richtig verstanden habe, wird ein bestehender, fester Name verlangt und Vars nicht akzeptiert...

VG Andreas
  #2 (permalink)  
Alt 27.08.16
Mitglied
 
Registriert seit: Apr 2014
Beiträge: 118
Trader6666 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von knopf009 Beitrag anzeigen
Hallo Trader,

ich möchte eine Datei einbinden, deren Namen dynamisch mit Variable erstellt wird bzw. die MagicNr enthält. Wie kann ich das machen?

Denn wenn ich die Doku richtig verstanden habe, wird ein bestehender, fester Name verlangt und Vars nicht akzeptiert...

VG Andreas


Hi Andreas,


also bei mir hats geklappt mit ner Variablen, probiers einfach mal mit
Code:
extern int MagicNumber = 1111;

wenn du deinen EA aufrufst, kannst du die MagicNumber beliebig festlegen und kannst so mehrere Werte mit dem gleichen EA handeln. Das is doch dein Anliegen oder?!Hatte das vor einiger Zeit probiert und hat auch geklappt, etwas tricky wirds nur wenn du dann die Posi´s via EA managen möchtest , da brauchst dann ne Variable , damit du auch die richtige Order erwischst.
  #3 (permalink)  
Alt 27.08.16
Mitglied
 
Registriert seit: Aug 2014
Beiträge: 45
knopf009 befindet sich auf einem aufstrebenden Ast
Standard

vielen Dank für deine Antwort.

Aber wie leider so oft habe ich mich etwas missverständlich ausgedrückt.

Mein Problem ist folgendes:

meinen EA lasse ich über verschiedene Symbole mit jeweils verschieden
Ein/Ausstiegsparametern laufen, die ich aktuell als externe Vars einbinde.

Wenn ich nun den EA neu initalisiere, sind diese ja natürlich bei allen Symbolen weg.

Nun muss überall wieder alle Werte eintragen, was sehr umständlich ist.

Deshalb möchte ich die spezifischen Werte per Datei einbinden.
Aber so wie ich es in der Doku gelesen (und auch ausprobiert) habe, kann man keine dynamischen Dateibezeichnungen bei #include verwenden.

Deshalb meine Frage, wer hier eine Lösung kennt...
  #4 (permalink)  
Alt 27.08.16
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von knopf009 Beitrag anzeigen
vielen Dank für deine Antwort.

Aber wie leider so oft habe ich mich etwas missverständlich ausgedrückt.

Mein Problem ist folgendes:

meinen EA lasse ich über verschiedene Symbole mit jeweils verschieden
Ein/Ausstiegsparametern laufen, die ich aktuell als externe Vars einbinde.

Wenn ich nun den EA neu initalisiere, sind diese ja natürlich bei allen Symbolen weg.

Nun muss überall wieder alle Werte eintragen, was sehr umständlich ist.

Deshalb möchte ich die spezifischen Werte per Datei einbinden.
Aber so wie ich es in der Doku gelesen (und auch ausprobiert) habe, kann man keine dynamischen Dateibezeichnungen bei #include verwenden.

Deshalb meine Frage, wer hier eine Lösung kennt...
Da haut was nicht hin. Die Werte der externen Variablen bleiben doch erhalten, auch nach eine erneuten Initialisierung.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #5 (permalink)  
Alt 28.08.16
Mitglied
 
Registriert seit: Aug 2014
Beiträge: 45
knopf009 befindet sich auf einem aufstrebenden Ast
Standard

Hi Traderdoc,

vielen Dank für deine Antwort.

Da du auf meine Frage nicht eingegangen bist, nehme ich an, die Einbindung von Dateien per #include kann nicht dynamisch erfolgen.

Besten Dank für eure Bemühungen.

VG Andreas
  #6 (permalink)  
Alt 28.08.16
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

So, wie Du bisher Deine Herausforderung dargestellt hast, braucht man dazu weder den Preprozessor-Befehl #include noch sonst eine dynamische Variante der Variablenverwaltung.
Auf jedem Chart läuft eine separate Instanz Deines EAs. Und jede einzelne Instanz hat Ihren spezifischen Variablensatz, speicherbar in eine Set-Datei und damit jederzeit wieder ladbar.
Nur noch einmal, wenn ein EA neu initialisiert wird, dann gehen keine Variablen verloren, wenn sie über extern deklariert und initialisiert wurden.

Ich verstehe demnach nicht, wie diese Werte der externen Varialblen plötzlich weg sein können!

Evtl. solltest Du nochmals die Problematik eineindeutig schildern, denn nur wenn wir die Aufgabenstellung verstehen, kann man helfen.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #7 (permalink)  
Alt 28.08.16
Mitglied
 
Registriert seit: Aug 2014
Beiträge: 45
knopf009 befindet sich auf einem aufstrebenden Ast
Standard

Ok, das leuchtet ein.

Also: nehmen wir an, ich habe 2 externe Vars:

extern int magicNr = 5000;
extern int sl;

Wenn ich jetzt verschiedene Sachen neu programmiere, dann steht nach einer erneuten Kompilierung magicnr nach wie vor bei 5000, sl aber auf 0.
(zumindest hat er es bei mir manchmal so gemacht)

Deswegen hört sich das für mich super mit der Set-Datei an...
Wo finde ich die und wie wird sie eingebunden bzw. geladen?
  #8 (permalink)  
Alt 28.08.16
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Tja!, wenn sl extern deklariert, aber nicht initialisiert wird, dann steht diese Variable wieder auf 0, wenn der EA neu initialisiert wird. Nur, warum wird dieser Variablen kein Wert zugewiesen? Selbst wenn er sich im Programm ändern sollte, würde dann nach der Neuinitailisierung wenigsten dieser Wert lt. externer Variable wieder rekonstruiert werden.

Ansonsten nach Aufrufen der Eigenschaften des EA per Tatse F7 den Wert für sl vergeben und unten das Set der Variablen abspeichern bzw. wieder laden.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #9 (permalink)  
Alt 28.08.16
Mitglied
 
Registriert seit: Aug 2014
Beiträge: 45
knopf009 befindet sich auf einem aufstrebenden Ast
Standard

vielen Dank für deine Antwort.

Manche Vars möchte ich mit keinem Wert vorbelegen, da dies u.U. zu unerwünschten Handlungen bei dem Symbol kommen kann.

Akt. läuft der EA auf ca. 80 Symbolen und wenn ich dann am WE eine neue Version aufspiele, habe ich ganz schön mit eintippen zu tun.

Deshalb möchte ich meine Symbol-spezifischen Werte zum EA gesondert speichern und beim initalisieren (oder man. Aufruf) neu laden lassen.

Kannst du mir sagen, wo ich in der Doku dazu nachlesen kann?
  #10 (permalink)  
Alt 28.08.16
Mitglied
 
Registriert seit: Aug 2014
Beiträge: 45
knopf009 befindet sich auf einem aufstrebenden Ast
Standard

...bzw. wie kann ich das SET per mql im EA aufrufen und laden?
Thema geschlossen

Lesezeichen

Stichworte
datei, datei einbinden, datei include, include, mql4, programmierung, programmierung metatrader

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +1. Es ist jetzt 16:13 Uhr.





Suchmaschine - Reisen - Wavesnode - Facebook Forum - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------