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.
Agora eu ri de ver seu estilo, também com erros específicos, rabiscar um pouco mais.
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.
O livro de referência MQL4 de Kovalev é o melhor livro. Ele está disponível em algum lugar neste site. Você não vai encontrar um melhor.
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, então sugiro que você se concentre em trabalhar com funções...por que não escrever uma você mesmo?
A principal coisa que uma função lhe dá é a capacidade de pensar estruturalmente e esboçar um algoritmo esquematicamente. Por exemplo, se houvesse um conjunto especial de funções necessárias na MQL para sua tarefa, você poderia escrever um algoritmo muito simples:
//+------------------------------------------------------------------+//| Script program start function |//+------------------------------------------------------------------+voidOnStart()
{
if(orderType1=="BUY_STOP")
SendBuyStop(Lots, Distance);
if(orderType2=="SELL_STOP")
SendSellStop(Lots, Distance);
}
E é isso aí. Temos um esquema de algoritmo simples diante de nossos olhos, que também funciona. Um sonho em uma palavra.
Aqui, a melhor maneira de começar a aprender uma língua aplicada para tarefas altamente especializadas, sem se confundir com os conselhos de amadores ou quebrar a cabeça por causa de tarefas inoportunas:
В настоящее время персональный компьютер стал незаменимым помощником в жизни каждого человека. Благодаря развитию Интернета и увеличению мощности современных компьютеров открылись новые возможности во многих областях деятельности. Ещё десять лет назад торговля на финансовых рынках была доступна только банкам и узкому кругу специалистов. Сегодня...
Você nem sabe como funciona, mas está dando conselhos. (Você foi colocado no local, nenhuma ofensa foi tirada)
Oh ho ho ho ho ))
Há outras pessoas dando conselhos aqui. O problema foi pedido por condição, ninguém respondeu, inclusive você! De que lugar, pode estar falando, se eu vejo a imagem oposta))
São apenas coisas antigas que ninguém precisa hoje em dia. É melhor ler Kafka antes de ir para a cama. É mais útil.
O que você quer dizer com coisas antigas? Um alfabeto, um livro ABC, poderia ser lixo? Talvez a aritmética seja antiga?
Você é um bom programador, mas como professor você não vê as informações que são relevantes para seu aluno e julga mal o nível dele. Ele tem que dominar o básico na ordem correta, e somente um bom livro didático ajuda).
Реter Konow: Vasily, o homem ainda nem sequer dominou as arraias. É muito cedo para que ele ouça tais palestras).
Peter, não vamos. Vamos lembrar como explicamos o OOP a vocês no fórum há alguns anos).
Bem, a verdade é que nem mesmo todos os programadores modernos entendem o que é uma matriz. Todos trabalham com listas, e nem todos os idiomas têm uma matriz dentro. Em algum lugar é enumerador + mapa, por exemplo, e o público não reclama.
Peter, não vamos. Vamos lembrar como explicamos o OOP a vocês no fórum há alguns anos).
Bem, a verdade é que nem mesmo todos os programadores modernos entendem o que é uma matriz. Todos trabalham com listas, e nem todos os idiomas têm uma matriz dentro. Em algum lugar é enumerador + mapa, por exemplo, e o público não reclama.
Não, você é demais.))) (lembrei-me que estamos no primeiro nome, há muito tempo que você não estava aqui:))
Todos devem conhecer arrays!)), mas o OOP não é necessário. É bom, é claro, mas é muito cedo para falar sobre isso.
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.
Agora eu ri de ver seu estilo, também com erros específicos, rabiscar um pouco mais.
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.
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, então sugiro que você se concentre em trabalhar com funções...por que não escrever uma você mesmo?
A principal coisa que uma função lhe dá é a capacidade de pensar estruturalmente e esboçar um algoritmo esquematicamente. Por exemplo, se houvesse um conjunto especial de funções necessárias na MQL para sua tarefa, você poderia escrever um algoritmo muito simples:
E é isso aí. Temos um esquema de algoritmo simples diante de nossos olhos, que também funciona. Um sonho em uma palavra.
Agora ri quando vi seu estilo, e com erros específicos, rabisco mais um pouco.
O que você tem a ver com erros, você nem sequer sabe como funciona, mas está dando conselhos. foram colocados no local na verdade, sem ofensa)
Note que o tutorial MQL4 de Kovalev é o melhor. Ele está disponível em algum lugar neste site. Você não vai encontrar um melhor.
São apenas coisas antigas que ninguém precisa hoje em dia. É melhor ler Kafka antes de ir para a cama. É mais útil.
Aqui, a melhor maneira de começar a aprender uma língua aplicada para tarefas altamente especializadas, sem se confundir com os conselhos de amadores ou quebrar a cabeça por causa de tarefas inoportunas:
O livro de Sergei Kovalevhttps://book.mql4.com/ru
Você nem sabe como funciona, mas está dando conselhos. (Você foi colocado no local, nenhuma ofensa foi tirada)
Oh ho ho ho ho ))
Há outras pessoas dando conselhos aqui.
O problema foi pedido por condição, ninguém respondeu, inclusive você!
De que lugar, pode estar falando, se eu vejo a imagem oposta))
São apenas coisas antigas que ninguém precisa hoje em dia. É melhor ler Kafka antes de ir para a cama. É mais útil.
O que você quer dizer com coisas antigas? Um alfabeto, um livro ABC, poderia ser lixo? Talvez a aritmética seja antiga?
Você é um bom programador, mas como professor você não vê as informações que são relevantes para seu aluno e julga mal o nível dele. Ele tem que dominar o básico na ordem correta, e somente um bom livro didático ajuda).
Vasily, o homem ainda nem sequer dominou as arraias. É muito cedo para que ele ouça tais palestras).
Peter, não vamos. Vamos lembrar como explicamos o OOP a vocês no fórum há alguns anos).
Bem, a verdade é que nem mesmo todos os programadores modernos entendem o que é uma matriz. Todos trabalham com listas, e nem todos os idiomas têm uma matriz dentro. Em algum lugar é enumerador + mapa, por exemplo, e o público não reclama.
Peter, não vamos. Vamos lembrar como explicamos o OOP a vocês no fórum há alguns anos).
Bem, a verdade é que nem mesmo todos os programadores modernos entendem o que é uma matriz. Todos trabalham com listas, e nem todos os idiomas têm uma matriz dentro. Em algum lugar é enumerador + mapa, por exemplo, e o público não reclama.