Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
тогда б сформулировать в СД просьбу так:
"Добавить вторую форму вызова iCustom, чтоб передавался массив MqlParam. По аналогии с IndicatorCreate"
Думаю такое им будет понятней. И не требовать каких то хендлов
Да, с формулировками нужно быть точным. Иначе сразу лесом отправят. Ибо просить хендлы в МТ4 безумство, т.к. архитектуру МТ4 перекраивать придется.
з.ы. Но как оффтоп, добавлю что работать с хендлами все-таки удобней. Больше возможностей и больше гибкости. Жаль большинство этого не понимает.
Написал подобие IndicatorCreate для 4ки.
Первая версия добавляла 6 12 мегабайт(!) к размеру скомпиленного кода и загружалась в терминал почти минуту )) после того как загрузится все работает шустро.
Сейчас скрипт приведенный ниже весит 1мб 8мб и загружается около 7 секунд на моей i7ке
И компилится около 4 секунд
void OnStart()
{
double v1 = iCustom(Symbol(), Period(), "Alligator", 40, 25, 25, 15, 15, 8, 0, 1);
double v2 = iCustom(Symbol(), Period(), "Alligator", 40, 25, 25, 15, 15, 8, 1, 1);
double v3 = iCustom(Symbol(), Period(), "Alligator", 40, 25, 25, 15, 15, 8, 2, 1);
MqlParam params[6];
params[0].type = TYPE_INT; params[0].integer_value = 40;
params[1].type = TYPE_INT; params[1].integer_value = 25;
params[2].type = TYPE_INT; params[2].integer_value = 25;
params[3].type = TYPE_INT; params[3].integer_value = 15;
params[4].type = TYPE_INT; params[4].integer_value = 15;
params[5].type = TYPE_INT; params[5].integer_value = 8;
ICustom* gator = CreateCustom(Symbol(), Period(), "Alligator", params);
// ICustom* gator = CreateCustom(Symbol(), Period(), "Alligator", 40, 25, 25, 15, 15, 8);
double s1 = gator.Value(0, 1);
double s2 = gator.Value(1, 1);
double s3 = gator.Value(2, 1);
delete gator;
Print("v1 = ", v1, "; s1 = ", s1);
Print("v2 = ", v2, "; s2 = ", s2);
Print("v3 = ", v3, "; s3 = ", s3);
}
Не думаю что такая жирная реализация жизнеспособна, но если кому-то интересно, могу выложить.
Есть ли какие-то новости в этом направлении? Собираются ли добавить CreateIndicator в MT4?
А зачем? И как бы вы ей пользовались?
Есть ли какие-то новости в этом направлении? Собираются ли добавить CreateIndicator в MT4?
Какие преимущества вы хотите получить от IndicatorCreate?
IndicatorCreate подразумевает получение хэндла и использования его при копировании данных из буфера (функцией CopyBuffer, которой нет в МТ4).
Просто оберните iCustom(), вызывающую конкретных индикатор, функцией с двумя параметрами (буфер и бар) - и все дела.