É possível fazer duas ou mais escalas no gráfico - semelhante a uma régua, em que as divisões são dadas como centímetros e polegadas, com os valores fornecidos somente se o ponto foi usado para traçar o gráfico?
Será muito fácil adicionar uma nova marcação no contexto de sua tarefa usando o método MarksToAxisAdd.
#include <Graphics\Graphic.mqh> //+------------------------------------------------------------------+ //| Função de início do programa de script| //+------------------------------------------------------------------+ voidOnStart() { double x[]={-11,-11,11,11}; double y[]={-10,10,-10,10}; //--- gráfico CGraphic graph; graph.HistoryNameWidth(80); graph.Create(0,"Graph",0,30,30,830,430); //--- Pontos CCurve *curve=graph.CurveAdd(x,y,CURVE_LINES); graph.CurvePlot(0); //--- adicionar marcas ao eixo X graph.MarksToAxisAdd(x,8,MARK_INTERNAL,0); graph.Update(); Sleep(1000); }
P.S. Lembre-se de que o método MarksToAxisAdd não cria novos objetos. Ou seja, ao redesenhar o gráfico usando o método Redraw, essa marcação será perdida.
P.P.S. Se você precisar não apenas adicionar novas serifas, mas também assiná-las, a tarefa será mais complicada. Será necessário escrever cada serifa manualmente usando o método TextAdd.
Adicionar uma nova marcação no contexto de sua tarefa será muito fácil usando o método MarksToAxisAdd.
#include <Graphics\Graphic.mqh> //+------------------------------------------------------------------+ //| Função de início do programa de script| //+------------------------------------------------------------------+ voidOnStart() { double x[]={-11,-11,11,11}; double y[]={-10,10,-10,10}; //--- gráfico CGraphic graph; graph.HistoryNameWidth(80); graph.Create(0,"Graph",0,30,30,830,430); //--- Pontos CCurve *curve=graph.CurveAdd(x,y,CURVE_LINES); graph.CurvePlot(0); //--- adicionar marcas ao eixo X graph.MarksToAxisAdd(x,8,MARK_INTERNAL,0); graph.Update(); Sleep(1000); }
P.S. Observe que o método MarksToAxisAdd não cria novos objetos. Ou seja, ao redesenhar o gráfico usando o método Redraw, essa marcação será perdida.
P.P.S. Se você precisar não apenas adicionar novas serifas, mas também assiná-las, a tarefa será mais complicada. Será necessário escrever cada serifa manualmente usando o método TextAdd.
Obrigado pela resposta.
É necessário que os entalhes sejam paralelos - o objetivo é ver dois valores de um ponto - portanto, precisamos de assinaturas de pontos. Não há planos para fazer o trabalho com o gráfico como com o gráfico, ou seja, ao apontar na janela de navegação para obter os valores do gráfico por escalas?
Preciso que os entalhes sejam paralelos - o objetivo é ver dois valores de um ponto - portanto, preciso das assinaturas dos pontos. Você está planejando trabalhar com um gráfico como se fosse um gráfico, ou seja, ao apontar para a janela de navegação, obter os valores do gráfico por escalas?
Como parte da biblioteca de gráficos, essa funcionalidade ainda não está planejada. Mas, no mesmo tópico sobre a biblioteca de gráficos, já encontrei uma implementação personalizada da funcionalidade de que você está falando(nº 36).
Essa funcionalidade não foi planejada como parte da biblioteca Graphics. Mas, no mesmo tópico da biblioteca Graphics, já vi uma implementação personalizada da funcionalidade de que você está falando(nº 36).
Obrigado pelo link. É uma pena que não tenha sido planejada - acho que ela é extremamente útil para o trabalho real com gráficos.
Tenho uma pergunta para a qual você provavelmente sabe a resposta, já que passou muito tempo trabalhando com gráficos, e receio ter inventado uma bicicleta novamente: existe um método de plotagem de um gráfico que sobreponha tortas de dados de várias camadas na forma de uma matriz? Humanamente (na execução física), é assim: pegamos um copo, diferenciamos em células, em cada índice dependente de célula x de y, fazemos a normalização dos indicadores e pintamos dependendo do indicador das células no copo com um gradiente de uma cor, depois o próximo indicador com a mesma matriz, mas com outros valores, também normalizamos e pintamos, mas com um vetor diferente. O resultado da análise será uma paleta, que se revelou - supõe-se que, pela tonalidade da cor e sua capacidade de transmitir luz, é possível identificar padrões de influência de um indicador sobre outro. (se é que existe algo assim, esse é o meu know-how :)) Há algo semelhante no terminal, mas há um gráfico de extremos, que não é o mesmo, mas talvez tenha inspirado minha ideia.
Obrigado pelo link. É uma pena que ele não tenha sido planejado - acho que é extremamente útil para o trabalho real com gráficos.
Tenho uma pergunta para a qual você provavelmente sabe a resposta, já que passou muito tempo trabalhando com gráficos, e receio ter inventado uma bicicleta novamente: existe um método de criar um gráfico que sobreponha tortas de dados de várias camadas na forma de uma matriz? Humanamente (na execução física), é assim: pegamos um copo, diferenciamos em células, em cada índice dependente de célula x de y, fazemos a normalização dos indicadores e pintamos dependendo do indicador das células no copo com um gradiente de uma cor, depois o próximo indicador com a mesma matriz, mas com outros valores, também normalizamos e pintamos, mas com um vetor diferente. O resultado da análise será uma paleta, que se revelou - supõe-se que, pela tonalidade da cor e sua capacidade de transmitir luz, é possível identificar padrões de influência de um indicador sobre outro. (se é que existe algo assim, esse é o meu know-how :)) Há algo semelhante no Terminal, mas ele faz gráficos por extremos, o que não é a mesma coisa, mas pode ter inspirado minha ideia.
Provavelmente entendi mal, mas o que você está descrevendo para mim está mais associado aos métodos clássicos de agrupamento do aprendizado de máquina. Em especial, parece algo como os mapas de Kohonen.
Roman Konopelko: Talvez eu tenha entendido mal, mas o que você está descrevendo está mais associado aos métodos clássicos de agrupamento do aprendizado de máquina. Em particular, parece algo como mapas de Kohonen.
Os mapas de Kohonen não são exatamente assim, é um princípio diferente... Eu só estava pensando que essa abordagem ajudaria o aprendizado de máquina... De qualquer forma, ou eu estou pensando na direção certa ou ainda não chegou lá e precisa ser feito para avaliar. Obrigado.
Um pequeno pedido, se não for difícil, você pode adicionar a possibilidade de desenhar candlesticks ou barras no OHLC? Gosto muito dessas telas e gostaria de poder criar gráficos completos com elas
Maxim Dmitrievsky: Um pequeno pedido, se não for difícil, você pode adicionar a possibilidade de desenhar candlesticks ou barras no OHLC? Gosto muito dessas telas e gostaria de poder desenhar gráficos completos nelas
Não, apenas que, sem indicadores, você poderia exibir um gráfico adicional com informações sobre distribuições (sem problemas com isso), e seria bom poder exibir uma parte do gráfico de outro TF, digamos, ou outras informações na forma de barras, por meio da mesma biblioteca de gráficos. É apenas conveniente e rápido trabalhar com ele, é claro, você pode gerar todos os quatro tipos de preços com linhas, mas não parece bom.
Não, exatamente porque, sem indicadores, seria possível exibir um gráfico adicional com informações sobre distribuições (não há problemas com isso), e seria bom poder exibir um pedaço de gráfico de outro TF, por exemplo, ou outras informações na forma de barras, por meio da mesma biblioteca de gráficos. É conveniente e rápido trabalhar com ele. É claro que você pode exibir todos os quatro tipos de preços em linhas, mas isso não parece muito bom.
Boa tarde!
O modo CustomPlotFunction é implementado na biblioteca para fins semelhantes, o exemplo de uso implementa aproximadamente o que você está interessado.
P.S. Mais detalhes sobre isso estão escritos no fórum nº 53.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
É possível fazer duas ou mais escalas no gráfico - semelhante a uma régua, em que as divisões são dadas como centímetros e polegadas, com os valores fornecidos somente se o ponto foi usado para traçar o gráfico?
Será muito fácil adicionar uma nova marcação no contexto de sua tarefa usando o método MarksToAxisAdd.
//+------------------------------------------------------------------+
//| Função de início do programa de script|
//+------------------------------------------------------------------+
void OnStart()
{
double x[]={-11,-11,11,11};
double y[]={-10,10,-10,10};
//--- gráfico
CGraphic graph;
graph.HistoryNameWidth(80);
graph.Create(0,"Graph",0,30,30,830,430);
//--- Pontos
CCurve *curve=graph.CurveAdd(x,y,CURVE_LINES);
graph.CurvePlot(0);
//--- adicionar marcas ao eixo X
graph.MarksToAxisAdd(x,8,MARK_INTERNAL,0);
graph.Update();
Sleep(1000);
}
P.S. Lembre-se de que o método MarksToAxisAdd não cria novos objetos. Ou seja, ao redesenhar o gráfico usando o método Redraw, essa marcação será perdida.
P.P.S. Se você precisar não apenas adicionar novas serifas, mas também assiná-las, a tarefa será mais complicada. Será necessário escrever cada serifa manualmente usando o método TextAdd.
Adicionar uma nova marcação no contexto de sua tarefa será muito fácil usando o método MarksToAxisAdd.
//+------------------------------------------------------------------+
//| Função de início do programa de script|
//+------------------------------------------------------------------+
void OnStart()
{
double x[]={-11,-11,11,11};
double y[]={-10,10,-10,10};
//--- gráfico
CGraphic graph;
graph.HistoryNameWidth(80);
graph.Create(0,"Graph",0,30,30,830,430);
//--- Pontos
CCurve *curve=graph.CurveAdd(x,y,CURVE_LINES);
graph.CurvePlot(0);
//--- adicionar marcas ao eixo X
graph.MarksToAxisAdd(x,8,MARK_INTERNAL,0);
graph.Update();
Sleep(1000);
}
P.S. Observe que o método MarksToAxisAdd não cria novos objetos. Ou seja, ao redesenhar o gráfico usando o método Redraw, essa marcação será perdida.
P.P.S. Se você precisar não apenas adicionar novas serifas, mas também assiná-las, a tarefa será mais complicada. Será necessário escrever cada serifa manualmente usando o método TextAdd.
Obrigado pela resposta.
É necessário que os entalhes sejam paralelos - o objetivo é ver dois valores de um ponto - portanto, precisamos de assinaturas de pontos. Não há planos para fazer o trabalho com o gráfico como com o gráfico, ou seja, ao apontar na janela de navegação para obter os valores do gráfico por escalas?
Obrigado pela resposta.
Preciso que os entalhes sejam paralelos - o objetivo é ver dois valores de um ponto - portanto, preciso das assinaturas dos pontos. Você está planejando trabalhar com um gráfico como se fosse um gráfico, ou seja, ao apontar para a janela de navegação, obter os valores do gráfico por escalas?
Como parte da biblioteca de gráficos, essa funcionalidade ainda não está planejada. Mas, no mesmo tópico sobre a biblioteca de gráficos, já encontrei uma implementação personalizada da funcionalidade de que você está falando(nº 36).
Essa funcionalidade não foi planejada como parte da biblioteca Graphics. Mas, no mesmo tópico da biblioteca Graphics, já vi uma implementação personalizada da funcionalidade de que você está falando(nº 36).
Obrigado pelo link. É uma pena que não tenha sido planejada - acho que ela é extremamente útil para o trabalho real com gráficos.
Tenho uma pergunta para a qual você provavelmente sabe a resposta, já que passou muito tempo trabalhando com gráficos, e receio ter inventado uma bicicleta novamente: existe um método de plotagem de um gráfico que sobreponha tortas de dados de várias camadas na forma de uma matriz? Humanamente (na execução física), é assim: pegamos um copo, diferenciamos em células, em cada índice dependente de célula x de y, fazemos a normalização dos indicadores e pintamos dependendo do indicador das células no copo com um gradiente de uma cor, depois o próximo indicador com a mesma matriz, mas com outros valores, também normalizamos e pintamos, mas com um vetor diferente. O resultado da análise será uma paleta, que se revelou - supõe-se que, pela tonalidade da cor e sua capacidade de transmitir luz, é possível identificar padrões de influência de um indicador sobre outro. (se é que existe algo assim, esse é o meu know-how :)) Há algo semelhante no terminal, mas há um gráfico de extremos, que não é o mesmo, mas talvez tenha inspirado minha ideia.
Obrigado pelo link. É uma pena que ele não tenha sido planejado - acho que é extremamente útil para o trabalho real com gráficos.
Tenho uma pergunta para a qual você provavelmente sabe a resposta, já que passou muito tempo trabalhando com gráficos, e receio ter inventado uma bicicleta novamente: existe um método de criar um gráfico que sobreponha tortas de dados de várias camadas na forma de uma matriz? Humanamente (na execução física), é assim: pegamos um copo, diferenciamos em células, em cada índice dependente de célula x de y, fazemos a normalização dos indicadores e pintamos dependendo do indicador das células no copo com um gradiente de uma cor, depois o próximo indicador com a mesma matriz, mas com outros valores, também normalizamos e pintamos, mas com um vetor diferente. O resultado da análise será uma paleta, que se revelou - supõe-se que, pela tonalidade da cor e sua capacidade de transmitir luz, é possível identificar padrões de influência de um indicador sobre outro. (se é que existe algo assim, esse é o meu know-how :)) Há algo semelhante no Terminal, mas ele faz gráficos por extremos, o que não é a mesma coisa, mas pode ter inspirado minha ideia.
Talvez eu tenha entendido mal, mas o que você está descrevendo está mais associado aos métodos clássicos de agrupamento do aprendizado de máquina. Em particular, parece algo como mapas de Kohonen.
Os mapas de Kohonen não são exatamente assim, é um princípio diferente... Eu só estava pensando que essa abordagem ajudaria o aprendizado de máquina... De qualquer forma, ou eu estou pensando na direção certa ou ainda não chegou lá e precisa ser feito para avaliar. Obrigado.
Um pequeno pedido, se não for difícil, você pode adicionar a possibilidade de desenhar candlesticks ou barras no OHLC? Gosto muito dessas telas e gostaria de poder desenhar gráficos completos nelas
Talvez você só precise do DRAW_COLOR_CANDLES?
Não, apenas que, sem indicadores, você poderia exibir um gráfico adicional com informações sobre distribuições (sem problemas com isso), e seria bom poder exibir uma parte do gráfico de outro TF, digamos, ou outras informações na forma de barras, por meio da mesma biblioteca de gráficos. É apenas conveniente e rápido trabalhar com ele, é claro, você pode gerar todos os quatro tipos de preços com linhas, mas não parece bom.
Não, exatamente porque, sem indicadores, seria possível exibir um gráfico adicional com informações sobre distribuições (não há problemas com isso), e seria bom poder exibir um pedaço de gráfico de outro TF, por exemplo, ou outras informações na forma de barras, por meio da mesma biblioteca de gráficos. É conveniente e rápido trabalhar com ele. É claro que você pode exibir todos os quatro tipos de preços em linhas, mas isso não parece muito bom.
Boa tarde!
O modo CustomPlotFunction é implementado na biblioteca para fins semelhantes, o exemplo de uso implementa aproximadamente o que você está interessado.
P.S. Mais detalhes sobre isso estão escritos no fórum nº 53.