Muitas vezes recebo emails perguntando como colorir o grafico de candlestick do Metatrader 5 a partir de uma determinada regra de cor. No CMA e no Amibroker isso e bem simples, enquanto que no MT5 a estrutura e um pouco mais avancada. Mas nao pense que isso exija grande conhecimento de programacao, na verdade basta ter um pouco de raciocinio logico e curiosidade.No site do MQL5 ha varios artigos com passo a passo de como codificar um determinado recurso, mas em varias ocasioes exige-se uma maior desenvoltura com a programacao e o leitor pode acabar se assustando. Com isso em mente, resolvi traduzir o codigo de um desses artigos para colorir candles a partir da situacao do Indice de Forca Relativa (IFR) trabalhar abaixo ou acima de 50%. O artigo original com todos os codigos esta em https://www.mql5.com/pt/articles/135.Aqui so destacarei as partes fundamentais e o codigo modificado com as explicacoes traduzidas ficara no grupo do Facebook de Dolar e Indice Futuro (aba: Arquivos). Entao vamos la:Alem de um buffer para armazenar os valores do indicador IFR, como iremos colorir o candlestick, e necessario criar um buffer para cada um dos seus 4 elementos (abertura, maxima, minima e fechamento): SetIndexBuffer(0,buffer_abe,INDICATOR_DATA); SetIndexBuffer(1,buffer_max,INDICATOR_DATA); SetIndexBuffer(2,buffer_min,INDICATOR_DATA); SetIndexBuffer(3,buffer_fec,INDICATOR_DATA);Tambem e necessario criar um buffer para armazenar as regras de cor (0 em caso afirmativo e 1 se for falso). SetIndexBuffer(4,buffer_color_line,INDICATOR_COLOR_INDEX);Como nesse exemplo usaremos duas possibilidades, e preciso indicar essa quantidade de cores PlotIndexSetInteger(0,PLOT_COLOR_INDEXES,2);E em seguida definir quais serao essas cores que o candle tera no caso de uma determina condicao ser ou nao satisfeita. PlotIndexSetInteger(0,PLOT_LINE_COLOR,0,Red); // satisfeita PlotIndexSetInteger(0,PLOT_LINE_COLOR,1,Green); // nao satisfeitaO restante do codigo e o padrao usado no MQL5 e convido o leitor a abrir o codigo completo para o seu continuo aprendizado. Aqui so quero destacar a condicao de coloracao dos candles onde a "magica" acontece.Caso a sentenca seja verdadeira o buffer de cor recebera o valor zero (0)Caso a sentenca seja falsa o buffer de cor recebera o valor um (1) if(buffer_RSI[i]<50) { buffer_color_line[i]=0; } else { buffer_color_line[i]=1; } }Pronto, agora voce tem um codigo que ira colorir o seu grafico baseado em uma regra pre-definida. A ideia e que a partir dai o leitor possa construir regras mais sofisticadas como por exemplo, tres cores para identificar quando os precos estao em tendencia de alta, de baixa ou em acumulacao. Voces ja notaram como uma afirmacao composta por numeros percentuais reforca uma ideia? Basta alguns profissionais de mercado, palestrantes, cunhados, etc. chutarem, sem qualquer comprovacao, uma suposta quantificacao para suas impressoes e imediatamente a massa de investidores compra o peixe. Entretanto, hoje com o maior acesso a softwares estatisticos e de backtest, o investidor tem condicoes de separar a realidade da fantasia.Por exemplo, se a barra atual fechar acima de sua abertura (candle positivo) sera que isso aumenta a chance da proxima barra tambem ser positiva? E o aparecimento de uma barra de baixa (candle negativo) tem influencia na barra seguinte?Vamos testar isso sobre as series historicas diarias dos 63 papeis que compoem a carteira IBOVESPA (set-dez/15). Vale destacar que alguns papeis sao listados na bolsa