Скачать MetaTrader 5

Стандартная функция для мильтивалютников

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Хочешь изучить язык MQL5? 300 статей помогут тебе!
Alexander Laur
7690
Alexander Laur 2011.03.14 13:28 
Уважаемые разработчики, ну когда Вы сделаете стандартную (зашитую в MQL5) функцию, которая бы отслеживала событие NewTick или NewBar на каждом инструменте из "Обзора рынка"? Ведь в терминале такие функции есть, иначе как бы строились бары на графиках и менялись бы цены Bid/Ask  в "Обзоре рынка". Дайте нам (трейдерам) доступ средствами языка MQL5 к этим данным посредством стандарной функции. Например: NewTick(_Symbol) или NewBar(_Symbol), или какими-нибудь другими функциями. Это бы существенно облегчело жизнь при создании мультивалютных экспертов.
Документация по MQL5: Программы MQL5 / События клиентского терминала
Документация по MQL5: Программы MQL5 / События клиентского терминала
  • www.mql5.com
Программы MQL5 / События клиентского терминала - Документация по MQL5
Alexander Laur
7690
Alexander Laur 2011.03.16 10:44  
Разработчики, удостоите меня ответом?
Vladimir Gomonov
8277
Vladimir Gomonov 2011.03.16 18:40  
papaklass:
Разработчики, удостоите меня ответом?

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

Мне кажется разумный компромисс (гораздо более "мягкий" для тестера) - подписка на тики конкретных символов. Типа как на события таймера (по схеме использования).

Ты б согласился на такой вариант? А то ведь нам дадут новую возможность, так мы ж потребуем её сразу в тестере моделировать..  а потом тормознутость тестера критиковать будем... :) 

MetaQuotes
Админ
24944
Renat Fatkhullin 2011.03.16 18:42  
MetaDriver:

а потом тормознутость тестера критиковать будем... :) 
Именно так и будет. Ведь подписываться в 99% случаев пойдут "на все".
o_o
Модератор
23691
o_o 2011.03.16 18:43  
MetaDriver:

Мне кажется разумный компромисс (гораздо более "мягкий" для тестера) - подписка на тики конкретных символов. Типа как на события таймера (по схеме использования).

Ты б согласился на такой вариант?

я б согласился. но все в руках разработчиков.
Vladimir Batrudinov
4924
Vladimir Batrudinov 2011.03.16 18:51  

Но мой взгляд нужно событие OnNewBar(_Symbol), также хочется увидеть ранее обещанный параметр в событии OnTrade.

Идею с детализацией по тикам в топку. Действительно много ресурсов займет, и "подписка" не поможет (особенно в тестере).


Vladimir Gomonov
8277
Vladimir Gomonov 2011.03.16 19:09  
Renat:
Именно так и будет. Ведь подписываться в 99% случаев пойдут "на все".

Ренат, может быть хотя бы создать такую возможность в реал-тайм, сознательно отказавшись от реализации "мульти-тиков" в тестере? Или ввести жёсткое ограничение для тестера - подписка не более чем на 8 символов (например). Вот не поддерживаются же размерности массивов более 4 и никто не умер - нормальное техническое ограничение. Или вот не было в четвёрке мультивалютной торговли в тестере - и народ с пониманием относился. Опять же все живы до сих пор. Лучше отказаться от идеи обязательно ВСЕ возможности в тестере поддерживать. Иначе придётся резать дополнительные перспективы, на том основании, что их трудно тестить. Это неправильно как-то...

Всё таки нужная возможность. Сделайте хотя бы для реал-тайма. Даже пока вообще без поддержки в тестере. Ну очень хочется всё в одном месте обрабатывать. Иначе приходится чесать левой ногой правое ухо - ещё менее эффективно. :(

Сергей
534
Сергей 2011.03.16 19:37  
Interesting:

Но мой взгляд нужно событие OnNewBar(_Symbol), также хочется увидеть ранее обещанный параметр в событии OnTrade.

Идею с детализацией по тикам в топку. Действительно много ресурсов займет, и "подписка" не поможет (особенно в тестере).


Мне кажется, что если делать подобное событие, то к списку параметров нужно добавить таймфрейм - OnNewBar(_Symbol, ENUM_TIMEFRAMES enumTF)
Vladimir Batrudinov
4924
Vladimir Batrudinov 2011.03.16 20:16  
falkov:
Мне кажется, что если делать подобное событие, то к списку параметров нужно добавить таймфрейм - OnNewBar(_Symbol, ENUM_TIMEFRAMES enumTF)
Скорей всего да, бары по любом привязаны к ТФ. Короче конкретные параметры на усмотрение разработчиков.
Alexander Laur
7690
Alexander Laur 2011.03.17 02:45  

Повторюсь еще раз. В терминале это уже есть: в "обзоре рынка" - событие NewTick, на чартах - событие NewBar. Нужно только дать возможность средствами языка MQL5 обрабатывать эти события. Разработчикам виднее как это сделать. Ведь изначально, МТ5 позиционировала как мультивалютная платформа. Что имеем на практике - моновалютность. Нет стандартных средств для обработки мультивалютных событий. Обработка события NewTck посредством OnTick() - моновалютна. Вот и приходится изголяться при написании мультиков. Согласен, что в мультивалютных средствах нужны минимум два параметра: 1. Symbol(), 2. ТаймФрейм.

To Renat.

Ренат, Вы дайте функционал, а мы сами выбирем чем нам пользоваться. Ссылка на то, что некоторые будут загружаться по полной, даже в тех случаях, когда этого не требуется, не является аргументов в пользу отказа от мультивалютных средств. И сейчас есть некоторые личности, которые возмущаются большим трафиком и тормозами терминала. Потому что они не в курсе, что для работы на одном инструменте не надо в "обзор рынка"  загонять все имеющиеся инструменты. Ну нельзя же ориентироваться на таких при выборе стратегических решений. С другой же стороны, если человеку его компьютерные мощности позволяют грузиться по полной, то пусть платформа предоставит ему (человеку) такую возможность. Да и остальным Ваш сетевой сервис с удаленными агентами тоже будет в помощь.

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
Vladimir Gomonov
8277
Vladimir Gomonov 2011.03.17 04:09  
falkov:
Мне кажется, что если делать подобное событие, то к списку параметров нужно добавить таймфрейм - OnNewBar(_Symbol, ENUM_TIMEFRAMES enumTF)
Хорошо подумали?  Попробуйте подумать ещё раз.
12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий