Вот полный код советника. Уже урезал всё лишнее. Примитивный пример.
int Handle,Qnt_Symb;
string File_Name="test.csv";
int init()
{
Handle=FileOpen(File_Name,FILE_CSV|FILE_WRITE,";");
if(Handle==-1)
{
Alert("Ошибка при открытии файла. ");
return(0);
}
return(0);
}
int start()
{
double b= Bid;
double ma_m15 = iMA(Symbol(),PERIOD_M15,14 ,0,MODE_SMA,PRICE_MEDIAN,0);
double ma_m30 = iMA(Symbol(),PERIOD_M30,14 ,0,MODE_SMA,PRICE_MEDIAN,0);
Print(" res = ",TimeToStr(TimeCurrent(), TIME_DATE | TIME_SECONDS)," ",b," ",ma_m15," ",ma_m30);
Qnt_Symb=FileWrite(Handle,TimeToStr(TimeCurrent(), TIME_DATE | TIME_SECONDS),b,ma_m15,ma_m30);
return(0);
}
int deinit()
{
FileClose(Handle);
return(0);
}
Ставлю советник на график eurusd на M15, при тестировании указываю таймфрейм=М15, модель=все тики.
Уже пробовал и руками удалять всю историю котировок, и перегрухать её.
Результат из scv файла.
2012.12.1821:57:29;1.32197;1.32268929;1.320762862012.12.1821:57:29;1.32196;1.32268929;1.320762862012.12.1821:57:30;1.32193;1.32268929;1.320762862012.12.1821:57:31;1.32192;1.32268929;1.320762862012.12.1821:57:32;1.32191;1.32268929;1.320762862012.12.1821:57:33;1.32189;1.32268929;1.32076286
Только REALTIME.
При этом в окне журана при тестировании функция Print
Print(" res = ",TimeToStr(TimeCurrent(), TIME_DATE | TIME_SECONDS)," ",b," ",ma_m15," ",ma_m30);
отрабатывает и данные выводятся
2012.12.1823:55:312012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:071.29881.29981.30012012.12.1823:55:312012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:061.29881.29981.30012012.12.1823:55:312012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:061.29881.29981.30012012.12.1823:55:312012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:051.29881.29981.30012012.12.1823:55:312012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:041.29881.29981.30012012.12.1823:55:312012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:031.29881.29981.30012012.12.1823:55:302012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:021.29891.29981.30012012.12.1823:55:302012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:011.29891.29981.30012012.12.1823:55:302012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:001.29891.29981.30012012.12.1823:55:302012.12.0300:05 CoreAlexGru EURUSD,M15: res = 2012.12.0300:05:001.29891.29981.3001
Что не так?? уже всю голову сломал. Кажется тривиальщина, может какие-то нюансы?
Вот полный код советника. Уже урезал всё лишнее. Примитивный пример.
Ставлю советник на график eurusd на M15, при тестировании указываю таймфрейм=М15, модель=все тики.
Уже пробовал и руками удалять всю историю котировок, и перегрухать её.
Результат из scv файла.
При этом в окне журана при тестировании функция Print
Print(" res = ",TimeToStr(TimeCurrent(), TIME_DATE | TIME_SECONDS)," ",b," ",ma_m15," ",ma_m30); отрабатывает и данные выводятся
Что не так?? уже всю голову сломал. Кажется тривиальщина, может какие-то нюансы?
Спасибо.