Библиотека не позиционируется как "переход с MQL4". Я просто назвал функции, которые часто используются в советниках и скриптах, привычными именами.
Библиотека была написана за 1.5 часа и абсолютно не претендует на завершенность или оптимальность. Я постеснялся сказать, что в функциях могут быть баги, хотя они, естественно, быть могут. Понадеялся в этом вопросе на солидарность ;)
Функции, представленные в библиотеке, не охватывают и половины случаев работы с тайм-сериями. Естественно, если нужно получить не хай одного единственного бара, а пройтись по последним 100 барам, то оптимальнее будет это сделать совсем иначе.
На самом деле, я очень удивился, когда не нашел подобного кода в базе. Функции, вроде, каждодневного использования.
Поэтому предлагаю довести библу до ума и пользоваться всем сообществом. Я этим буду заниматься в любом случае, но помощь буду только приветствовать.
Urain, спасибо за инклудник, но он немного не о том.
Мы, видимо, о разном говорим. На примере безындикаторного MQL4-советника:
Добавили сответствующий include.
Добавили в исходнике автозаменой упомянутый префикс к штатным MQL4-функциям.
Совсем немного подредактировали полученный MQL4-файл, чтобы получить MQL5-файл.
Получили тот же самый советник, но уже для MT5.
в прошлом году начинал делать что то похожее, но из за частых обновлений билдов МТ5 забросил, чет не найду старых наработок, вот набросал как хотелось видеть класс для работы с таймсериями
IgorM: в прошлом году начинал делать что то похожее, но из за частых обновлений билдов МТ5 забросил, чет не найду старых наработок, вот набросал как хотелось видеть класс для работы с таймсериями
Интересно, а так будет оптимальнее, чем если копировать только необходимые данные (как у меня)?
Хотя, наверное, это зависит от частоты и объемов использования..
В общем, не самый однозначный вопрос.
С одной стороны, нужно копировать все то, что может использоваться, но стараться делать это реже (но тогда придется сразу указывать, какие серии по каким инструментам/ТФ будем использовать).
А с другой - можно копировать только необходимые отрезки прямо перед использованием. И только в тяжеловесных функциях оптимизировать доступ к длинным тайм-сериям.
Интересно, а так будет оптимальнее, чем если копировать только необходимые данные (как у меня)?
Хотя, наверное, это зависит от частоты и объемов использования..
сама реализация пока не важна, hrenfx правильно поставил вопрос - важно быстрое портирование кодов mql4 на mql5, я в своем примере предложил заменять старые ф-ции вместо префикса "MQ4_": MQL4_iTime, .... на "MQ4.
с помощью меню редактора поиск/замена можно довольно быстро портировать большинство кодов mql4
IgorM: в прошлом году начинал делать что то похожее, но из за частых обновлений билдов МТ5 забросил, чет не найду старых наработок, вот набросал как хотелось видеть класс для работы с таймсериями
Да... обновлений много... Если бы не приближающийся Чемпионат, не скоро я бы сел за MT5.
Мой код правда, как мне кажется, больше соответствует MQL4 (могут быть и иные варианты)
по типам входных параметров
Мой код иногда раза в 3-4 больше.
по типам входных параметров
Не только по типам, но это по большому счету не важно.
Настолько прямая реализация (в лоб) на мой взгляд это "ВЧЕРАШНИЙ ДЕНЬ", она не универсальна и может охватить только определенную часть задач.
Не только по типам, но это по большому счету не важно.
Настолько прямая реализация (в лоб) на мой взгляд это "ВЧЕРАШНИЙ ДЕНЬ", она не универсальна и может охватить только определенную часть задач.
ну а что можно сделать, когда в эксперте необходим только один бар?
Спасибо за комментарии. Отвечу всем сразу.
Я просто назвал функции, которые часто используются в советниках и скриптах, привычными именами.
Я постеснялся сказать, что в функциях могут быть баги, хотя они, естественно, быть могут. Понадеялся в этом вопросе на солидарность ;)
Естественно, если нужно получить не хай одного единственного бара, а пройтись по последним 100 барам, то оптимальнее будет это сделать совсем иначе.
Поэтому предлагаю довести библу до ума и пользоваться всем сообществом. Я этим буду заниматься в любом случае, но помощь буду только приветствовать.
Urain, спасибо за инклудник, но он немного не о том.
Мы, видимо, о разном говорим. На примере безындикаторного MQL4-советника:
в прошлом году начинал делать что то похожее, но из за частых обновлений билдов МТ5 забросил, чет не найду старых наработок, вот набросал как хотелось видеть класс для работы с таймсериями
Интересно, а так будет оптимальнее, чем если копировать только необходимые данные (как у меня)?
Хотя, наверное, это зависит от частоты и объемов использования..
В общем, не самый однозначный вопрос.
С одной стороны, нужно копировать все то, что может использоваться, но стараться делать это реже (но тогда придется сразу указывать, какие серии по каким инструментам/ТФ будем использовать).
А с другой - можно копировать только необходимые отрезки прямо перед использованием. И только в тяжеловесных функциях оптимизировать доступ к длинным тайм-сериям.
Нужно проверять.
Интересно, а так будет оптимальнее, чем если копировать только необходимые данные (как у меня)?
Хотя, наверное, это зависит от частоты и объемов использования..
сама реализация пока не важна, hrenfx правильно поставил вопрос - важно быстрое портирование кодов mql4 на mql5, я в своем примере предложил заменять старые ф-ции вместо префикса "MQ4_": MQL4_iTime, .... на "MQ4.
с помощью меню редактора поиск/замена можно довольно быстро портировать большинство кодов mql4
в прошлом году начинал делать что то похожее, но из за частых обновлений билдов МТ5 забросил, чет не найду старых наработок, вот набросал как хотелось видеть класс для работы с таймсериями