Indicador Forex Ffcal


Para aqueles de vocês que estiveram usando o Metatrader 4 por um tempo, você lembrará que houve muitos indicadores de calendário de notícias MT4. Com MT5, é claro, há uma função incorporada para mostrar notícias. O calendário de notícias MT4 mais popular foi o FFCal News Indicator. O que o fez realmente se destacar é que é um indicador, então, se você é esperto, você pode modificar o indicador e usá-lo em seus consultores especializados, scripts ou simplesmente modificar o indicador ao seu gosto. Infelizmente com o novo lançamento do Metatrader 5, as pessoas do MetaQuotes Software começaram a modificar as construções MT4 e quebraram esse indicador. O suporte para isso parou e houve uma outra escolha que surgiu, o NewsCal-v107. Foi bom, mas o código fonte não estava disponível, então você teve que usá-lo como está, com ele peculiaridades e faltas curtas. Não me interprete mal, é um ótimo indicador. A boa notícia é que graças ao rod178 no ForexFactory. Eu coloquei minhas mãos sobre o código fonte para um calendário de notícias MT4 FFCal, chamado CalendárioFX-I, e comecei a fazer aprimoramentos. Você pode encontrar aqui o arquivo MT4 News Calendar mq4 e ex4: Para a versão mais recente, verifique este Foum para novas versões do CalendarFX-I: Kudos para traderathome, deVries, qFish, atstrader, rod178 para criar e manter o Indicador FFCal News vivo 8 comentários : Oi, eu só quero dizer-te por este ótimo indicador. O melhor newscalendar, IMHO. Eu acho que esse indicador merece seu próprio tópico no fórum Forex Factory, porque é completamente diferente de todos os outros, e agora você precisa tentar encontrá-lo dentro de um tópico dedicado a um indicador totalmente diferente. Obrigado pela informação breve sobre mt4. Mantenha esta boa postagem. Sua postagem sempre é útil. Eu sempre procuro esses tipos de informações como o calendário Forex. Obrigado por compartilhar com o usderkwehler e outros contribuidores - o código principal do indicador FFCal, FFCalv20 datado de 07072009, Copyright 2006 derkwehler forexfactoryshowthread. phpt19293 email: derkwehlergmail deVries - por seu excelente trabalho doado que alterou e simplificou significativamente a codificação de manipulação de arquivos para estabelecer compatibilidade com A nova versão do MT4 Build 600, e que resultou em uma execução de código mais rápida. (Jobs for deVries mql5enjobnewprefereddeVries) qFish - por seu generoso tempo e ajuda durante o esforço para melhorar esse indicador. Atstrader - Para uma nova opção segura, que controla o que são exibidas as novidades dos pares. - Traderathome, 03-17-2014 email: traderathomemsn Estas modificações foram aplicadas no lançamento do 03-17-2014 fundado aqui: forexfactoryshowthread. phpt114792 Adicionado: propriedade rigorosa para compatibilidade com MT4 Build 600 e melhor qualidade de código. Adicionado: mostra o evento PreviousForecast. (Impacto colorido) Adicionado: Opção para mostrar eventos relacionados apenas ao gráfico ativo (substituir outros parâmetros) Adicionado: filtro de palavras-chave. Encontre ou ignore uma palavra específica, ou seja, NFP, irá filtrar todos os eventos sem apenas essa palavra. (Sensível a maiúsculas e minúsculas) Adicionado: Opção para mostrar o tempo de barra de força de moeda tempo de propagação de distância. Adicionado: opção para controlar a hora 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 no mouse que mostra o título do evento, o impacto e o tempo do evento. Adicionado: título do painel. Você pode usá-lo como uma nota de lembrete :) Modificado: Mostre o evento no formato DateTime em vez dos minutos restantes (você pode mostrar os minutos restantes através da Dica de ferramenta) Modificado: linhas verticais para os próximos eventos. (Você pode precisar modificar a entrada do tempo compensado, dependendo do tempo do intermediário). Modificado: Buffers que mantém o próximo evento minuto e impacto (veja exemplos abaixo) Modificado: Ordem revisada de entradas externas. Melhorado: substituiu a função DownLoadWebPageToFile () com a função nativa Windows URLDownloadToFileW (). Melhorado: Colocado (arquivo XML de downloadread) e códigos relacionados em funções para que possamos chamá-los quando necessário. Melhorado: substituiu o GlobalVariables usado para atualizar o arquivo XML com FILEMODIFYDATE - OnTimer () definido por AllowUpdates, UpdateHour entradas. Melhorado: Time GMT offset, agora os eventos serão exibidos em sua hora local automaticamente. Melhorado: justifique o texto do painel quando configurado para a direita. Melhorado: função Alerta, agora enviará ao lado do Alerta Popup: alerta sonoro, notificação push e e-mails. (Dois alertas separados) Melhorado: Qualidade do código, agora o indicador é mais leve e rápido do que nunca. Corrigido: várias correções de bugs, alguns códigos desnecessários ou variáveis ​​removidas, colocaram algumas variáveis ​​dentro de suas funções relacionadas. Para uso em uma EA, o indicador contém 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 (Low 1, Medium 2, High 3). Observe que O indicador não funcionará no testador de estratégia int EventMinute (int) iCustom (NULL, 0, FFC, 0,0) se (EventMinute 30) 30 minutos antes do evento int EventImpact (int) iCustom (NULL, 0, FFC, 1, 0) se (EventImpact 3) Evento de alto impacto Chamada avançada: ------------- iCustom (string NULL, symbol int 0, timeframe string FFC, pathname do programa de compilação de indicadores personalizados bool true, truefalse : Apenas gráfico de ativos, bool true, truefalse: Inclua alto impacto bool true, truefalse: Inclua impacto médio bool true, truefalse: Inclua Low impact bool true, truefalse: Inclua Speaks bool false, truefalse: Inclua feriados string, Find keyword string, Ignore keyword Bool true, truefalse: Permitir Atualizações int 4, Atualizar cada (em horas) int 0, Buffers: (0) Minutos, (1) Impact int 0 shift) - Awran5, 08-14-2016 email: awran5yahoo --------------------------------------- ----------- HEADER -------------------------------------- -------------- ------------------------------------ -------------------------------------------------- ------------------------ propriedade de direitos autorais Copyright 169 2009-2016, traderathome, deVries, qFish, atstrader, awran5. Propriedade link awran5yahoo descrição da propriedade Versão modificada do FF Calendário Indicador com novos recursos propriedade versão 1.00 propriedade propriedade rígida indicatorchartwindow propriedade indicatorbuffers 2 --- para baixar o xml import urlmon. dll int URLDownloadToFileW (int pCaller, string szURL, string szFileName, int dwReserved, Int Callback) importação --- definir INAME FFC definir TÍTULO 0 definir PAÍS 1 definir DATA 2 definir TIME 3 definir IMPACTO 4 definir PREVISÃO 5 definir ANTERIOR 6 ------------------- ------------------------- VARIÁVEL EXTERNO ----------------------- ---------------------- ---------------------------- -------------------------------------------------- ------------------------------ extern bool ReportActive falso Relatório somente para o gráfico ativo (substituir outras entradas) extern bool IncludeHigh true Incluir alto Extern bool IncludeMedium true Inclua middle extern bool IncludeLow true Inclua low external bool IncludeSpeaks true Inclua fala extern bool IncludeHolid Ays false Incluir feriados string externa FindKeyword Buscar palavra-chave external string IgnorarKeyword Ignorar palavra-chave extern bool AllowUpdates true Permitir atualizações extern int UpdateHour 4 Atualizar cada (em horas) seqüência de entrada lb0 ----------------- ------------------------------------------- string de entrada lb1 ---- --gt CONFIGURAÇÕES DO PAINEL externo bool ShowPanel verdadeiro Mostrar o painel externo bool AllowSubwindow falso Mostrar painel na sub janela extern ENUMBASECORNER Canto 2 Painel externo do lado do painel PanelTitle Forex Calendário Forex Factory Painel título externo cor TitleColor C46,188,46 Título cor extern bool ShowPanelBG verdadeiro Show Painel backgroud cor exterior Pbgc C25,25,25 Painel backgroud cor cor externa LowImpactColor C91,192,222 Cor baixa cor de impacto cor MediumImpactColor C255,185,83 Cor de impacto médio cor externa HighImpactColor C217,83,79 Cor de alta influência color externo HolidayColor clrOrchid Cor de feriados Cor externa ComentáriosColor clrGray Remar Cor do ks cor externa ColorCort anterior C170,170,170 Color da previsão cor externa PositivoColor C46,188,46 Previsão positiva cor cor externa NegativeColor clrTomato Previsão negativa cor externa bool ShowVerticalNews true Mostrar linhas verticais extern int ChartTimeOffset 0 Deslocamento do tempo do gráfico (em horas) extern int EventDisplay 10 Ocultar evento após (em minutos) seqüência de entrada lb2 ---------------------------------------- -------------------- string de entrada lb3 ------ gt CONFIGURAÇÕES DE SÍMBOLOS extern bool ReportForUSD real Relatório para USD extern bool ReportForEUR true Relatório para EUR extern bool ReportForGBP true Relatório para GBP extern bool ReportForNZD verdadeiro Relatório para NZD extern bool ReportForJPY verdadeiro Relatório para JPY extern bool ReportForAUD real Relatório para AUD extern bool ReportForCHF verdadeiro Relatório para CHF extern bool ReportForCAD verdadeiro Relatório para CAD extern bool ReportForCNY falso Relatório para CNY cadeia de entrada lb4 - ------------------------------------------ ---------------- string de entrada lb5 ------ gt CONFIGURAÇÕES DE INFORMAÇÕES extern bool ShowInfo true Mostrar informações de Símbolo (Duração da barra de força) Cor externa InfoColor C255,185,83 Info Cor extern int InfoFontSize 8 Info tamanho da fonte string de entrada lb6 --------------------------------------- --------------------- string de entrada lb7 ------ gt NOTIFICAÇÃO string de entrada lb8 Nota: Defina (-1) para desativar o Alert extern int Alert1Minutes 30 Minutos antes do primeiro Alerta extern int Alert2Minutes - 1 Minuto antes do segundo Alerta extern bool PopupAlerts falso Alertas Popup extern bool SoundAlerts true Alertas de som string externa AlertSoundFile news. wav Nome do arquivo de som extern bool EmailAlerts falso Enviar email extern bool NotificationAlerts falso Enviar notificação push --- -------------------------------------------------- -------------------------------------------------- ----- --------------------------------------------- VARIÁVEL INTERNO ------------------------------------------ - Vars e arrays string xmlFileName string sData string Evento 200 7 string eTitle 10, eCountry 10, eImpact 10, eForecast 10, ePrevious 10 int eMinutes 10 datetime eTime 10 int âncora, x0, x1, x2, xf, xp int Factor --- Alerta bool FirstAlert bool SecondAlert datetime AlertTime --- Buffers duplo MinuteBuffer Double ImpactBuffer --- time datetime xmlModifed int TimeOfDay datetime Midnight bool IsEvent ------------------- ----------------------------------------------- Inicialização personalizada do indicador Função ------------------------------------------------- ----------------- int OnInit () --- verifique se há DLL (TerminalInfoInteger (TERMINALDLLSALLOWED)) Alerta (INAME: Please Allow DLL Imports) return (INITFAILED) --- Mapeamento de buffers de indicadores SetIndexBuffer (0, MinuteBuffer) SetIndexBuffer (1, ImpactBuffer) SetIndexStyle (0. DRAWNONE) SetIndexStyle (1. DRAWNONE) --- 0 valor não será exibido SetIndexEmptyValue (0. 0.0) SetIndexEmptyValue (1. 0.0) - - homem de 45 dígitos Kers if (Digits 2 1) Factor 10 else Factor 1 --- obter o tempo de hoje TimeOfDay (int) TimeLocal () 86400 Midnight TimeLocal () - TimeOfDay --- definir xml nome do arquivo ffcalweekthis (nome fixo) xmlFileNameNAME - ffcalweekthis. xml - - verifica a existência do arquivo. Se (FileIsExist (xmlFileName)) xmlDownload () xmlRead () --- else, basta lê-lo else xmlRead () --- obter o último tempo de modificação xmlModifed (datetime) FileGetInteger (xmlFileName, FILEMODIFYDATE. False) --- verifique se há atualizações se (AllowUpdates) if (xmlModifedlt TimeLocal () - (UpdateHour 3600)) Imprimir (INAME: o arquivo xml está desactualizado) xmlUpdate () --- definir o temporizador para atualizar o arquivo xml antigo a cada x horas senão EventSetTimer (UpdateHour 3600) - - Coloque o interruptor do canto do painel (Corner) CORNERLEFTUPPER. X0 5 x1 165 x2 15 xf 340 xp 390 âncora 0 caso de ruptura CORNERRIGHTUPPER. X0 455 x1 265 x2 440 xf 110 xp 60 âncora 0 caso de ruptura CORNERRIGHTLOWER. X0 455 x1 265 x2 440 xf 110 xp 60 âncora 2 caso de ruptura CORNERLEFTLOWER. X0 5 x1 165 x2 15 xf 340 xp 390 âncora 2 quebra --- nome do indicador IndicatorShortName (INAME) --- retorno (INITSUCCEEDED) --------------------- --------------------------------------------- Função de iteração do indicador personalizado - -------------------------------------------------- --------------- int OnCalculate (const int ratestotal, const int prevcalculated, const datatime amptime, const double ampopen, const double amphigh, const double amplow, const double ampclose, const long amptickvolume, Constante long ampvolume, const int ampspread) --- --- POR AUTORES COM ALGUMAS MODIFICAÇÕES --- defina o XML Tags, Vars string sTags 7 string eTags 7 int index 0 int next - 1 int BoEvent 0, begin 0, end 0 String myEvent --- Minutos cálculo data-hora EventTime 0 int EventMinute 0 --- divide as moedas na seqüência de duas partes MainSymbol StringSubstr (Symbol (), 0. 3) string SecondSymbol StringSubstr (Symbol (), 3. 3) --- Loop para obter os dados de tags xml enquanto (verdadeiro) Bo Event StringFind (sData, lteventgt, BoEvent) se (BoEvent-1) quebrar BoEvent 7 next StringFind (sData, lteventgt, BoEvent) se (próximo - 1) quebrar myEvent StringSubstr (sData, BoEvent, next-BoEvent) BoEvent próximo início 0 para (Int i 0 ilt 7 i) Eventindexi next StringFind (myEvent, sTagsi, begin) --- Dentro deste evento, se a tag não for encontrada, deve estar faltando ignorá-lo se (próximo - 1) continuar mais --- Devemos Descobriu o sTag ok. --- Avance após a tag de início beginnext StringLen (sTagsi) end StringFind (myEvent, eTagsi, begin) --- Encontre o início da etiqueta final e Obtenha dados entre as tags de início e fim se (endgtbegin ampamp end - 1) Eventindexi StringSubstr (myEvent , Begin-end-begin) --- filtros que definem se queremos ignorar essas moedas ou eventos específicos se (ReportActive ampamp MainSymbolEventindexCOUNTRY ampamp SecondSymbolEventindexCOUNTRY) continue se (IsCurrency (EventindexCOUNTRY)) continue se (IncludeHigh ampamp EventindexIMPACT High) continue se ( IncludeMedium ampamp EventindexIMPACT Medium) continue se (IncludeLow ampamp EventindexIMPACT Low) continue se (IncludeSpeaks ampamp StringFind (EventindexTITLE, Speaks) - 1) continue se (Eventholdindevents ampamp EventindexIMPACT Holiday) continue se (EventindexTIME All Day EventindexTIME Tentative EventindexTIME) continue se (FindKeyword) Se (StringFind (EventindexTITLE, FindKeyword) - 1) continue se (IgnoreKeyword) se (StringFind (Eventind ExTITLE, IgnoreKeyword) - 1) continue --- às vezes eles esquecem de remover as tags :) if (StringFind (EventindexTITLE, ltCDATA) - 1) StringReplace (EventindexTITLE, ltCDATA. ) If (StringFind (EventindexTITLE, gt) - 1) StringReplace (EventindexTITLE, gt.) If (StringFind (EventindexTITLE, gt) - 1) StringReplace (EventindexTITLE, gt.) --- if (StringFind (EventindexFORECAST, amplt) - 1 ) StringReplace (EventindexFORECAST, amplt.) If (StringFind (EventindexPREVIOUS, amplt) - 1) StringReplace (EventindexPREVIOUS, amplt.) --- configure alguns valores (traços) se vazio se (EventindexFORECAST) EventindexFORECAST --- if (EventindexPREVIOUS) EventindexPREVIOUS --- --- Converter o tempo do evento para o tempo MT4 EventTime datetime (MakeDateTime (EventindexDATE, EventindexTIME)) --- calcular quantos minutos antes do evento (pode ser negativo) EventMinute int (EventTime - TimeGMT ()) 60 --- Alerta uma vez se (EventMinute 0 ampamp AlertTimeEventTime) FirstAlert false SecondAlert false AlertTimeEventTime --- Exclua o evento após x minutos se (EventMinuteEventDisplaylt 0) continuar --- Defina buffers MinuteBufferindexEventMinute ImpactBufferindexImpactToNumber (Eventinde XIMPACT) index --- loop para definir arraysbuffers que usa para desenhar objetos e alertar para (int i 0 iltindex i) para (int ni nlt 10 n) eTitlen EventiTITLE eCountryn EventiCOUNTRY eImpactn EventiIMPACT eForecastn EventiFORECAST ePreviousn EventiPREVIOUS eTimen datetime (MakeDateTime (EventiDATE, EventiTIME)) - TimeGMTOffset () eMinutesn (int) MinuteBufferi --- Verifique se há algum evento se (ObjectFind (eTitlen) 0) IsEvent true --- verifique então chamar chamar a função de alerta se (IsEvent) DrawEvents () else Draw ( Não há mais eventos. SEM MAIS EVENTOS. 14. Arial Black, RemarksColor, 2. 10. 30. Obter algum descanso) --- função de informação de chamada se (ShowInfo) SymbolInfo () --- valor de retorno de prevcalculated para retorno de chamada seguinte (ratestotal) ------ -------------------------------------------------- ---------- Função do temporizador -------------------------------------- ---------------------------- void OnTimer () --- Imprimir (INAME: arquivo xml está desatualizado) xmlUpdate () - - ------------------------------------------------ ------------------ Deinitialização ------------------------------- ----------------------------------- void OnDeinit (const int reason) --- for (int i ObjectsTotal () Igt 0 i--) nome da string Nome do objeto (i) se (StringFind (nome, INAME) 0) ObjectDelete (nome) --- Executar o temporizador de atualização somente se removido se (motivo 1) EventKillTimer () --- - -------------------------------------------------- --------------------------------------- Baixe o arquivo XML do forexfactory para Windows 7 e posterior arquivo O caminho seria: C: UsersxxxAppDataRoamingMeta QuotesTerminalxxxxxxxxxxxxxxxMQL4FilesxmlFileName ------------------------------------------------- ------------------------------------------ void xmlDownload () --- ResetLastError () String sUrl forexfactoryffcalendarthisweek. xml string FilePath StringConcatenate (TerminalInfoString (TERMINALDATAPATH), MQL4files, xmlFileName) int FileGetURLDownloadToFileW (NULL, sUrl, FilePath, 0. NULL) se (FileGet 0) PrintFormat (INAME: s arquivo baixado com sucesso, xmlFileName) - - verifique se há erros diferentes PrintFormat (INAME: não foi possível baixar o arquivo s, o código de erro d, xmlFileName, GetLastError ()) --- --------------------- --------------------------------------------- Leia o arquivo XML - -------------------------------------------------- --------------- void xmlRead () --- ResetLastError () int FileHandle FileOpen (xmlFileName, FILEBIN FILEREAD) se (FileHandle INVALIDHANDLE) --- receber o tamanho do arquivo ulong size FileSize ( FileHandle) --- ler dados do arquivo enquanto (FileIsEnding (FileHandle )) SData FileReadString (FileHandle, (int) size) --- feche FileClose (FileHandle) --- verifique se existem erros Other PrintFormat (INAME: falhou ao abrir o arquivo s, o código de erro d, xmlFileName, GetLastError ()) --- -------------------------------------------------- ---------------- Verifique a atualização XML ------------------------------ ------------------------------------ void xmlUpdate () --- não faça o download no sábado se ( TimeDayOfWeek (Midnight) 6) return else Print (INAME: verifique se há atualizações. ) Imprimir (INAME: excluir arquivo antigo) FileDelete (xmlFileName) xmlDownload () xmlRead () xmlModifed (datetime) FileGetInteger (xmlFileName, FILEMODIFYDATE. False) PrintFormat (INAME: atualizado com sucesso modificado pela última vez: s, (string) xmlModifed) --- -------------------------------------------------- ---------------- Painel de desenho e eventos no gráfico --------------------------- --------------------------------------- void Cadeia DrawEvents () FontName Arial int FontSize 8 string EToolTip --- draw backbround data nota especial se (ShowPanel ampamp ShowPanelBG) eToolTip Hover no Evento Draw (BG. Gggg. 85. Webdings, Pbgc, Corner, x0, 3, eToolTip) Draw (Data, DayToStr (Midnight), MonthToStr () (String) TimeDay (Midnight), FontSize 1. Arial Black, TitleColor, Corner, x2, 95. Hoje) Draw (Title, PanelTitle, FontSize, FontName, TitleColor, Corner, x1, 95. Título do painel) Draw (Spreator . ------. 10. Arial, RemarksColor, Corner, x2, 83, eToolTip) --- desenhe funções de alerta de objetos para (int i 0 Ilt 5 i) eToolTipeTitlei nCurrency: eCountryi nTime para a esquerda: (string) eMinutesi Minutes nImpact: eImpacti --- cor de cor de impacto EventColorImpactToColor (eImpacti) --- previousforecast cor de cor ForecastColorPreviousColor if (ePreviousigteForecasti) ForecastColorNegativeColor else if (ePreviousilteForecasti) ForecastColorPositiveColor --- Cor do evento passado se (eMinutesilt 0) EventColorForecastColorPreviousColorRemarksColor --- painel se (ShowPanel) --- data do tempo título moeda Draw (Event (string) i, DayToStr (eTimei) TimeToStr (eTimei, TIMEMINUTES) eCountryi eTitlei, FontSize, FontName, EventColor, Corner, x2, 70 - i 15, eToolTip) --- previsão Draw (Event Forecast (string) i, eForecasti, FontSize, FontName, ForecastColor, Corner, xf, 70 - i 15, Forecast: eForecasti) --- anterior Draw (Evento anterior (string) i, ePreviousi, FontSize, FontName, PreviousColor, Corner, xp, 70 - i 15, Anterior: ePreviousi) --- notícias verticais se (ShowVerticalNews) DrawLine (Event Line (String) i, eTimei (ChartTimeOffset 3600), EventColor, eToolTip) --- Definir string de mensagem de alerta AlertMessage (string) eMinutesi Minutos até eTitlei Evento no eCountryi nImpact: eImpacti nForecast: eForecasti nPrevious: ePreviousi --- primeiro alerta se (Alert1Minutes - 1 ampamp eMinutesiAlert1Minutes ampamp FirstAlert) setAlerts (First Alert AlertMessage) FirstAlert true --- segundo alerta se (Alert2Minutes - 1 ampamp eMinutesiAlert2Minutes ampamp SecondAlert) setAlerts (Second Alert AlertMessage) SecondAlert true --- break se não houver mais dados se (eTitleieTitlei 1 ) Desenhe (INAME não há mais eventos. SEM MAIS EVENTOS. 8. Arial, RemarksColor, Corner, x2, 50 - i 15. Descanse) break --- --------------------------- -------------------------------------------------- ------------------ Subrutina: para ID moeda, mesmo se broker adicionou um prefixo ao símbolo, e é usado para determinar as notícias a serem exibidas, com base nas entradas externas do usuário - por autores (Modificado) -------------------------------------------- -------------------------------------------------- - bool IsCurrency (símbolo de seqüência) --- se (ReportForUSD ampamp symbol USD) retornar (true) else se (ReportForGBP ampamp symbol GBP) retornar (true) else se (ReportForEUR ampamp symbol EUR) retornar (true) else if (ReportForCAD ampamp Símbolo CAD) retorna (true) senão se (ReportForAUD ampamp symbol AUD) retornar (true) else se (ReportForCHF ampamp symbol CHF) retornar (true) else se (ReportForJPY ampamp symbol JPY) retornar (true) else if (ReportForNZD ampamp symbol NZD ) Return (true) else se (ReportForCNY ampamp symbol CNY) retornar (True) return (false) --- ---------------------------------------- -------------------------- Converte a data do amplificador de tempo ff em yyyy. mm. dd hh: mm - by deVries ------- -------------------------------------------------- --------- string MakeDateTime (string strDate, string strTime) --- int n1stDash StringFind (strDate, -) int n2ndDash StringFind (strDate, -. N1stDash 1) string strMonth StringSubstr (strDate, 0. 2) string strDay StringSubstr (strDate, 3. 2) string strYear StringSubstr (strDate, 6. 4) int nTimeColonPos StringFind (strTime,:) string strHour StringSubstr (strTime, 0, nTimeColonPos ) String strMinute StringSubstr (strTime, nTimeColonPos 1. 2) string strAMPM StringSubstr (strTime, StringLen (strTime) - 2) int nHour24 StrToInteger (strHour) se ((strAMPM pm strAMPM PM) ampamp nHour24 12) nHour24 12 se ((strAMPM am StrampM AM) ampamp nHour24 12) nHour24 0 string strHourPad se (nHour24lt 10) strHourPad 0 return (StringConcatenate (strYear, .. strMonth, ... strDay,. StrHourPad, nHour24,:. StrMinute)) --- ----- -------------------------------------------------- ----------- definir impacto Cor - pelos autores --------------------------------- --------------------------------- cor ImpactToColor (string impact) --- if (impacto High) return (HighImpactColor ) Senão se (Impacto Médio) retornar (MediumImpactColor) senão se (eu Pact Low) return (LowImpactColor) senão se (impacto Holiday) retornar (HolidayColor) novamente retornar (RemarksColor) --- ------------------------- ----------------------------------------- Impacto ao número - pelos autores --- -------------------------------------------------- ------------- int ImpactToNumber (string impact) --- se (impacto Alto) retorna (3) senão se (impacto Médio) retorna (2) senão se (impacto baixo) retorna (1 ) Else return (0) --- ----------------------------------------- ------------------------- Converta o dia da semana para o texto ------------------ ------------------------------------------------ cadeia DayToStr (Tempo de data e hora) Este tempo de tempo Duração da hora (horário) caso do interruptor do dia da cadeia (ThisDay) 0. dia Caso de ruptura do sol 1. dia Mon caso de quebra 2. dia caso de ruptura do maré 3. dia caso de quebra do mar 4. dia. Fri break case 6. dia Sat quebra retorno (dia) -------------------------------------- ---------------------------- Converter meses para texto ---------- -------------------------------------------------- ------ string MonthToStr () int ThisMonth Month () string month switch (ThisMonth) caso 1. mês Jan break case 2. mês fevereiro break case 3. mês Mar break case 4. mês Abr break case 5. month May Caso de ruptura 6. mês caso de quebra de junho 7 meses caso de quebra de julho caso de ruptura de agosto mês 8. caso de intervalo de agosto mês de ruptura de setembro caso de ruptura de outubro mês de ruptura de outubro mês de novembro caso de ruptura de novembro mês -------------------------------------------------- ------------- Tempo da vela Tempo de propagação à esquerda --------------------------------- --------------------------------- void SymbolInfo () --- string TimeLeft TimeToStr (Tempo 0 Período () 60 - TimeCurrent (), TIMEMINUTES TIMESECONDS) string Spread DoubleToStr (MarketInfo (Symbol (), MODESPREAD) Factor, 1) DayClose duplo iClose (NULL. PERIODD1. 1) se (DayClose 0) double Strength ((Bid - DayClose) DayClose) 100 string Etiqueta DoubleToStr (Strength, 2) Spread TimeLeft ENUMBASECORNER canto 1 se (canto 1) canto 3 seta seta q se (Strengthgt 0) seta p string tooltip Força Deslizamento Candle Time Draw (INAME: info, Label, InfoFontSize, Calibri, InfoColor, canto, 120. 20, tooltip) Desenho (INAME: seta de informações, seta, InfoFontSize - 2. Wingdings 3, InfoColor, canto, 130. 18, Tooltip) --- --------------------------------------------- --------------------- desenhe o texto do evento -------------------------- ---------------------------------------- void Draw (nome do string, rótulo, int Tamanho, fonte de string, cor clr, ENUMBASECORNER c, int x, int y, string tooltip) --- nameINAME: name int windows 0 if (AllowSubwindow ampamp WindowsTotal () gt 1) windows 1 ObjectDelete (nome) ObjectCreate (name, OBJLABEL , Windows, 0. 0) ObjectSetText (nome, etiqueta, tamanho, fonte, clr) ObjectSet (nome, OBJPROPCORNER, c) ObjectSet (nome, OBJPROPXDISTAN CE, x) ObjectSet (nome, OBJPROPYDISTANCE, y) --- justifique o texto ObjectSet (nome, OBJPROPANCHOR, âncora) ObjectSetString (0, name, OBJPROPTOOLTIP, tooltip) ObjectSet (nome, OBJPROPSELECTABLE. 0) --- --------------------------------------------- --------------------- desenhar linhas verticais -------------------------- ---------------------------------------- void DrawLine (nome do string, hora da data, cor Clr, string tooltip) --- nameINAME: nome ObjectDelete (nome) ObjectCreate (nome, OBJVLINE. 0, time, 0) ObjectSet (nome, OBJPROPCOLOR, clr) ObjectSet (nome, OBJPROPSTYLE. 2) ObjectSet (nome, OBJPROPWIDTH. ) ObjectSetString (0, name, OBJPROPTOOLTIP, tooltip) --- ------------------------------------ ------------------------------ Notificações ------------------- ----------------------------------------------- void setAlerts ( Mensagem de string) --- if (PopupAlerts) Alerta (mensagem) se (SoundAlerts) PlaySound (AlertSoundFile) se (NotificationAlerts) SendNotification (mensagem) se (EmailAlerts) SendMail (INAME, mensagem) --- ------- -------------------- FIM ----------------------------- ----- FF Calendar Indicator para MT Tanto eu como um companheiro experimentaram uma tremenda desaceleração i N o desempenho geral dos nossos computadores desde o download e a inserção do indicador maravilhoso do Calendário Forex Factory (FFCalv03.mq4). Atuou como um tipo de desaceleração do vírus. O computador declarou Memória insuficiente. Ambos aplicamos a manutenção corretiva (remoção de spyware, desfragmentação, programas de inicialização limpos, verificação de vírus, revisão de alocação de memória, etc.) e os computadores (1gig ram Pent.4) ainda funcionaram muito devagar. Quando o rastreamos de volta a este sendo o último download, removemos esse indicador, os computadores voltaram ao normal. Estamos tropeçando ou alguém experimentou isso? Eu adoro o indicador e o trabalho colocado é fabuloso. Mas não estou usando agora por causa dos efeitos. Qualquer contribuição seria maravilhosa. Eu também estou tendo o mesmo problema. Mas isso só aconteceu com o PC antigo e lento. Isso funciona bem no PC mais rápido. Como muitos gráficos você está aberto no mesmo tempo, mais gráfico você será aberto com esse indicador, você precisará de mais tempo para isso Para carregar cja sempre produzindo alguns indicadores agradáveis. Aqui está o meu pequeno add on First load sdx, então carregue 00current na mesma janela secundária e carregue FFcal na janela principal. Eu acho muito útil. Não esqueça de clicar em permitir importações de DLL no painel principal do indicador FFcal, caso contrário você não o verá aumentar: Aqui está o meu Little add on First load sdx, então carregue 00current na mesma janela secundária, em seguida, carregue FFcal na janela principal Eu acho muito útil Não esqueça de clicar em permitir importações de DLL no painel principal do indicador FFcal, caso contrário você não vai ver o que você quer dizer sub janela e principal Verifique se qualquer coisa aparece quando eu carrego o indicador de preço atual para o indicador de calor FF, é possível exibir o resultado após a divulgação das notícias

Comments