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: 4588
Beiträge: 41432
Benutzer: 6.973
Aktive Benutzer: 205
Links: 82
Wir begrüßen unseren neuesten Benutzer: chippbutty
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 4 Tagen
- chippbutty
vor 5 Tagen
- M0rtis
vor 6 Tagen
- Alexander2...
vor einer Woche
- Geldman041...
vor einer Woche
- jomaka

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 121
Gesamt: 122
Team: 0
Team:  
Benutzer:  traderdoc
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 31.07.20
AVT AVT ist offline
Premium Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 454
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
Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 140
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
Premium Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 454
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
Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 140
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
Premium Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 454
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 06:05 Uhr.





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