Bibliotecas: Easy Canvas - página 11

 
Nikolai Semko:

Fiquei obcecado por cerca de 6 anos, analisando centenas de indicadores e Expert Advisors, indo do simples ao complexo.
Como resultado, cheguei à versão complexa, que é o que venho fazendo nos últimos 8 anos.
Essa biblioteca é apenas um hobby e eu a criei exclusivamente para mim e porque as ferramentas existentes não me serviam.
A variante KB é uma versão muito neutra da minha variante. O principal é que ela não tem gráficos suaves, enquanto a minha tem.
Se eu publicasse minha versão, a demanda aumentaria muito. Eu simplesmente não preciso dela.

Como mostra a experiência de todos os escritores de GUI locais, aqueles que precisam - escrevem sua própria GUI, e aqueles que não precisam - nenhuma GUI lhes serve :)

 
Andrey Barinov:

Como mostra a experiência de todos os criadores de GUI locais, quem precisa escreve sua própria GUI, e quem não precisa não é adequado:)

assim é. ))

 
Nikolai Semko:

Essa biblioteca é apenas um hobby e eu a criei exclusivamente para mim e porque as ferramentas existentes não são adequadas para mim.

Não minta, Nikolai!

Se é para você mesmo, por que está publicando?

 
prostotrader:

Não minta, Nikolai!

Se é para você mesmo, por que está publicando?

Às vezes, você só precisa compartilhar algo com seu vizinho. Não para todo mundo, é claro.
E qual é o meu interesse pessoal, posso perguntar?

 
Nikolai Semko:

Às vezes, você só precisa compartilhar algo com seu vizinho. Nem todos, é claro.
E qual é o meu interesse próprio, se é que posso perguntar?

Nada, só que se você publicar, não será mais "para você mesmo" :)

Faça algo útil para todos (sobre o qual escrevi anteriormente).

 
prostotrader:

Não é nada, é só que, se você está publicando, não está mais "sob sua própria pele" :)

Faça algo útil para todos (como escrevi anteriormente)

Não me importo. Apenas repito mais uma vez - isso é uma questão de design muito individual. E não vale a pena colocá-lo em uma biblioteca de primitivos gráficos.
Seria lógico criar uma classe CMyChart, que usa a biblioteca iCanvas e, em seguida, adicionar diferentes tipos de escalas, tipos de barras e exibições de gráficos a ela.

As escalas simplesmente não pertencem ao iCanvas.

No entanto, se você desativar o gráfico padrão com sua própria escala e criar seu próprio gráfico com sua própria escala, usar o iCanvas não será a melhor solução para essa finalidade, pois ele desperdiça muitos recursos na leitura dos parâmetros do gráfico padrão. Para esse fim, precisamos de uma biblioteca ligeiramente diferente, na qual muitas coisas desnecessárias seriam removidas do iCanvas, e as funções padrão muito caras GhartGet e ChartSet seriam substituídas por funções internas baratas.

 
Todos os itens acima se aplicam ao MT4. Talvez eu poupe o tempo de alguém, pois eu mesmo passei um dia trabalhando na solução. Ótima biblioteca, mas há um bug/nuance. É muito demorado descrever todos os detalhes, portanto, farei um breve relato. Problema: quando um novo candlestick aparece, o método X() não funciona corretamente, de modo que os elementos da tela começam a se deslocar para a esquerda quando cada novo candlestick aparece (se o gráfico não for tocado, ou seja, o evento chartevent_chart_change não for chamado). Solução: rastreie o aparecimento de uma nova vela e chame forçosamente a função ChartChanged(), atualizando assim o valor da variável W.Left_bar. Tenha um trabalho produtivo.
 
Olá Nikolai,

Como você sabe, adoro usar sua classe iCanvas e ela é ótima. O que está faltando é uma função para mover todo o conteúdo x pontos para a esquerda/direita (talvez também para cima ou para baixo). Essa função de rolagem seria muito útil. Eu ficaria muito feliz se você pudesse implementar esse ótimo recurso.

Muito obrigado.

Atenciosamente, Mighty

 
Mighty7:
Olá, Nikolai,

Como você sabe, adoro usar sua classe iCanvas e ela é ótima. O que está faltando é uma função para mover o conteúdo inteiro x pontos para a esquerda/direita (talvez também para cima ou para baixo). Essa função de rolagem seria muito útil. Eu ficaria muito feliz se você pudesse implementar esse ótimo recurso.

Muito obrigado.

Atenciosamente, Mighty

Muito obrigado!

Essa função não é adequada?

 
Vladyslav Katsylo:
Todos os itens acima se aplicam ao MT4. Talvez eu poupe o tempo de alguém, pois eu mesmo passei um dia trabalhando na solução. Ótima biblioteca, mas há um bug/nuance. É muito demorado descrever todos os detalhes, portanto, farei um breve relato. Problema: quando um novo candlestick aparece, o método X() não funciona corretamente, de modo que os elementos da tela começam a se deslocar para a esquerda quando cada novo candlestick aparece (se o gráfico não for tocado, ou seja, o evento chartevent_chart_change não for chamado). Solução: rastreie o aparecimento de uma nova vela e chame forçosamente a função ChartChanged(), atualizando assim o valor da variável W.Left_bar. Bom trabalho, pessoal.

Isso se aplica ao modo normal ou ao testador?