- Tipos de Objeto
- Propriedades do Objeto
- Métodos de Vinculação de Objeto
- Canto de Gráfico
- Visibilidade de Objetos
- Níveis de Onda de Elliott
- Objetos Gann
- Cores Web
- Wingdings
Propriedades do Objeto
Os objetos gráficos podem ter muitas propriedades dependendo do tipo de objeto. A configuração e a obtenção de valores das propriedades dos objetos são efetuadas de acordo com as funções de trabalho com objetos gráficos.
Todos os objetos usados na análise técnica são vinculados aos gráficos nas coordenadas de preço e tempo: linha de tendência, canais, ferramentas de Fibonacci, etc. Mas há uma série de objetos de apoio projetados para melhorar a interface, e que estão vinculados à parte sempre visível do gráfico (janela principal ou subjanela do gráfico do indicador):
Objeto |
Identificador |
X/Y |
Width/Height |
Date/Price |
|||
---|---|---|---|---|---|---|---|
Text |
|
|
Sim |
|
Sim |
Sim |
|
Label |
Sim |
Sim (apenas leitura) |
|
Sim |
Sim |
Sim |
|
Button |
Sim |
Sim |
|
Sim |
|
|
|
Bitmap |
|
Sim (apenas leitura) |
Sim |
|
Sim |
|
|
Bitmap Label |
Sim |
Sim (apenas leitura) |
|
Sim |
Sim |
|
|
Edit |
Sim |
Sim |
|
Sim |
|
|
|
Rectangle Label |
Sim |
Sim |
|
Sim |
|
|
Na tabela são utilizadas as seguintes denominações:
- X/Y as coordenadas do ponto âncora são especificadas em pixels em relação a um dos cantos do gráfico;
- Width/Height os objetos têm largura e altura. Se você definir "apenas leitura", isso significa que os valores para largura e altura são calculados somente após o processamento do objeto no gráfico;
- Date/Price as coordenadas do ponto âncora são definidas pelo par data/preço;
- OBJPROP_CORNER define o ângulo do gráfico, que especifica as coordenadas do ponto de âncora. Pode ser um dos 4 valores de enumeração ENUM_BASE_CORNER;
- OBJPROP_ANCHOR define a posição do ponto de âncora no objeto, e pode ser um dos 9 valores de enumeração ENUM_ANCHOR_POINT. Precisamente a partir desse ponto até ao canto selecionado são expecificadas as cordenadas em pixels;
- OBJPROP_ANGLE define o ângulo de rotação do objeto no sentido anti-horário.
As funções que definem as propriedades dos objetos gráficos, bem como as operações ObjectCreate() e ObjectMove() para criar e mover objetos ao longo do gráfico são, na verdade, usadas para enviar comandos para o gráfico. Se essas funções forem executadas com êxito, o comando será incluído na fila comum dos eventos do gráfico. As mudanças visuais nas propriedades dos objetos gráficos são implementadas ao lidar com a fila dos eventos do gráfico.
Assim, não espere uma atualização visual imediata de objetos gráficos após chamar essas funções. Geralmente, os objetos gráficos no gráfico são atualizados automaticamente pelo terminal após a mudança de eventos - a chegada de uma nova cotação, o redimensionamento da janela de gráfico, etc. Use a função ChartRedraw() para forçar a atualização dos objetos gráficos.
Para funções ChartSetDouble() e ChartGetDouble()
Identificador |
Descrição |
Tipo de Propriedade |
---|---|---|
OBJPROP_COLOR |
Cor |
color |
OBJPROP_STYLE |
Estilo |
|
OBJPROP_WIDTH |
Espessura de linha |
int |
OBJPROP_BACK |
Objeto no pano de fundo |
bool |
OBJPROP_ZORDER |
Prioridade de um objeto gráfico para receber eventos de clicagem em um gráfico (CHARTEVENT_CLICK). O valor zero default é definido ao se criar um objeto; a prioridade pode ser aumentada se necessário. Ao colocar objetos um sobre o outro, somente aquele com a maior prioridade receberá o evento CHARTEVENT_CLICK. |
long |
OBJPROP_FILL |
Preenche um objeto com cor (para OBJ_RECTANGLE, OBJ_TRIANGLE, OBJ_ELLIPSE, OBJ_CHANNEL, OBJ_STDDEVCHANNEL, OBJ_REGRESSION) |
bool |
OBJPROP_HIDDEN |
Proíbe exibir o nome de um objeto gráfico na lista de objetos do menu do terminal "Gráficos" - "Objetos" - "Lista de objetos". O valor true permite ocultar um objeto da lista. Por default, true é definido para os objetos que exibem eventos de calendário, histórico de negociação e para objetos criados a partir de programas MQL5. Para ver tais objetos gráficos e acessar suas propriedades, clique no botão "TODOS" na janela "Lista de objetos". |
bool |
OBJPROP_SELECTED |
Objeto é selecionado |
bool |
OBJPROP_READONLY |
Capacidade de editar texto no objeto Edit |
bool |
OBJPROP_TYPE |
Tipo de objeto |
ENUM_OBJECT r/o |
OBJPROP_TIME |
Coordenada de tempo |
datetime modificador=número do ponto de ancoragem |
OBJPROP_SELECTABLE |
Disponibilidade de objeto |
bool |
OBJPROP_CREATETIME |
Hora de criação do objeto |
datetime r/o |
OBJPROP_LEVELS |
Número de níveis |
int |
OBJPROP_LEVELCOLOR |
Cor das linhas de nível |
color modificador=número de nível |
OBJPROP_LEVELSTYLE |
Estilo da linha de nível |
ENUM_LINE_STYLE modificador=número de nível |
OBJPROP_LEVELWIDTH |
Espessura do nível de linha |
int modificador=número de nível |
OBJPROP_ALIGN |
Alinhamento de texto horizontal no objeto "Edit" (OBJ_EDIT) |
|
OBJPROP_FONTSIZE |
Tamanho de fonte |
int |
OBJPROP_RAY_LEFT |
Raios indo para esquerda |
bool |
OBJPROP_RAY_RIGHT |
Raios indo para direita |
bool |
OBJPROP_RAY |
Uma linha vertical indo através de todas as janelas de um gráfico |
bool |
OBJPROP_ELLIPSE |
Exibição da elipse completa do objeto Arco de Fibonacci (OBJ_FIBOARC) |
bool |
OBJPROP_ARROWCODE |
Código de seta para o objeto Seta |
uchar |
OBJPROP_TIMEFRAMES |
Visibilidade de um objeto nas janelas de tempo |
conjunto de flags |
OBJPROP_ANCHOR |
Localização do ponto de ancoragem de um objeto gráfico |
ENUM_ARROW_ANCHOR (for OBJ_ARROW), ENUM_ANCHOR_POINT (for OBJ_LABEL, OBJ_BITMAP_LABEL and OBJ_TEXT) |
OBJPROP_XDISTANCE |
A distância em pixels ao longo do eixo X a partir do canto de vinculação (see note) |
int |
OBJPROP_YDISTANCE |
A distância em pixels ao longo do eixo Y a partir do canto de vinculação (see note) |
int |
OBJPROP_DIRECTION |
Tendência do objeto Gann |
|
OBJPROP_DEGREE |
Nível de marcação da Onda de Elliott |
|
OBJPROP_DRAWLINES |
Exibição de linhas para marcação da Onda de Elliott |
bool |
OBJPROP_STATE |
Estado do botão (pressionado / não pressionado) |
bool |
OBJPROP_CHART_ID |
ID do objeto "Chart" (OBJ_CHART). Permite trabalhar com as propriedades deste objeto como um gráfico normal usando as funções descritas em Operações de Gráfico, mas existem algumas exceções. |
long r/o |
OBJPROP_XSIZE |
O tamanho do objeto Chart ao longo do eixo X (largura em pixels) é especificado para objetos OBJ_LABEL (read only), OBJ_BUTTON, OBJ_CHART, OBJ_BITMAP, OBJ_BITMAP_LABEL, OBJ_EDIT, OBJ_RECTANGLE_LABEL. |
int |
OBJPROP_YSIZE |
O tamanho do objeto Chart ao longo do eixo X (largura em pixels) é especificado para objetos OBJ_LABEL (read only), OBJ_BUTTON, OBJ_CHART, OBJ_BITMAP, OBJ_BITMAP_LABEL, OBJ_EDIT, OBJ_RECTANGLE_LABEL. |
int |
OBJPROP_XOFFSET |
A coordenada X do canto superior esquerdo da área visível retangular nos objetos gráficos "Bitmap Label" e "Bitmap" (OBJ_BITMAP_LABEL e OBJ_BITMAP). O valor é definido em pixels em relação ao canto superior esquerdo da imagem original. |
int |
OBJPROP_YOFFSET |
A coordenada X do canto superior esquerdo da área visível retangular nos objetos gráficos "Bitmap Label" e "Bitmap" (OBJ_BITMAP_LABEL e OBJ_BITMAP). O valor é definido em pixels em relação ao canto superior esquerdo da imagem original. |
int |
OBJPROP_PERIOD |
Janela de tempo para o objeto Chart |
|
OBJPROP_DATE_SCALE |
Exibição da escala de tempo para o objeto Chart |
bool |
OBJPROP_PRICE_SCALE |
Exibição da escala de preço para o objeto Chart |
bool |
OBJPROP_CHART_SCALE |
A escala para o objeto Chart |
int valor na faixa de 05 |
OBJPROP_BGCOLOR |
A cor de fundo para OBJ_EDIT, OBJ_BUTTON, OBJ_RECTANGLE_LABEL |
color |
OBJPROP_CORNER |
O canto do gráfico para linkar um objeto gráfico |
|
OBJPROP_BORDER_TYPE |
Tipo de borda para o objeto "Rectangle label" |
|
OBJPROP_BORDER_COLOR |
Cor de borda para os objetos OBJ_EDIT e OBJ_BUTTON |
color |
Ao usar operações de gráfico para o objeto "Chart" (OBJ_CHART), as seguintes limitações são impostas:
- Ele não pode ser fechado usando ChartClose();
- Ativo/período não podem ser alterados usando a função ChartSetSymbolPeriod();
- As seguintes propriedades são sem efeito: CHART_SCALE, CHART_BRING_TO_TOP, CHART_SHOW_DATE_SCALE e CHART_SHOW_PRICE_SCALE (ENUM_CHART_PROPERTY_INTEGER).
Para os objetos OBJ_BITMAP_LABEL e OBJ_BITMAP, um modo especial de exibição de imagem pode ser definido por programação. Neste modo, somente parte da imagem original (na qual uma área visível retangular é aplicada) é exibida, enquanto o resto da imagem fica invisível. O tamanho desta área deve ser definido usando a propriedade OBJPROP_XSIZE e OBJPROP_YSIZE. A área visível pode ser "movida" somente dentro da imagem original usando as propriedades OBJPROP_XOFFSET e OBJPROP_YOFFSET.
Para objetos de tamanho fixo: OBJ_BUTTON, OBJ_RECTANGLE_LABEL, OBJ_EDIT e OBJ_CHART propriedades OBJPROP_XDISTANCE e OBJPROP_YDISTANCE defina a posição do canto superior esquerdo do ponto do objeto em relação ao canto de gráfico (OBJPROP_CORNER), a partir das quais as coordenadas X e Y serão contadas em pixels.
Para as funções ObjectSetDouble() e ObjectGetDouble()
Identificador |
Descrição |
Tipo de Propriedade |
---|---|---|
OBJPROP_PRICE |
Coordenada de Preço |
double modificador=número do ponto de ancoragem |
OBJPROP_LEVELVALUE |
Valor de nível |
double modificador=número de nível |
OBJPROP_SCALE |
Escala (propriedades de objetos Gann e Arcos de Fibonnacci) |
double |
OBJPROP_ANGLE |
Ângulo. Para os objetos sem ângulo especificado, criado a partir de um programa, o valor é igual a EMPTY_VALUE |
double |
OBJPROP_DEVIATION |
Desvio para o Canal de Desvio Padrão |
double |
Para as funções ObjectSetString() e ObjectGetString()
Identificador |
Descrição |
Tipo de Propriedade |
---|---|---|
OBJPROP_NAME |
Nome de objeto |
string |
OBJPROP_TEXT |
Descrição do objeto (o texto contido no objeto) |
string |
OBJPROP_TOOLTIP |
O texto de um "tooltip" (dica). Se a propriedade não é definida, então o "tooltip" gerado automaticamente pelo terminal é exibido. Um "tooltip" pode ser desabilitado através da atribuição do valor "\n" (quebra de linha) a ele |
string |
OBJPROP_LEVELTEXT |
Nível de descrição |
string modificador=número de nível |
OBJPROP_FONT |
Font |
string |
OBJPROP_BMPFILE |
O nome do arquivo BMP para rótulo Bitmap. Veja também Recursos |
string modificador: 0-estado Ligado, 1-estado Desligado |
OBJPROP_SYMBOL |
Ativo para o objeto Chart |
string |
Para o objeto OBJ_RECTANGLE_LABEL ("Rótulo de Retângulo") um dentre os três modos de design podem ser definidos, correspondendo aos valores de ENUM_BORDER_TYPE.
Identificador |
Descrição |
---|---|
BORDER_FLAT |
Forma lisa |
BORDER_RAISED |
Forma em relevo |
BORDER_SUNKEN |
Forma cavada |
Para o objeto OBJ_EDIT ("Edit") e para a função ChartScreenShot(), pode-se especificar o tipo de alinhamento horizontal usando os valores da enumeração ENUM_ALIGN_MODE.
Identificador |
Descrição |
---|---|
ALIGN_LEFT |
Alinhamento a esquerda |
ALIGN_CENTER |
Centrado (somente para o objeto Edit) |
ALIGN_RIGHT |
Alinhamento a direita |
Exemplo:
#define UP "\x0431"
|