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: 43256
Benutzer: 7.220
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: JosephTK
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 10 Stunden
- JosephTK
vor 2 Tagen
- Hopfen&Mal...
vor 3 Tagen
- frankmicha...
vor einer Woche
- DFeck
vor einer Woche
- bb1107

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

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 31.07.20
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard Variablenauflösung für Programm

Ich kann meinen Indikator einfach nicht dazu bringen, einen extern einzugebenden Pfad zu einem anderen Indikator korrekt aufzulösen.
Beide Indikatoren liegen zusammen in demselben Unterverzeichnis /AVT/FX-Pairs/PairStrength.

Code:
extern string OwnEmaIndi = "\\AVT\\FX-Pairs\\PairStrength\\MA-HMA.EMA.ex4"; //alt. indi
Derzeit ist die aufrufende iCustom Zeile so:
Code:
CurEma1=iCustom(SSpsTable[i].SpsPairName,TrendPeri,OwnEmaIndi, 0,0);
Aber anstatt die Unterordner mit einzubeziehen, kriege ich die Meldung:
cannot open file: 'C:\Users\AVT\MT4\MQL4\indicators\EA-HMA.EMA.ex4'

Ich habe schon versucht, über den Pfad des laufenden Indikators (mit einfachem Ersetzen des Namens) die korrekte Auflösung zu kriegen, da stellt er dann aber den gesamten Pfad zweimal hintereinander - was auch wieder falsch ist.

Ganz abgesehen davon, daß es den in der Meldung beschriebenen Namen gar nicht gibt - weder im Verzeichnis, noch im gesamten Code!! Ich habe also keine Ahnung, wie der überhaupt auf solch eine Zeichenfolge kommt.
Nun bin ich mal wieder ratlos und hoffe auf Eure Tips.
Danke. AVT
  #2 (permalink)  
Alt 31.07.20
Benutzerbild von Indikator-Trading
Premium Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 345
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Du kannst ".ex4" weglassen und ersetze dein "\\" gegen "/" oder "//"

Bei mir hat folgendes ohne Probleme funktioniert:

double Test1 = iCustom(Symbol(),0,"00_Entry//Aroon",20,0,1);
double Test2 = iCustom(Symbol(),0,"00_Entry//Aroon.test.ex4",20,0,1);
double Test3 = iCustom(Symbol(),0,"00_Entry//Aroon.test",20,0,1);
double Test4 = iCustom(Symbol(),0,"00_Entry/Aroon.test.ex4",20,0,1);
double Test5 = iCustom(Symbol(),0,"00_Entry/Aroon.test",20,0,1);

Geändert von Indikator-Trading (31.07.20 um 22:51 Uhr)
  #3 (permalink)  
Alt 01.08.20
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Indikator-Trading Beitrag anzeigen
Du kannst ".ex4" weglassen und ersetze dein "\\" gegen "/" oder "//"

Bei mir hat folgendes ohne Probleme funktioniert:

double Test1 = iCustom(Symbol(),0,"00_Entry//Aroon",20,0,1);
double Test2 = iCustom(Symbol(),0,"00_Entry//Aroon.test.ex4",20,0,1);
double Test3 = iCustom(Symbol(),0,"00_Entry//Aroon.test",20,0,1);
double Test4 = iCustom(Symbol(),0,"00_Entry/Aroon.test.ex4",20,0,1);
double Test5 = iCustom(Symbol(),0,"00_Entry/Aroon.test",20,0,1);
Danke Indikator-Trading!
Wenn ich den Pfad direkt in iCustom einsetze, ist ja auch alles ok. Aber ich will eben nicht irgendwo was hardcodieren, sondern per User Eingabe veränderlich machen - daher die externe Variable. Und diese Variable korrekt aufzulösen ist das Problem.
AVT
  #4 (permalink)  
Alt 01.08.20
Benutzerbild von Indikator-Trading
Premium Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 345
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Das hier funktioniert bei mir:

Zitat:

extern string OwnEmaIndi = "00_Entry//Aroon";

int OnInit()
{
double Test =iCustom(Symbol(),0,OwnEmaIndi,20,0,1);
Comment(DoubleToStr(Test));
return(INIT_SUCCEEDED);
}
Hier noch etwas, was ich nicht ganz verstehen kann:

Dein Pfad:
Zitat:
/AVT/FX-Pairs/PairStrength
Deine Fehlermeldung:
Zitat:
'C:\Users\AVT\MT4\MQL4\indicators\EA-HMA.EMA.ex4'
iCustom durchsucht ja eigentlich den Indikatorpfad von deiner MT4-Installation.
Wo anders wirst du damit wohl leider keine Indikatoren ausladen können, das habe ich auch schon probiert. Auch die MQL4 Dokumentation zeigt einem da keinen Lösungsweg auf.
Ist es also doch evtl. einfach nur ein Fehler in dem Pfad, welchen du angibst. Eigentlich müsste sonst deine Fehlermeldung z. B. eher so aussehen:

2020.08.01 23:04:16.976 cannot open file 'C:\Users\AVT\AppData\Roaming\MetaQuotes\Terminal\ 1DAFD9A7C67DC84FE37EHH1FCTE51F45\MQL4\indicators\AVT\FX-Pairs\PairStrength\MA-HMA.EMA.ex4

Generell würde ich aber keine Indikatoren/EAs mit Punkt im Namen trennen. Gleichwohl lief beides bei mir ohne Probleme, dennoch eher unschön, vor allem wenn man noch wie ich aus der DOS-Ära stammt.
  #5 (permalink)  
Alt 02.08.20
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Indikator-Trading Beitrag anzeigen
Das hier funktioniert bei mir:
Code:
extern string OwnEmaIndi = "00_Entry//Aroon";
Nu geht es - die "Vorwärts-Slashes" funktionieren, obwohl die Dok "Rückwärts-Slashes" angibt. Rückwärts ist für einen Unixer sowieso völlig daneben.

Zitat:
Hier noch etwas, was ich nicht ganz verstehen kann: ...
Dein Pfad: ...
Deine Fehlermeldung: ...
Das liegt daran, daß ich beide (terminal und editor) mit "-portable" aufrufe; damit landet alles im Installationsverzeichnis und ich muß nicht das ganze System nach zugehörigen Dateien durchforsten.

Danke noch mal für Deine Hilfe. AVT
Thema geschlossen

Lesezeichen

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 08:40 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.
-----------------------------------------------------------------------------------------------------------------------------