Auto-aprendizagem da linguagem MQL5 a partir do zero - página 14
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
No futuro, de acordo com o plano de auto-estudo, a tarefa é modificar o roteiro passo a passo, ou seja, passo a passo:
Naturalmente, você não deveria ter seguido os conselhos do tutorial. Você pode ter o conhecimento de como estabelecer linhas, ordens, etc., mas não será capaz de desenvolver a estratégia de qualquer maneira, porque não tem a base teórica. Todas estas linhas e scripts não o ajudarão a entender as coisas básicas de programação, e você não pode ir longe sem ele. Eu passei os primeiros 4 meses apenas aprendendo, sem sequer tentar escrever nada. É claro que eu poderia ter descaradamente, como você, mas a qualidade de tal conhecimento é pobre. Há sempre lacunas no básico, que terão de ser preenchidas no futuro...
Olá, Peter! Estudo o livro didático conforme necessário, ou seja, quando vejo uma lacuna em meu conhecimento. Agora, sinto que terei que fazer uma pequena pausa e estudar o livro didático mais de perto. Todas as recomendações dos participantes do fórum são levadas em consideração e eu estou tentando aderir a elas. E agora me surpreende que eu tenha conseguido escrever algo usando apenas o livro de referência MQL5 por tão pouco tempo.
Cumprimentos, Vladimir.
Boa noite a todos e boa disposição!
Estou colando um novo script New6.mq5 que o ajuda a colocar uma SellStop e uma BuyStop ordem pendente com um tamanho de lote fixo a uma certa distância do preço atual no gráfico atual. Neste roteiro, tentei descrever tudo como prometi anteriormente, de forma clara e compreensível para um programador da 1ª série.
Usei as informações retiradas da Referência MQL5 somente quando escrevi o roteiro!
Com os melhores cumprimentos, Vladimir.
Este é um bom exemplo. Sugiro usá-la como ponto de partida. Noções básicas.
No futuro, de acordo com o plano de auto-estudo, a tarefa é modificar o roteiro passo a passo, ou seja
Não, não. Não conecte ainda a nova funcionalidade. Agora melhore a lógica existente. Ao mesmo tempo, livrar-se dos problemas na implementação do roteiro (eles já estão aparecendo). Se você quiser saber o que reescrever, eu lhe direi.
O exemplo é um bom exemplo. Sugiro usá-la como ponto de partida. Linha de base.
Não, não. Não conecte nenhuma nova funcionalidade por enquanto. Agora melhore a lógica existente. Ao mesmo tempo, livrar-se de problemas na implementação do roteiro (eles já estão aparecendo). O que você precisa exatamente para reescrever, se estiver interessado, eu lhe direi.
Olá Vasily! É claro, diga-me o que você precisa reescrever, seria interessante para mim!
Cumprimentos, Vladimir.
Olá Vasily! Claro que me diga o que você precisa para reescrever, estou muito interessado!
Atenciosamente, Vladimir.
Os programadores têm dois problemas: erros produzidos pelo compilador e problemas de arquitetura. Enquanto você é um novato, você se concentra em lutar com o compilador enquanto seu objetivo final é um programa que funcione corretamente. No entanto, muito rapidamente um programa para iniciantes se transforma no chamado código spaghetti, que o próprio autor não consegue descobrir em tempo hábil. É por isso que sugiro que você se concentre não no compilador e na exatidão do roteiro final, mas em questões arquitetônicas. É como aprender a tocar piano: primeiro você aprende a segurar os dedos corretamente e a sentar-se no instrumento corretamente, ninguém exige tocar Bach de um iniciante.
Você tem dois grupos de parâmetros que determinam o comportamento de seu roteiro: o primeiro é definido estaticamente, como uma macro. O segundo é definido pelo usuário ao carregar o script no gráfico. Agora o usuário não poderá selecionar o tipo do pedido a ser feito sem recompilar este script. Isto não é bom. Portanto, seria melhor abandonar estas macros em favor do parâmetro adicional:
Assim, definimos uma nova enumeração, que implementamos como um parâmetro de seleção para o usuário.
Os programadores têm dois problemas: erros de compilação e problemas de arquitetura. Enquanto você é um iniciante, você se concentra em combater o compilador, e seu objetivo final é um programa que funcione corretamente. No entanto, muito rapidamente um programa para iniciantes se transforma no chamado código spaghetti, que o próprio autor não consegue descobrir em tempo hábil. É por isso que sugiro que você se concentre não no compilador e na exatidão do roteiro final, mas em questões arquitetônicas. É como aprender a tocar piano: primeiro você aprende a segurar os dedos corretamente e a sentar-se no instrumento corretamente, ninguém exige tocar Bach de um iniciante.
Você tem dois grupos de parâmetros que determinam o comportamento de seu roteiro: o primeiro é definido estaticamente, como uma macro. O segundo é definido pelo usuário ao carregar o script no gráfico. Agora o usuário não poderá selecionar o tipo do pedido a ser feito sem recompilar este script. Isto não é bom. Portanto, seria melhor abandonar estas macros em favor do parâmetro adicional:
Assim, definimos uma nova enumeração, que implementamos como um parâmetro de seleção para o usuário.
Ótimo, de fato, você me motivou o que está escrito no passo 4 da modificação passo a passo do roteiro, ou seja, a expandir a seleção de ordens pendentes.
Obrigado!
Cumprimentos, Vladimir.
O próximo problema com seu código é que ele se espalha para fora em uma longa folha de procedimento. Todos os iniciantes escrevem desta maneira. E este é um problema que permanece com eles por anos. Aprenda a quebrar seu algoritmo em partes, a partir do básico como este roteiro. Há duas maneiras de fazer isso: através de funções e classes. O conceito de aulas é muito difícil de entender no início, por isso sugiro que você se concentre em trabalhar com funções. Pense sobre a importância das funções:
O próximo problema com seu código é que ele se espalha para fora em uma longa folha de procedimento. Todos os iniciantes escrevem desta maneira. E este é um problema que permanece com eles por anos. Aprenda a quebrar seu algoritmo em partes, a partir do básico como este roteiro. Há duas maneiras de fazer isso: através de funções e classes. O conceito de aulas é muito difícil de entender no início, por isso sugiro que você se concentre em trabalhar com funções. Pense sobre a importância das funções:
Obrigado, Vasily, por um conselho tão abrangente. Certamente levarei isso em conta e tentarei fazer o meu melhor.
Cumprimentos, Vladimir.
O próximo problema com seu código é que ele se espalha para fora em uma longa folha de procedimento. Todos os iniciantes escrevem desta maneira. E este é um problema que permanece com eles por anos. Aprenda a quebrar seu algoritmo em partes, a partir do básico como este roteiro. Há duas maneiras de fazer isso: através de funções e classes. O conceito de aulas é muito difícil de entender no início, por isso sugiro que você se concentre em trabalhar com funções. Pense sobre a importância das funções:
Vasily, o homem ainda não dominou nem mesmo as matrizes. É muito cedo para que ele ouça tais palestras).
Peter, todos os conselhos construtivos são importantes para mim, inclusive os seus!
Cumprimentos, Vladimir.