чистым MQL нельзя.
Хорошо, а как тогда можно?
А тела новостей из клиентского терминала не вытащить в любом случае, верно?
а они на потоковых (не анонсах и рекламе ДЦ) вообще есть?
редкость.
---
если и можно, то наспех приходит мысль про WinApi с доступом к открывшемуся окну + клипбоард
Можно проще - держать открытыми 2 терминала. В управляющем читать (сканировать) появление заголовков. После чего выключать (рестартовать) второй (управляемый), и искать новость в файле.
//======================================================================================================================================================= // 6.2. Функции для вкладки "Почтовый ящик". //======================================================================================================================================================= // 6.2.1. ФУНКЦИЯ закрывает окно почтового сообщения по системному дескриптору окна сообщения. // Функция возвращает TRUE, если сообщение поставлено в очередь, иначе - FALSE. bool ServiceMailboxCloseByHandle(int hwndMail); // Системный дескриптор окна сообщения. //======================================================================================================================================================= // 6.2.2. ФУНКЦИЯ закрывает окно почтового сообщения по теме сообщения. // Функция возвращает TRUE, если сообщение поставлено в очередь, иначе - FALSE. bool ServiceMailboxCloseByName(string sTitleMail); // Заголовок сообщения. //======================================================================================================================================================= // 6.2.3. ФУНКЦИЯ удаляет почтовое сообщение из списка по номеру строки во вкладке "Почтовый ящик" окна "Терминал". // В случае успеха функция возвращает TRUE, иначе - FALSE. bool ServiceMailboxDelete(int nLine); // Номер строки вкладки "Почтовый ящик" окна "Терминал". //======================================================================================================================================================= // 6.2.4. Функция возвращает имя отправителя почтового сообщения во вкладке "Почтовый ящик" окна "Терминал" по номеру строки. string ServiceMailboxGetFrom(int nLine); // Номер строки вкладки "Почтовый ящик" окна "Терминал". //======================================================================================================================================================= // 6.2.5. ФУНКЦИЯ возвращает номер строки первого найденного почтового сообщения начиная с последнего (верха списка) во вкладке "Почтовый ящик" окна "Терминал" // по времени, имени отправителя и заголовку сообщения. Функция возвращает -1, если сообщение не найдено. int ServiceMailboxGetLine(string sDataTime, // Время в формате "YYYY.MM.DD HH:MM". Можно указывать часть строки начиная с года или указывать пустую строку. string sFrom, // Имя отправителя сообщения. Можно указывать включаемое слово или пустую строку. string sTheme, // Заголовок сообщения. Можно указывать включаемое слово или пустую строку. int nStart, // Номер строки с конца списка (верх списка), с которой начнётся поиск сообщения. Сообщения добавляются кверху списка. int nCount); // Количество строк для поиска. Если параметр равен -1, поиск происходит до конца списка. //======================================================================================================================================================= // 6.2.6. Функция возвращает время почтового сообщения во вкладке "Почтовый ящик" окна "Терминал" по номеру строки в виде строки формата "YYYY.MM.DD HH:MM". string ServiceMailboxGetStringTime(int nLine); // Номер строки вкладки "Почтовый ящик" окна "Терминал". //======================================================================================================================================================= // 6.2.7. ФУНКЦИЯ возвращает время почтового сообщения во вкладке "Почтовый ящик" окна "Терминал" по номеру строки в формате UNIXTIME. datetime ServiceMailboxGetTime(int nLine); // Номер строки вкладки "Почтовый ящик" окна "Терминал". //======================================================================================================================================================= // 6.2.8. Функция возвращает тему почтового сообщения во вкладке "Почтовый ящик" окна "Терминал" по номеру строки. string ServiceMailboxGetTheme(int nLine); // Номер строки вкладки "Почтовый ящик" окна "Терминал". //======================================================================================================================================================= // 6.2.9. ФУНКЦИЯ открывает окно с почтовым сообщением по номеру строки и возвращает системный дескриптор окна сообщения. int ServiceMailboxOpen(int nLine); // Номер строки вкладки "Почтовый ящик" окна "Терминал". //======================================================================================================================================================= // 6.2.10. Функция читает текст в открытом окне почтового сообщения и возвращает указатель на него. string ServiceMailboxReadText(int hwndMail); // Системный дескриптор окна сообщения, возвращаемый функцией ServiceMailboxOpen(). //======================================================================================================================================================= // 6.2.11. Функция читает HTML-текст в открытом окне почтового сообщения и возвращает указатель на него. string ServiceMailboxReadHTML(int hwndMail); // Системный дескриптор окна сообщения, возвращаемый функцией ServiceMailboxOpen(). //======================================================================================================================================================= // 6.2.12. ФУНКЦИЯ возвращает количество сообщений в списке. int ServiceMailboxSize(); //=======================================================================================================================================================
Но некоторые функции недоступны. Рустам разрешит - открою. Для него делалось.
=============
А! Перепутал. Про новости речь. Можно это для другой вкладки повторить.
Zhunko:
так то тоже для новостей было. но так и не выстрелило. так что я здесь не при чем. обратитесь к разработчику.
Но некоторые функции недоступны. Рустам разрешит - открою. Для него делалось.
=============
А! Перепутал. Про новости речь. Можно это для другой вкладки повторить.
FAQ:
так то тоже для новостей было. но так и не выстрелило. так что я здесь не при чем. обратитесь к разработчику.
так то тоже для новостей было. но так и не выстрелило. так что я здесь не при чем. обратитесь к разработчику.
У нас про вкладку "Почта" было, а это вкладка "Новости". Какому разработчику?
Ты причём из-за того, что этот код без тебя не появился бы.
По моему нет смысла отслеживать новости именно в момент их выхода, потому-что всегда найдётся "Быстрый Джо" ( и не один), который сделает это быстрее. А Вам останется только остатки собирать. Лучше зная время выхода новости заранее приготовиться к рывку как в одну, так и в другую сторону.)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Могу ли я при помощи MQL получать заголовки и тела новостей, которые находятся во вкладке "News" в клиентском терминале? Если да, то скажите, пожалуйста, как это можно сделать. Поиск по форуму ответа не дал.
Заранее благодарю.