Filtro de notícias

 
Pessoal, como colocar um filtro de notícias? Gostaria de desativar por alguns minutos o EA durante os eventos de alto impacto. 

Tentei esse código que teoricamente coloca um filtro das notícias da metaquotes, mas o painel de informações não carrega nenhuma notícia. Tentei desde as de baixo impacto até as de alto impacto e nunca mostra nada.

Alguma outra opção grátis que podemos utilizar?


bool IsNewsEventActive()
{
    if (!UseNewsFilter) return false; // Se o filtro não está ativado, permite operações

    datetime currentTime = TimeCurrent();
    datetime startTime = currentTime - MinutesBeforeNews * 60;
    datetime endTime = currentTime + MinutesAfterNews * 60;

    MqlCalendarValue values[];
    if (!CalendarValueHistory(values, startTime, endTime, "", ""))
    {
        Print("Erro ao acessar o calendário econômico: ", GetLastError());
        return false;
    }

    for (int i = 0; i < ArraySize(values); i++)
    {
        MqlCalendarEvent event;
        if (CalendarEventById(values[i].event_id, event))
        {
            // Verifica se o evento tem impacto alto (ou conforme configurado)
            if (event.importance >= NewsImpactLevel)
            {
                Print("Notícia de alto impacto detectada: ", event.name, " às ", TimeToString(values[i].time));
                return true; // Há uma notícia ativa, suspende operações
            }
        }
    }
    return false; // Nenhuma notícia de alto impacto encontrada
}