biraz daha iyi açıklayayım: CVS dosyasından okuyan ve değerleri bir alt pencerede çizen bir göstergeye ihtiyacım var, CVS virgülle ayrılmış 2 değere sahip olacak, ilk değer tarih ve ikincisi gerçek değer göstergenin çizilmesi gerektiğini.
biraz daha iyi açıklayayım: CVS dosyasından okuyan ve değerleri bir alt pencerede çizen bir göstergeye ihtiyacım var, CVS virgülle ayrılmış 2 değere sahip olacak, ilk değer tarih ve ikincisi gerçek değer göstergenin çizilmesi gerektiğini.
örneğin
CVS şöyle görünür:
Zaman değeri
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
gösterge, değeri tarihe göre çizecektir
umarım şimdi biraz daha açıktır..
Yardımın için teşekkürler arkadaşım!
Şimdiye kadar başardığım şey bu:
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);
}
Neden dt[c] yazdırırsam hep aynı değeri döndürdüğünden emin değilim.. döngünün her yinelemesinde arr[0] değişse bile zaman asla değişmez gibi..
bundan sonra o zamanla bara değeri atamalıyız..ama takıldım..
biraz daha iyi açıklayayım: CVS dosyasından okuyan ve değerleri bir alt pencerede çizen bir göstergeye ihtiyacım var, CVS virgülle ayrılmış 2 değere sahip olacak, ilk değer tarih ve ikincisi gerçek değer göstergenin çizilmesi gerektiğini.
örneğin
CVS şöyle görünür:
Zaman değeri
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
gösterge değeri tarihe göre çizecektir
umarım şimdi biraz daha açıktır..
Yardımın için teşekkürler arkadaşım!
Şimdiye kadar başardığım şey bu:
Sorunu çözdüğümü boşver... SrtToTime yalnızca şu biçimdeki dizeyi kabul ediyor: "yyyy.mm.dd hh:mi" bu, "yyyy.mm.dd hh.mi" yerine bu biçimde bir CSV yüklediğim anlamına geliyor " ve belli ki bana bir hata veriyordu.. neyse çözdüm!!
Merhaba arkadaşlar ve kod guruları,
bir CSV dosyasından kendi değerlerini çizen basit bir gösterge arıyorum. Birisi lütfen bana yardım edebilir mi?
Şimdiden teşekkürler!
"Kendi değeri" ne anlama geliyor?
teşekkürler mladen,
biraz daha iyi açıklayayım: CVS dosyasından okuyan ve değerleri bir alt pencerede çizen bir göstergeye ihtiyacım var, CVS virgülle ayrılmış 2 değere sahip olacak, ilk değer tarih ve ikincisi gerçek değer göstergenin çizilmesi gerektiğini.
örneğin
CVS şöyle görünür:
gösterge değeri tarihe göre çizecektir
umarım şimdi biraz daha açıktır..
Yardımın için teşekkürler arkadaşım!
Sevgili arkadaşım,
kodlamaya ihtiyacım var,
mum kapanır, eğer mum YUKARI ise, o zaman YUKARI uyarır ve mum AŞAĞI ise, herhangi bir zaman diliminde AŞAĞI uyarır
varsa lütfen benimle paylaşın,
şimdiden teşekkürler,
- şaka yapmak
teşekkürler mladen,
biraz daha iyi açıklayayım: CVS dosyasından okuyan ve değerleri bir alt pencerede çizen bir göstergeye ihtiyacım var, CVS virgülle ayrılmış 2 değere sahip olacak, ilk değer tarih ve ikincisi gerçek değer göstergenin çizilmesi gerektiğini.
örneğin
CVS şöyle görünür:
Zaman değeri
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
gösterge, değeri tarihe göre çizecektir
umarım şimdi biraz daha açıktır..
Yardımın için teşekkürler arkadaşım!
Şimdiye kadar başardığım şey bu:
AtApi:
teşekkürler mladen,
biraz daha iyi açıklayayım: CVS dosyasından okuyan ve değerleri bir alt pencerede çizen bir göstergeye ihtiyacım var, CVS virgülle ayrılmış 2 değere sahip olacak, ilk değer tarih ve ikincisi gerçek değer göstergenin çizilmesi gerektiğini.
örneğin
CVS şöyle görünür:
Zaman değeri
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
gösterge değeri tarihe göre çizecektir
umarım şimdi biraz daha açıktır..
Yardımın için teşekkürler arkadaşım!
Şimdiye kadar başardığım şey bu:
merhaba
bay mladen:
yeni mt4 yapısı için güncelleyebilir
saygılarımla
Lütfen birileri bu 3 sorunu çözmeme yardım edebilir mi?
1. takip eden hatayı düzeltin
2. ikinci zaman çerçevesi filtresini kaldırın , sistem 30m sohbette çalışacaktır
3. ekli göstergeyi 1D sohbette bir filtre olarak ekleyin
@Sevgili arkadaşlar,
Benim ea aşağıdaki hatayı veriyor.
" EURUSD+,M5: OrderDelete işlevi için bilinmeyen bilet 21847676 "
Bu cümle ne anlama geliyor? Sorun nedir ve ne yapabilirim?
@Sevgili arkadaşlar,
Benim ea aşağıdaki sorunu veriyor.
" EURUSD+,M5: StringConcatenate(işlev) için bilinmeyen bilet 21847676
Bu cümle ne anlama geliyor? Sorun nedir?
Ne yapabilirim?
Silebileceği 21847676 bilet numaralı siparişi bulamadığı anlamına gelir.
Herhangi biri :
merhaba bay mladen
Bu göstergeyi bu resme benzer MTF ayrı grafiğine koymaya yardımcı olabilir misiniz?
saygınlık