Lassen Sie mich ein bisschen besser erklären: Ich brauche einen Indikator, der aus einer CVS-Datei liest und die Werte in einem Unterfenster anzeigt. Die CVS-Datei enthält 2 durch Komma getrennte Werte, der erste Wert ist das Datum und der zweite ist der tatsächliche Wert, den der Indikator anzeigen soll.
Lassen Sie mich ein bisschen besser erklären: Ich brauche einen Indikator, der aus einer CVS-Datei liest und die Werte in einem Unterfenster anzeigt. Die CVS-Datei enthält 2 durch Komma getrennte Werte, der erste Wert ist das Datum und der zweite ist der tatsächliche Wert, den der Indikator anzeigen soll.
zum Beispiel
Der CVS sieht wie folgt aus:
Zeit,Wert
2016.10.26.21.20,127.765
2016.10.26.21.15,127.777
2016.10.26.21.10,127.777
2016.10.26.21.05,127.799
2016.10.26.21.00,127.791
2016.10.26.20.55,127.788
Der Indikator wird den Wert entsprechend dem Datum darstellen.
Ich hoffe, es ist jetzt etwas klarer...
Danke für deine Hilfe mein Freund!
Das ist, was ich bisher erreicht habe:
externstring FileName = "AUDCAD.CSV";
datetime dt[9999];
double val[9999];
string arr[2];
int h = FileOpen(FileName, FILE_CSV|FILE_READ,'~');
if (h==0) Comment("File "+FileName+" not found.");
for (int c=0; !FileIsEnding(h) && c<9999; c++) {
string tmp = FileReadString(h);
if (FileIsEnding(h)) break;
StrToStringArray(tmp,arr,",");
dt[c] = StrToTime(arr[0]); // <==== This should convert the date value (in the format of "yyyy.mm.dd hh:mi") to datatime type and assign it to the array
val[c] = StrToNumber(arr[1]); // <==== This will assign the value to the array
}
FileClose(h);
//+------------------------------------------------------------------+void StrToStringArray(string str, string &a[], string delim=",") {
//+------------------------------------------------------------------+int z1=-1, z2=0;
for (int i=0; i<ArraySize(a); i++) {
z2 = StringFind(str,delim,z1+1);
a[i] = StringSubstr(str,z1+1,z2-z1-1);
if (z2 >= StringLen(str)-1) break;
z1 = z2;
}
}
//+------------------------------------------------------------------+double StrToNumber(string str) {
//+------------------------------------------------------------------+// Usage: strips all non-numeric characters out of a stringint dp = -1;
int sgn = 1;
double num = 0.0;
for (int i=0; i<StringLen(str); i++) {
string s = StringSubstr(str,i,1);
if (s == "-") sgn = -sgn; elseif (s == ".") dp = 0; elseif (s >= "0" && s <= "9") {
if (dp >= 0) dp++;
if (dp > 0)
num = num + StrToInteger(s) / MathPow(10,dp);
else
num = num * 10 + StrToInteger(s);
}
}
return(num*sgn);
}
Ich bin mir nicht sicher, warum, wenn ich dt[c] ausdrucke , es immer den gleichen Wert zurückgibt..als ob sich die Zeit nie ändert, auch wenn sich arr[0] bei jeder Iteration der Schleife ändert...
Danach sollten wir den Wert dem Bar mit dieser Zeit zuordnen..aber ich stecke fest...
Lassen Sie mich ein bisschen besser erklären: Ich brauche einen Indikator, der aus einer CVS-Datei liest und die Werte in einem Unterfenster anzeigt. Die CVS-Datei enthält 2 durch Komma getrennte Werte, der erste Wert ist das Datum und der zweite ist der tatsächliche Wert, den der Indikator anzeigen soll.
zum Beispiel
Die CVS-Datei sieht wie folgt aus:
Zeit,Wert
2016.10.26.21.20,127.765
2016.10.26.21.15,127.777
2016.10.26.21.10,127.777
2016.10.26.21.05,127.799
2016.10.26.21.00,127.791
2016.10.26.20.55,127.788
Der Indikator wird den Wert entsprechend dem Datum darstellen.
Ich hoffe, es ist jetzt etwas klarer...
Danke für deine Hilfe mein Freund!
Das ist was ich bis jetzt erreicht habe:
Nevermind i have solved the problem....the SrtToTime only accept string with this format: "yyyy.mm.dd hh:mi" that means that i was loading a CSV with this format instead "yyyy.mm.dd hh.mi" and obviously was giving me a error.. anyway i solved!!!
Hallo Jungs und Code-Gurus,
ich bin auf der Suche nach einem einfachen Indikator, der seine eigenen Werte aus einer CSV-Datei aufzeichnet. Kann mir bitte jemand helfen?
Vielen Dank im Voraus!
Was bedeutet der "eigene Wert"?
Danke mladen,
Lassen Sie mich ein bisschen besser erklären: Ich brauche einen Indikator, der aus einer CVS-Datei liest und die Werte in einem Unterfenster anzeigt. Die CVS-Datei enthält 2 durch Komma getrennte Werte, der erste Wert ist das Datum und der zweite ist der tatsächliche Wert, den der Indikator anzeigen soll.
zum Beispiel
Der CVS sieht wie folgt aus:
der Indikator wird den Wert entsprechend dem Datum darstellen
Ich hoffe, es ist jetzt etwas klarer...
Danke für deine Hilfe, mein Freund!
Lieber Freund,
ich brauche eine Kodierung,
Kerze schließen dann, wenn Kerze ist UP dann AlarmUP und Kerze ist DOWN dann AlarmDOWN jeder Zeitrahmen
wenn Sie pls teilen Sie mich haben,
Ich danke Ihnen im Voraus,
- jesing
Danke mladen,
Lassen Sie mich ein bisschen besser erklären: Ich brauche einen Indikator, der aus einer CVS-Datei liest und die Werte in einem Unterfenster anzeigt. Die CVS-Datei enthält 2 durch Komma getrennte Werte, der erste Wert ist das Datum und der zweite ist der tatsächliche Wert, den der Indikator anzeigen soll.
zum Beispiel
Der CVS sieht wie folgt aus:
Zeit,Wert
2016.10.26.21.20,127.765
2016.10.26.21.15,127.777
2016.10.26.21.10,127.777
2016.10.26.21.05,127.799
2016.10.26.21.00,127.791
2016.10.26.20.55,127.788
Der Indikator wird den Wert entsprechend dem Datum darstellen.
Ich hoffe, es ist jetzt etwas klarer...
Danke für deine Hilfe mein Freund!
Das ist, was ich bisher erreicht habe:
AtApi:
Danke mladen,
Lassen Sie mich ein bisschen besser erklären: Ich brauche einen Indikator, der aus einer CVS-Datei liest und die Werte in einem Unterfenster anzeigt. Die CVS-Datei enthält 2 durch Komma getrennte Werte, der erste Wert ist das Datum und der zweite ist der tatsächliche Wert, den der Indikator anzeigen soll.
zum Beispiel
Die CVS-Datei sieht wie folgt aus:
Zeit,Wert
2016.10.26.21.20,127.765
2016.10.26.21.15,127.777
2016.10.26.21.10,127.777
2016.10.26.21.05,127.799
2016.10.26.21.00,127.791
2016.10.26.20.55,127.788
Der Indikator wird den Wert entsprechend dem Datum darstellen.
Ich hoffe, es ist jetzt etwas klarer...
Danke für deine Hilfe mein Freund!
Das ist was ich bis jetzt erreicht habe:
hallo
Herr mladen:
könnte es für den neuen mt4 build aktualisieren
beste Grüße
Kann mir jemand helfen, diese 3 Probleme zu beheben?
1. den Trailing-Fehler beheben
2.entfernen Sie den zweiten Zeitrahmenfilter, das System wird auf 30m Chat laufen
3.fügen Sie den beigefügten Indikator als Filter für den 1D-Chat hinzu
@Liebe Freunde,
Mein ea gibt den folgenden Fehler,.
"EURUSD+,M5: unknown ticket 21847676 for OrderDelete function"
Was bedeutet dieser Satz? Was ist das Problem und was kann ich tun?
@Liebe Freunde,
Mein ea gibt das folgende Problem.
"EURUSD+,M5: unbekanntes Ticket 21847676 für StringConcatenate(function"
Was bedeutet dieser Satz? Was ist das Problem?
Was kann ich tun?
Es bedeutet, dass es keinen Auftrag mit der Ticketnummer 218476 finden kann, den es löschen kann.
Entweder :
hallo herr mladen
könnten Sie mir helfen, diesen Indikator in einemseparaten MTF-Diagramm ähnlich diesem Bild darzustellen?
siehe