NewsReader
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «newsreader.mq5» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
NewsReader — индикатор для MetaTrader 5, который загружает новостные события из CSV-файла и отображает ближайшее событие в виде текстовой метки на графике. При инициализации индикатор открывает указанный CSV-файл, разделённый точкой с запятой, и считывает временные метки и названия событий в массивы.
Во время каждого обновления котировок индикатор определяет следующее ближайшее новостное событие и выводит его время и название на график в виде подписи (OBJ_LABEL). Если все события уже прошли, на графике отображается соответствующее сообщение.
Индикатор поддерживает уведомления: при включённом режиме уведомлений и достижении заданного временного порога до события отправляется системное оповещение и воспроизводится звуковой сигнал. Внешний вид метки настраивается через параметры шрифта и цвета.
Настройки программы
| Настройка | Описание |
|---|---|
| FileName | Имя CSV-файла с новостными событиями, который загружается при инициализации индикатора. Файл должен содержать время и название событий, разделённые точкой с запятой. |
| DoAlerts | Переключатель для включения или отключения автоматических уведомлений о ближайших новостных событиях. |
| AlertTime | Числовой параметр, задающий пороговое значение времени (в минутах) до новостного события для срабатывания уведомления. |
| StampFontSize | Размер шрифта текстовой метки, отображаемой на графике. |
| StampFontName | Имя шрифта текстовой метки, отображаемой на графике. |
| StampFontColor | Цвет текста метки, отображаемой на графике. |
Поиск по коду файла
#property indicator_chart_window
extern string FileName = "news.csv";
extern bool DoAlerts = true;
extern int AlertTime = 10;
extern int StampFontSize = 10;
extern string StampFontName = "arial";
extern color StampFontColor = Orange;
int FileHandle;
int eventCount;
string eventNames[10];
datetime eventTimes[10];
int init()
{
// код доступен только после оплаты
}
int deinit()
{
DeleteStamp();
FileClose(FileHandle);
return(0);
}
int start()
{
// код доступен только после оплаты
}
int next = 0;
while(eventTimes[next] < TimeCurrent())
{
next++;
if(next >= eventCount)
{
Stamp(eventCount+" news releases over."+" No more news today!",5,20);
return(0);
}
}
Stamp("Next news event: "+TimeToStr(eventTimes[next])+" "+eventNames[next],5,20);
if(DoAlerts && TimeMinute(eventTimes[next]-TimeCurrent())==DoAlerts)
{
Alert("News Event Imminent: "+TimeMinПоказано первые 50% кода (символов: 1965)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.