Discussão do artigo "Construtor de estratégia visual. Criação de robôs de negociação sem programação" - página 8

 
Andrey Barinov:

Obrigado pelos comentários!

Em seu indicador, o painel não ocupa todo o espaço do gráfico, portanto, o layout do gráfico não é alterado. Tenho um painel em todo o tamanho disponível e, se eu não alterar o layout do gráfico, haverá artefatos desagradáveis.

O esquema do gráfico não muda porque não é necessário. Se precisar desenhar algo, uma "janela" com sua própria cor de fundo é criada sob o gráfico para desenho. E tudo é desenhado nessa janela.

A função RectLabelCreate da descrição MQL é usada. Uma janela é desenhada usando essa função. Ela pode ser tão grande quanto toda a área do gráfico. Exatamente como é feito no terminal, quando você precisa exibir o menu.

E, no caso de qualquer alteração no gráfico, a janela é redesenhada usando a função chartevent. E nenhum artefato é observado.


A abordagem para tudo é a seguinte. Alguém já fez isso. E tudo funciona para ele. Por que não pode funcionar para mim? Então eu não entendo alguma coisa. Temos que procurar a possibilidade de realização.

 
mkron:
Haverá uma descrição completa ou um tutorial? De acordo com os exemplos, tudo parece ser simples, mas se você observar o modelo pronto com as mesmas MAs cruzadas, muita coisa não ficará clara. No exemplo dado no artigo, os parâmetros SL e TP são inseridos no ícone de abertura de negociações, enquanto no modelo esses parâmetros de entrada estão pendurados em quadrados separados com engrenagens. Em suma, sem uma descrição normal, eu, como pessoa distante do mql, tenho medo de comprar.

Esse caso é descrito no segundo exemplo do artigo. Por que e quando é melhor fazer isso.

Não haverá tutorial, mas o conjunto de tutoriais, é claro, será ampliado.

Se você tiver alguma dúvida sobre a construção de esquemas, pode sempre me perguntar em uma mensagem privada, terei prazer em ajudá-lo a entender.

 
Eugeni Neumoin:

O layout do gráfico não é alterado porque não é necessário. Se algo precisar ser desenhado, uma "janela" com sua própria cor de fundo será criada sob a área a ser desenhada. E tudo é desenhado nessa janela.

A função RectLabelCreate da descrição MQL é usada. Uma janela é desenhada usando essa função. Ela pode ser tão grande quanto toda a área do gráfico. Da mesma forma que é feito no terminal, quando você precisa exibir um menu.

E, no caso de qualquer alteração no gráfico, a janela é redesenhada usando a função chartevent. E nenhum artefato é observado.


A abordagem para tudo é a seguinte. Alguém já fez isso. E funciona para eles. Por que não pode funcionar para mim? Então estou perdendo alguma coisa. Tenho de procurar uma maneira de fazer com que funcione.

Obrigado!

Por artefatos, eu quis dizer, por exemplo, escalas de tempo e de preço.

Não há nenhum problema em retornar o gráfico ao seu estado original, mesmo depois de alterar suas propriedades. Só não vejo isso como algo crítico ainda.

 
Andrey Barinov:

Não há problema em retornar o gráfico ao seu estado original, mesmo depois de alterar suas propriedades. Mas isso ainda não parece ser crítico.

Coloquei seu utilitário em um gráfico em que havia muitas construções gráficas. Depois de remover o utilitário do gráfico, todos os gráficos travaram.

Ou seja, tive que reabrir a janela com um gráfico limpo e desenhar tudo novamente. Isso é normal?

Então a descrição (no artigo) deve conter um aviso em letras grandes e vermelhas logo no início de que o utilitário deve ser executado em um gráfico limpo.

 
Eugeni Neumoin:

Coloquei seu utilitário em um gráfico em que havia muitas construções gráficas. Depois de remover o utilitário do gráfico, todos os gráficos falharam.

Ou seja, tive que reabrir a janela com um gráfico limpo e desenhar tudo novamente. Isso é normal?

Então a descrição (no artigo) deve conter um aviso em letras grandes e vermelhas logo no início de que o utilitário deve ser executado em um gráfico limpo.

Peço desculpas pelo incômodo. Vou pensar em consertar esse problema.

 

Respeito ao autor pelo excelente artigo e produto - ótimo trabalho, design profissional.

Das desvantagens, IMHO - estrutura de fontes muito redundante e confusa, acho que essa não é uma boa maneira para aqueles que querem aprender a escrever código por conta própria.

Em relação a essa pergunta - muitos comentários vazios, eles são marcadores de reconhecimento, e há alguma possibilidade de analisar código arbitrário e convertê-lo de volta em um esquema?

 
Ivan Negreshniy:

Respeito ao autor pelo excelente artigo e produto - excelente trabalho, design profissional.

Quanto às desvantagens, IMHO - estrutura de fontes muito redundante e confusa, acho que essa não é uma boa maneira para aqueles que querem aprender a escrever código por conta própria.

A esse respeito, uma pergunta - muitos comentários vazios, eles são marcadores de reconhecimento, e há alguma possibilidade de analisar código arbitrário e convertê-lo de volta em um esquema?

Obrigado por seus comentários!

Não há possibilidade de converter automaticamente o código de volta em um esquema. Mas, se necessário, isso pode ser feito manualmente.

O código tem uma forma que eu me sinto confortável em ler. O objetivo original não era ensinar as pessoas a escrever código usando esse aplicativo.

 

Excelente produto! Segundo dia trabalhando nele quase o tempo todo. Muito obrigado!

Tenho uma pergunta: é possível limitar o número de transações por candlestick? Para que haja apenas uma transação (abertura/fechamento de uma posição) por candlestick. Muitas vezes, depois de fechar uma posição de compra, abro imediatamente uma posição de venda, e assim por diante, e em um único candlestick pode haver dezenas dessas transações de abertura/fechamento. Entendo que esse é o algoritmo do próprio Expert Advisor, mas se houvesse uma configuração conveniente, seria ótimo.

 
FominDudS:

Excelente produto! Segundo dia trabalhando nele quase o tempo todo. Muito obrigado!

Tenho uma pergunta: é possível limitar o número de transações por candlestick? Para que haja apenas uma transação (abertura/fechamento de uma posição) por candlestick. Muitas vezes, depois de fechar uma posição de compra, abro imediatamente uma posição de venda, e assim por diante, e em um único candlestick pode haver dezenas dessas transações de abertura/fechamento. Entendo que esse é o algoritmo do Expert Advisor, mas se houvesse uma configuração conveniente, seria ótimo.

Essa limitação pode ser feita de várias maneiras. Você realmente precisa examinar o algoritmo.
1. Há um elemento "nova barra". Às vezes, ele pode ser útil para essa finalidade.
2. Você pode verificar o histórico e ver quantas negociações foram abertas desde o início do candle. Se for maior que 0, então não abra mais nenhuma.
3) Você pode usar o elemento Variable (variável) como um gatilho/sinalizador de que uma posição já foi aberta.

Tente
 
Estou esperando por esse recurso há muito tempo... 😅😅😅
Parabéns ao desenvolvedor. Espero que o MetaTrader possa implementar esse recurso em sua próxima versão sem ter que baixá-lo do mercado... 🤗


Primeiro comentário! Muito bom!