Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Продавай продукты через Маркет и отслеживай статистику продаж
Василий Пушкарев
128
Василий Пушкарев 2014.06.27 13:44 

Во вложении простенький индикатор с выводом в принт таких input-переменных:

input string   vol_Str   = "Строка из индикатора";
input datetime vol_D     = D'27.06.2014';                // 1403827200
input datetime vol_dt    = 1403827200;                   // D'27.06.2014'
input long     vol_Long  = 1000;                            
input int      vol_Int   = 1000;
input bool     vol_Bool  = false;

 Через скрипт передаю другие значения input-переменным: 

input string   vol_Str   = "Строка из скрипта";
input datetime vol_D     = D'01.01.1970';             
input datetime vol_dt    = 0;
input long     vol_Long  = 1;                            
input int      vol_Int   = 1;
input bool     vol_Bool  = true;

Вызываю в скрипте iCustom, не могу понять, почему в индикатор передаются обновленные параметры всех типов, кроме даты?

Синими линиями обозначил значения, которые переданы через скрипт и в индикаторе через Print выдаются измененные. Красными линиями отмечена дата, ее значение не меняется.

 

 Пока приходится использовать строковые значения дат и в индикаторе преобразовывать через StringToTime().

 Но хотелось бы узнать, это особенность типа datetime? Или баг iCustom? Как-то можно менять значение типа datetime в индикаторе из советников/скриптов?

Файлы:
Victor Nikolaev
Модератор
14028
Victor Nikolaev 2014.06.27 14:59  
А зачем такой изощренный садо устраивать?
Василий Пушкарев
128
Василий Пушкарев 2014.06.27 15:56  

Есть пользовательский индикатор, который рассчитывает по истории баланс, эквити, залог, уровень залога. В нем же задается глубина расчета. 

В рабочий скрипт, который логинится на разные счета и собирает требуемую информацию, нужно вытягивать в т.ч. и данные из такого пользовательского индикатора. Хочу передать глубину расчета по дате. 

Вот, допустим, человеку для чего-то  требовалось передавать дату через iCustom и здесь тоже. Смею предположить кому-нибудь может понадобиться и в тестере прогнать советник, использующий индикатор, который рассчитывает данные на промежутках. Как по мне, для оптимизации удобней было бы использовать тип datetime, а не строки с преобразование в дату.

Victor Nikolaev
Модератор
14028
Victor Nikolaev 2014.06.27 16:03  
Зачем? Вы и так можете брать нужные данные с нужной глубиной, которую задаете в скрипте
Василий Пушкарев
128
Василий Пушкарев 2014.06.27 16:18  
Как? Задаю в скрипте нужную дату, а индикатор расчитывает только по той дате, которая в нем задана по умолчанию. На скрине выше через скрипт даю 0, а в индикаторе остается заданная в нем дата 27.06.2014 (или 1403827200), хотя должна стать 01.01.1970.
Ihor Herasko
8418
Ihor Herasko 2014.06.27 17:03  
На мой взгляд, баг. Пишите в сервисдеск, проблему Вы показали наглядно.
Василий Пушкарев
128
Василий Пушкарев 2014.06.27 17:18  
Scriptong:
На мой взгляд, баг. Пишите в сервисдеск, проблему Вы показали наглядно.

Хорошо, спасибо. Обращусь в сервисдеск.
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий