Se você é trader, com certeza já ouviu falar do FFC, uma versão modificada do famoso indicador de notícias DerkWehler, que foi compartilhado inicialmente no fórum Forex Factory. Eu fiz algumas alterações para atender às minhas necessidades e decidi compartilhar essa versão, que pode ser útil para outros traders também.
O FFC coloca um painel no seu gráfico que exibe 5 eventos econômicos listados no Calendário do Forex Factory. Você pode filtrar os eventos por impacto: Alto, Médio ou Baixo, além de discursos, feriados ou por palavras-chave específicas. Confira todas as modificações aqui.
Além disso, você pode chamar o indicador dentro de um EA utilizando a função iCustom(), acessando 2 buffers:
- Buffer (0) contém minutos até o evento mais recente.
- Buffer (1) contém o valor de impacto para o evento mais recente (Baixo = 1, Médio = 2, Alto = 3).
Você pode chamar os buffers de duas maneiras:
Chamada simples: (valores padrão serão aplicados)
int EventMinute = (int)iCustom(NULL,0,"FFC",0,0); if(EventMinute == 30) { .. SEU CÓDIGO .. } // 30 minutos antes do evento int EventImpact = (int)iCustom(NULL,0,"FFC",1,0); if(EventImpact == 3) { .. SEU CÓDIGO .. } // Evento de alto impacto
Chamada avançada:
iCustom( string NULL, // símbolo int 0, // período de tempo string "FFC", // caminho/nome do indicador personalizado bool true, // true/false: Apenas gráfico ativo bool true, // true/false: Incluir alto impacto bool true, // true/false: Incluir médio impacto bool true, // true/false: Incluir baixo impacto bool true, // true/false: Incluir discursos bool false, // true/false: Incluir feriados string "", // Encontrar palavra-chave (sensível a maiúsculas) string "", // Ignorar palavra-chave (sensível a maiúsculas) bool true, // true/false: Permitir atualizações int 4, // Atualizar a cada (em horas) int 0, // Buffers: (0) Minutos, (1) Impacto int 0 // deslocamento );
*Por favor, note que o indicador não possui (neste momento) capacidade de back-testing.
Estilo sugerido:
- Cor de Alto Impacto = C'217,83,79'
- Cor de Impacto Médio = C'255,185,83'
- Cor de Baixo Impacto = C'91,192,222'
- Cor de Feriados = clrOrchid
- Cor de Observações = clrDimGray
Lenda do calendário:
- m/m: Mês Sobre Mês
- q/q: Trimestre Sobre Trimestre
- y/y: Ano Sobre Ano
- K Mil
- M Milhão
- B Bilhão
- T Trilhão



Modificações:
- Adicionado: #property strict para compatibilidade com MetaTrader 4 Build 600+ e melhor qualidade de código.
- Adicionado: Mostrar impacto anterior/previsão do evento (impacto colorido).
- Adicionado: Opção para mostrar eventos relacionados apenas ao gráfico ativo (sobrescrever outros parâmetros)
- Adicionado: Filtro por palavra-chave. Encontrar ou Ignorar uma palavra específica, como "NFP", filtrará todos os eventos com/sem apenas essa palavra. (sensível a maiúsculas)
- Adicionado: Opção para mostrar a força da moeda / tempo restante / valor do spread.
- Adicionado: Opção para controlar o tempo de exibição de eventos passados (em minutos).
- Adicionado: Opção para definir a localização do painel em 4 cantos do gráfico.
- Adicionado: Dica de ferramenta ao passar o mouse que mostra o título do evento, impacto e tempo restante do evento.
- Adicionado: Título do painel. Você pode usá-lo como uma nota de lembrete :)
- Modificado: Mostrar evento em "formato de data/hora" em vez de minutos restantes (você pode mostrar minutos restantes através da dica de ferramenta)
- Modificado: Linhas verticais para os eventos futuros. (Você pode precisar modificar a entrada de "deslocamento de tempo" dependendo do horário do seu broker).
- Modificado: Buffers que armazenam o minuto do evento e impacto futuros (veja os exemplos acima)
- Modificado: Revisado a ordem das entradas externas.
- Melhorado: Substituído a função DownLoadWebPageToFile() pela função nativa do Windows URLDownloadToFileW().
- Melhorado: Colocado (baixar/ler arquivo XML) e códigos relacionados em funções para que possamos chamá-los quando necessário.
- Melhorado: Substituído "GlobalVariables" que usava para atualizar o arquivo XML por FILE_MODIFY_DATE - OnTimer() configurado pelos inputs "AllowUpdates", "UpdateHour".
- Melhorado: Fuso horário GMT, agora os eventos aparecerão no seu horário local automaticamente.
- Melhorado: Justificar o painel/texto quando definido para a direita/esquerda.
- Melhorado: Função de alerta, agora enviará além do Alerta Popup: alerta sonoro, Notificação Push no seu celular e Emails. (dois alertas separados)
- Melhorado: Qualidade do código, agora o indicador está mais leve e rápido do que nunca.
- Corrigido: Vários bugs corrigidos, alguns códigos ou variáveis desnecessárias/removidas, algumas variáveis colocadas dentro das funções relacionadas.
Autores reais:
Créditos:
- JimDandy
- WHRoeder
- RaptorUK
* Para utilizar este indicador, você precisa ativar as Importações de DLL nas opções de sua plataforma MetaTrader 4.
* Esteja ciente de que o código pode ter alguns bugs ou outras falhas, então, se você perceber algum problema ou tiver sugestões, ou mesmo melhores práticas de codificação, por favor, me avise.
* Segundo o site do Forex Factory, todos os horários dos eventos são aproximados e estão sujeitos a alterações.
Publicações relacionadas
- Calendário Econômico: Monitoramento e Cache para Testes de Estratégia no MetaTrader 5
- Buffers Horários para Coleta de Dados no MetaTrader 5
- Painel Gráfico: Mostre a Tendência Atual em Todos os Tempos no MetaTrader 4
- EquiPeak Drawdown Tracker: Controle Eficiente para Seus EAs no MetaTrader 5
- Índice de Preferência do Investidor: Um Guia Prático para Traders