Adicionando cor a um indicador - página 2

 

Eu ainda não descobri os amortecedores indicadores,

mas o seguinte código faz o que eu quero, mostra a cor Heiken Ashi atual e passada da barra.

O que ele não faz é colocá-lo em uma janela separada, e exibir SOMENTE sob a barra atual.

isso é possível? Ou eu ainda preciso descobrir o buffer indicador?

Você está lidando com um novato muito verde... obrigado pela paciência.

int start()

{

ObjetosDeleteAll();

// limpar a tabela antes de desenhar

// 5 min. de corrente

duplo aberto.5.0 =iCustom(NULL,1, "Heiken Ashi",0,2,0); //Previous Open

duplo fechamento.5.0 =iCustom(NULL,1, "Heiken Ashi",0,3,0); //Previous Close


bool Up.5.0 = (fechar.5.0>abrir.5.0);

bool Down.5.0 = (fechar.5.0<abrir.5.0);

// 5 min passado

abertura dupla.5.1 =iCustom(NULL,1, "Heiken Ashi",0,2,1); //Previous Open

duplo fechamento.5.1 =iCustom(NULL,1, "Heiken Ashi",0,3,1); //Previous Close

bool Up.5.1 = (fechar.5.1>abrir.5.1);

bool Down.5.1 = (fechar.5.1>abrir.5.1);


ObjectCreate("square1",OBJ_RECTANGLE, 0, TimeCurrent(), Ask-0.001, 0, Bid-0.001);

if(Down.5.0 == 1) ObjectSet("square1",OBJPROP_COLOR,Red);


ObjectCreate("quadrado1",OBJ_RECTANGLE, 0, TimeCurrent(), Ask-0.001, 0, Bid-0.001);

if(Down.5.0 == 0) ObjectSet("square1",OBJPROP_COLOR,White);


ObjectCreate("quadrado2",OBJ_RECTANGLE, 0, TimeCurrent(), Ask-0.0015, 0, Bid-0.0015);

if(Down.5.1 == 1) ObjectSet("square2",OBJPROP_COLOR,Red);


ObjectCreate("square2",OBJ_RECTANGLE, 0, TimeCurrent(), Ask-0.0015, 0, Bid-0.0015);

if(Down.5.1 == 0) ObjectSet("square2",OBJPROP_COLOR,White);


return(0);

}

 

Por favor, use isto para postar o código . . torna a leitura mais fácil.

 
mrchuckw:

Eu ainda não descobri os amortecedores indicadores,

mas o seguinte código faz o que eu quero, mostra a cor Heiken Ashi atual e passada da barra.

O que ele não faz é colocá-lo em uma janela separada, e exibir SOMENTE sob a barra atual.

isso é possível? Ou eu ainda preciso descobrir o buffer indicador?

Acho que você precisaria desenhar um indicador na janela separada para obter a janela em primeiro lugar para que você pudesse adicionar os objetos a ela...
 

algo como isto

double adUpBuffer[],
       adDnBuffer[];
//---- indicator colors
color  cDirection[2]={LimeGreen,FireBrick};
string sDirection[2]={"up", "down"};
int    iSquare=110;
double dGap=10*Point
//+------------------------------------------------------------------+
//   Custom indicator initialization function                        |
//+------------------------------------------------------------------+
int init()
  {
//---- drawing settings
   IndicatorBuffers(2);
   for(int i=0;i<2;i++){
   SetIndexStyle(i,DRAW_ARROW,clrDirection[i]);
   SetIndexArrow(i,iSquare);
   SetIndexDrawBegin(i,12);
   SetIndexLabel(i,sDirection[i]);}
//---- 2 indicator buffers mapping
   SetIndexBuffer(0,adUpBuffer);
   SetIndexBuffer(1,adDnBuffer);
//---- initialization done
   return(0);
  }


      if(Up.5.0)
           adUpBuffer[i]=Low[i]-dGap;
      else adDnBuffer[i]=NULL;
      if(Dn.5.0)
           adDnBuffer[i]=High[i]+dGap;}
      else adDnBuffer[i]=NULL;} 
 

Eu não sou bom com Indicadores . . dê uma olhada nisto para ver se ele lhe dá o que você precisa . .

Arquivos anexados:
ashi1.mq4  3 kb
 

ok...estou trabalhando nisso... mas você assume que eu conheço MUITO mais do que eu conheço.

Em anexo está todo o meu programa de indicadores até agora. Como eu colocaria seu código nele? Ou eu crio um programa totalmente novo?

Tentei colocá-lo no melhor que pude, mas não consigo compilá-lo. Ele não gosta do duplo dGap=10*Point mesmo depois de eu ter colocado um ; depois dele.

E houve uma tonelada de outros erros de compilação. Acho que sou suficientemente denso para não saber o que fazer agora.

Arquivos anexados:
objects2.mq4  3 kb
 
mrchuckw:

ok...estou trabalhando nisso... mas você assume que eu conheço MUITO mais do que eu conheço.

Em anexo está todo o meu programa de indicadores até agora. Como eu colocaria seu código nele? Ou eu crio um programa totalmente novo?

Tentei colocá-lo no melhor que pude, mas não consigo compilá-lo. Ele não gosta do duplo dGap=10*Point mesmo depois de eu ter colocado um ; depois dele.

E houve uma tonelada de outros erros de compilação. Acho que sou suficientemente denso para não saber o que fazer agora.

Basta baixar meu código, copiá-lo para sua estrutura de diretório MT4 em Indicadores. parar e reiniciar o MT4 e depois adicionar o Indicador a um gráfico ... se você estiver usando buffers do Indicador, você não usa objetos.
 

onde eu faço o download de seu código?

veja o quão denso eu sou?

 
mrchuckw:

onde eu faço o download de seu código?

veja o quão denso eu sou?

Está anexado ao meu posto, um par de postos acima . . ashi1.mq4
 

isto é quase perfeito. Eu tenho jogado com ela, e tenho tido uma bola.

Acho que posso tê-la assassinado, mas agora tenho-a colocando os quadrados em uma janela separada.

Essa parte está funcionando perfeitamente. Agora... Não consigo descobrir como ter todos os quadrados em uma linha perfeita.

Porque, eu quero colocar outra linha debaixo dessa. Acho que posso descobrir como fazer isso... pelo menos vou me divertir tentando.

a nova linha será um período de tempo maior. E a 3ª linha seria ainda outro prazo maior.

Aqui está a maneira como sua ea cuida depois de eu ter brincado com ela. Você pode me dizer como colocar o quadrado em uma linha reta? ?

Obrigado

ps... Há algum tempo eu brinco com isto, e não consigo descobrir como conseguir uma segunda e terceira linha, e torná-las retas.

Se você pudesse me ajudar com isso, eu agradeceria. O segundo arquivo é a minha tentativa na segunda linha.

Arquivos anexados:
ashi1_1.mq4  3 kb
ashi1-a.mq4  3 kb