Não é uma tarefa fácil, mas inicialmente a abordagem parece estar errada - por meio de objetos de linhas de tendência.
Por que não por meio de um objeto Bitmap com recurso personalizado - canvas? Muito provavelmente, a biblioteca mat. será implementada em 3D dessa forma.
Não é uma tarefa fácil, mas inicialmente a abordagem parece estar errada - por meio de objetos de linhas de tendência.
Por que não por meio de um objeto Bitmap com recurso personalizado - canvas? Muito provavelmente, a biblioteca de tapetes será implementada em 3D dessa forma.
E então, como realizar a interatividade (controle do objeto 3D)? Como reagir à mudança de timeframe, escala do gráfico, mudança de janela, novo tick (barra) e muitos outros?
Nessa implementação, o terminal e a funcionalidade da linguagem MQL5 fazem tudo isso, e não há necessidade de programar nada. Ou seja, é oferecida uma solução simples para um problema complexo.
E então como realizar a interatividade (controle de objetos 3D)? Como reagir a uma mudança de período de tempo, escala do gráfico, mudança de janela, novo tick (barra) e muitos outros?
Nessa implementação, o terminal e a funcionalidade da linguagem MQL5 fazem tudo isso, e não há necessidade de programar nada. Ou seja, é oferecida uma solução simples para um problema complexo.
Apenas por meio do kanvas. Publiquei um indicador de tick com base nesse princípio no Kodobaza. A interatividade é bastante forte lá.
Um pouco de interatividade e mat. bibla agora sabe como fazer isso
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação.
fxsaber, 2016.11.14 10:11 AM
Por favor, finalize o CGraphic e o CCurve. Elas são classes fracas. E é quase irrealista herdar delas, porque o necessário é privado. Levei muito tempo para entender, mas para corrigi-las para a operação normal, eu mesmo tive que reescrever as classes.
Eu queria criar um gráfico de ticks interativo - o resultado foi apenas grosseiro (sem reescrever as classes)
void GetPrices( double &Bids[], double &Asks[], const int Count = 100 )
{
MqlTick Ticks[];
const int Amount = CopyTicks(_Symbol, Ticks, COPY_TICKS_INFO, 0, Count);
ArrayResize(Bids, Amount);
ArrayResize(Asks, Amount);
for (int i = 0; i < Amount; i++)
{
Bids[i] = Ticks[i].bid;
Asks[i] = Ticks[i].ask;
}
}
CGraphic* Graphic = new CGraphic;
const string Name = "Graphic" +(string)(GetTickCount() + MathRand());
void OnDeinit( const int Reason )
{
Graphic.Destroy();
delete Graphic;
ChartRedraw();
}
void GraphTicks( const double &Price1[], const double &Price2[] )
{
Graphic.Destroy();
delete Graphic;
Graphic = new CGraphic;
Graphic.Create(0, Name, 0, 0, 0, (int)(ChartGetInteger(0, CHART_WIDTH_IN_PIXELS) * 0.8), (int)ChartGetInteger(0, CHART_HEIGHT_IN_PIXELS));
Graphic.AddCurve(Price1, CURVE_LINES);
Graphic.AddCurve(Price2, CURVE_LINES);
Graphic.PlotAllCurves();
Graphic.Update();
}
void OnTick()
{
double Bids[], Asks[];
GetPrices(Bids, Asks);
GraphTicks(Bids, Asks);
}

Sem DeleteCurve, ChangeCurve, etc.
E então como realizar a interatividade (controle de objetos 3D)? Como reagir a uma mudança de período de tempo, escala do gráfico, mudança de janela, novo tick (barra) e muitos outros?
Nessa implementação, o terminal e a funcionalidade da linguagem MQL5 fazem tudo isso, e não há necessidade de programar nada. Ou seja, é oferecida uma solução simples para um problema complexo.
O tópico do artigo é algum tipo de controle interativo? O tópico do artigo é modelagem 3D. Onde está a função mágica na qual você fornece coordenadas espaciais e obtém coordenadas de tela como saída?
Não só o tópico não é divulgado no artigo, como também parece que o autor não tem ideia de qual é a essência desse tópico.
Não é uma tarefa fácil, mas inicialmente a abordagem parece estar errada - por meio de objetos de linhas de tendência.
Por que não por meio de um objeto Bitmap com recurso personalizado - canvas? Muito provavelmente, a biblioteca mat. será implementada em 3D dessa forma.
Não deveria ser ambos, pois são opções de mapeamento. Inicialmente, tudo deve estar em matrizes.
Portanto, a matriz 3D é o dado bruto. Acho que estamos falando de visualização.
Se ao menos... nenhuma visualização.
O tópico do artigo é algum tipo de controle interativo? O tópico do artigo é modelagem 3D. Onde está a função mágica em que você fornece coordenadas espaciais e obtém coordenadas de tela como saída?
No artigo, não apenas o tópico não é divulgado, como também parece que o autor não compreende a essência desse tópico.
3D - sem a capacidade de alterar o ponto de vista - é um desenho 2D. Portanto, a interatividade é a qualidade mais importante na modelagem de objetos tridimensionais. Qual é a utilidade de uma imagem estática?
Há uma função mágica e um exemplo de seu uso é dado.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Novo artigo Modelagem 3D em MQL5 foi publicado:
As séries temporais são um sistema dinâmico em que os valores de uma variável aleatória chegam de forma consistente, isto é, de forma contínua ou em intervalos. A transição para a análise 3D de mercado fornece um novo olhar sobre os complexos processos e fenômenos de interesse para os investigadores. Este artigo descreve as funções de visualização para representações em 3D de dados bidimensionais.
As linhas nos planos paralelos ao plano XZ e YZ são desenhadas separadamente. É possível modificar pelo número de nós em cada um dos eixos e na própria função.
Fig. 6. Exemplo de construção de superfície 3D.
Autor: Sergey Pavlov