Como criar regra de coloração para o MT4

 

Boa tarde pessoal.

Quero criar uma regra de coloração para o MT4, se o candle fechar acima da media movel de 9, o candle fica verde, se fechar abaixo fica vermelho.

Alguém pode me ajudar a criar essa regra?

 

Boa tarde Paulo,

Seria isso?

EDIT:  ESSE CÓDIGO É PRA MT5!

//+------------------------------------------------------------------+
//|                                                      Media 9.mq5 |
//|                                    Sidnei da Silva Santos Junior |
//|                     https://www.mql5.com/pt/users/sidneijunior13 |
//+------------------------------------------------------------------+
#property copyright "Sidnei da Silva Santos Junior"
#property link      "https://www.mql5.com/pt/users/sidneijunior13"
#property version   "1.00"
#property indicator_chart_window
#property indicator_buffers 6
#property indicator_plots   1
//--- plot Coloracao_Media
#property indicator_label1  "Coloracao_Media"
#property indicator_type1   DRAW_COLOR_CANDLES
#property indicator_color1  clrRed,clrSpringGreen
#property indicator_style1  STYLE_SOLID
#property indicator_width1  1
//--- input parameters
input int      Periodo=9;//Periodo da Média
input ENUM_MA_METHOD      Tipo=MODE_EMA;//Tipo de Média
int handle_media;
//--- indicator buffers
double         Coloracao_MediaBuffer1[];
double         Coloracao_MediaBuffer2[];
double         Coloracao_MediaBuffer3[];
double         Coloracao_MediaBuffer4[];
double         Coloracao_MediaColors[];
double         Media[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping
   SetIndexBuffer(0,Coloracao_MediaBuffer1,INDICATOR_DATA);
   SetIndexBuffer(1,Coloracao_MediaBuffer2,INDICATOR_DATA);
   SetIndexBuffer(2,Coloracao_MediaBuffer3,INDICATOR_DATA);
   SetIndexBuffer(3,Coloracao_MediaBuffer4,INDICATOR_DATA);
   SetIndexBuffer(4,Coloracao_MediaColors,INDICATOR_COLOR_INDEX);
   SetIndexBuffer(5,Media,INDICATOR_CALCULATIONS);
   handle_media = iMA(Symbol(),Period(),Periodo,0,Tipo,PRICE_CLOSE);
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   int inicio,barras;
   if(prev_calculated==0){inicio=0;barras=rates_total;}else{inicio=prev_calculated-1;barras=Periodo+1;}
   
   
   CopyBuffer(handle_media,0,0,barras,Media);
   
   for(int i=inicio;i<rates_total;i++){
      
      Coloracao_MediaBuffer1[i]=open[i];
      Coloracao_MediaBuffer2[i]=high[i];
      Coloracao_MediaBuffer3[i]=low[i];
      Coloracao_MediaBuffer4[i]=close[i];
   
      if(close[i]>Media[i]){Coloracao_MediaColors[i]=1;}else{Coloracao_MediaColors[i]=0;}
   }
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
 

Estou precisando para o MT4, tentei executar esse código no MT4 e deu erro. Poderia me ajudar a converter esse código para o MT4?

 
pauloricardoandrade:

Estou precisando para o MT4, tentei executar esse código no MT4 e deu erro. Poderia me ajudar a converter esse código para o MT4?

Você não precisa de ajuda. Você precisa de um programador.

De nada adianta você dizer "preciso de ajuda"se você não sabe programar.

Pare de abusar da boa vontade das pessoas que ainda se importam com quem REALMENTE precisa de ajuda em MQL5!

 
Se eu quiser alterar a função para colorir o candle que tenha o fechamento 2x maior que a média dos últimos 9, tenho que inserir novos buffers ou basta colocar "*2" dentro de alguma função?
 

Não tem regra de coloração para MT4 amigão.

Mas você pode ser "criativo" usando objetos ou dois buffers de cores diferentes.

Grande abraço

 
gabrielrohwedder #:
Bom dia, amigos! Alguém pode me ajudar a converter um indicador do profit para o mt5 ? É uma regra de coloração baseada no volume de negociações.. desde ja agradeço.

Fórum de negociação, sistemas de negociação automatizados e testes de estratégias de negociação

Como criar regra de coloração para o MT4

Flavio Jarabeck, 2020.11.29 00:44

Você não precisa de ajuda. Você precisa de um programador.

De nada adianta você dizer "preciso de ajuda"se você não sabe programar.

Pare de abusar da boa vontade das pessoas que ainda se importam com quem REALMENTE precisa de ajuda em MQL5!

 

Quero criar uma regra de coloração baseada em um indicador que tenho

EXemplo se sair fora do canal candle vermelho ou verde e possivel?

 
Visemensato #:

Quero criar uma regra de coloração baseada em um indicador que tenho

EXemplo se sair fora do canal candle vermelho ou verde e possivel?

Sim, é possivel. Inclusive pode ter uma percentual de quão fora tem que ir pra ter a cor se precisar. Visite a area de freelancer ou faça busca por indicadores free no marketplace.