Правильно ли я понимаю, что если в строке:
date = iCustom(NULL, 0, "ZigZag", ExtDepth, ExtDeviation, ExtBackstep, 0, shift);поменять значения iCustom, то можно записать данные с любого индикатора. А если добавить double date01, date02, date03, ........, то можно получить данные с кучи индикаторов и\или буферов?
Правильно ли я понимаю, что если в строке:
date = iCustom(NULL, 0, "ZigZag", ExtDepth, ExtDeviation, ExtBackstep, 0, shift);поменять значения iCustom, то можно записать данные с любого индикатора. А если добавить double date01, date02, date03, ........, то можно получить данные с кучи индикаторов и\или буферов?
Совершенно верно, данный код можно использовать как шаблон, и с легкостью переделать под запись данных любых индикаторов, просто изменяя функцию iCustom() и ее параметры.
Подскажите, ежели вместо: " isAllZigZagDate - количество сохраняемых данных, false - только последнюю точку ZigZag, true - все точки на текущей истории.", сделать
extern int No_of_bars = 50;
что определяет\ограничивает количество баров, с которых снимаются\записываются показания индикатора; 0 - означает все бары в истории.
В этом случае, мы заменяем, насколько я понимаю:
for(int shift = 0; shift <= Bars-1; shift++){ // следующей строкой: for(int shift = 0; shift <= No_of_bars; shift++){
А как дальше?
Подскажите, ежели вместо: " isAllZigZagDate - количество сохраняемых данных, false - только последнюю точку ZigZag, true - все точки на текущей истории.", сделать...
А как дальше?
И удалите строчку:
if(!isAllZigZagDate)break;
Тем самым вы ограничите поиск точек, количеством баров указанным в параметре No_of_bars, соответственно параметр isAllZigZagDate тоже можно удалить.
0 - означает все бары в истории.
В init() добавте этот код:
if(No_of_bars == 0)No_of_bars = Bars-1;
Отличная вещь!
Автору - огромная благодарность....
AAAksakal:
99% прог по анализу используют общепринятый стандарт...
Из той «каши» цифр и точек, которую вы представили очень
трудно понять, какой именно стандарт вы имеете в виду, и какой результат вам
нужен на выходе.
Этот скрипт записывает в файл данные, которые ему предоставляет терминал, в том
формате, в котором терминал сам с ними работает. Исключение составил лишь
разделитель целой и дробной частей котировок, измененный мною исключительно для
удобства, чтобы не перенастраивать русскую локализацию, при работе в Excel. Впрочем,
данная опция легко отключается, и вы получете в файлах полный аналог данных из
терминала.
Формат даты терминала: "yyyy.mm.dd [hh:mi]"
...что ставит ее в разряд не употребляемых, по скольку гнать в ексель переворачивать даты в нормальное положение и гнать в прогу для анализа смысла нет...
"переворачивать даты" в каком смысле? в наш формат "dd.mm.yyyy [hh:mm]" ? А Excel это делает автоматически, потому что как я уже сказал, он "локализован".
да и с знаками табуляции есть на фороксе стандарт
Есть такая замечательная вещь, парсинг называется, с его помощью текстовые данные можно привести в любой удобный вид и формат, только вот вопрос в какой?
Вот первая строчка из вашего скрипта :2010....07....13 07:00.132,91.132,91.132,61.132,66.132,61
...Вот первая строчка из МТ : 2009.....01....05,051500,148.23,148.25,148.09,148.15,922..
...Вот последняя строчка из МТ:
2010...01....05,051500,148.23,148.25,148.09,148.15,922...разная последовательность дат в столбце, по этому ваш график в большинстве программ будет вывернут на изнанку.
Честно признаться понятней не стало ...
Вот первая строчка из вашего скрипта :2010....07....13 07:00.132,91.132,91.132,61.132,66.132,61
Вроде все нормально, или вас смущает, что в первую строчу, записаны значения последнего экстремума? Ну, так это же нормально, так организованы массивы таймсерий, хотя в принципе «развернуть» не долго.
...Вот первая строчка из МТ :
2009.....01....05,051500,148.23,148.25,148.09,148.15,922...
...Вот последняя строчка из МТ:
2010...01....05,051500,148.23,148.25,148.09,148.15,922...
Ладно. Вот элементарный пример работы в Excel с данными сгенерированными
скриптом, и никаких проблем не возникло. https://www.mql5.com/ru/forum/111497/page748#352301
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
ZigZag to File:
Author: Анатолий Сергеев