Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Знаете ли вы, что в MQL5 появились классы?
HTMax
165
HTMax 2013.07.26 13:08 

Всем Доброго времени суток! Всем людям доброй воли, да не оскуднеет рука дающего руку помощи..!

Задача для чайника не по силам, для профи раз плюнуть:


1) Есть пользовательский идикатор, передающий уровни iCustom() и тд. ..

2) Нужно в цикле организовать доступ к этим значениям(уровням) по средствам массивов, что бы к ним можно было обратиться.., к 1-ому, 2-ому.. при надобности к 8-ому и к 1000-ому значению..


Зараннее всем благодарен!

ktest0
631
ktest0 2013.07.26 13:55  

На сколько мне понятен вопрос - в iCustom последний параметр Shift - сдвиг на бары по чтению из буфера на этом индикаторе, хоть 1-ый, хоть 1000-ый, хоть какой в пределах существующих баров или возможностей индикатора.

Предпоследний Mode - выбор буфера индикатора...

Циклы - While или For - по собственному усмотрению...

Какие сложности?

HTMax
165
HTMax 2013.07.26 18:49  

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

1) Индюк передаёт определённое значение.

2) Запоминаем его в массив.

3) Индюк передаёт новое значение.

4) И его сохраняем в массив (сохраняя предыдущее)

5) Индюк снова передаёт значение.

6) Снова сохраняем в массив.........

7) ................................................

И так не важно сколько значений сохранится (это можно ограничить в цикле, 2,3,4,5...), главное что бы к любому значению полученому от индюка, в массиве был доступ.....

Vladimir Pastushak
59081
Vladimir Pastushak 2013.07.27 06:02  

запомнить 20 последних элементов индикатора .

for ( i=20-1; i>=0; i-- )

mas[i] = iCustom (.....................,  i) ;
HTMax
165
HTMax 2013.07.27 14:38  

VOLDEMAR



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

Смотри в iCustom (....60.., i); i - не используется, в моём варианте, вместо него стоит определённое колличество баров... ну скажем 61, тоесть на 61 баре я получаю значение от индюка..

В следующий раз, когда индикатор создаст новое значение, а здесь колличество баров назад через которое будет образовано новое значение не известно, я его получу всё равно на 61 баре после его появления.., Тоесть между первый, вторым, третим и тд.. .. значениями колличества баров назад через которое будет образовано новое значение не известно, но получать я их буду после образования, на 61 баре.

Что нужно:

Запускается эксперт, и получает первое значение через iCustom(NULL, 0, "...",,,,,,,,,,60,,,,,61);

1) Запоминаем в массив.

Проходит n-ое колличество баров, появляется новое значение от iCustom(NULL, 0, "...",,,,,,,,,,60,,,,,61);

2) Запоминаем в массив.

Проходит n-ое колличество баров, появляется новое значение от iCustom(NULL, 0, "...",,,,,,,,,,60,,,,,61);

3) Запоминаем в массив...

и тд............................


Потом по мере нужды обращаемся ну скажем к

mas[5] и сравиваем со значением mas[4] и mas[3] ...


Надеюсь не сильно запутанно объяснил,... я ж грю чайник.. он и в Африке чайник...

Спасибо за терпение...

ktest0
631
ktest0 2013.07.27 17:35  
i это не количество баров, а отступ от текущего, нулевого...
HTMax
165
HTMax 2013.07.28 02:01  

ktest0



Да... точно: это колличество баров назад от текущего нулевого, прав.


Какие-нибудь более конструктивные предложения есть по решению поставленой задачи...?


Спасибо за терпение...

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