Discussão sobre a documentação MQL4 - página 3

 
A MQL é semelhante à C, ninguém argumenta com isso. Ninguém precisa ou jamais pediu um tutorial sobre a sintaxe do MQL.

Em linguagens de programação, onde Framework-e e suas funções, como Java e MQL, são o foco principal da documentação, porque neste tipo de linguagem não se pode fazer nada sem elas. Isto não é montagem ou C, onde se você não gosta de algo ou não entende como funciona, você é bem-vindo a reescrevê-lo como quiser. Na documentação Java, você verá que 90% dele diz respeito às funções da Estrutura.

A situação é muito semelhante na MQL, porque a MQL é uma linguagem onde as funções de estrutura padrão desempenham um papel importante, enquanto a documentação sobre estas funções é coxa (e isto é exatamente o que Triton disse, e com o qual eu concordo absolutamente).

Os exemplos na documentação são muitas vezes inúteis. Um bom exemplo não é uma linha - uma chamada de função com parâmetros. A documentação e os exemplos devem explicar com muita precisão quais são os limites aceitáveis dos parâmetros, onde e como você pode e onde e como não chamar a função, e o que esperar como resultado da chamada.
Não há necessidade de tutoriais, basta consultar a documentação e se ela não se parecer com a documentação da OrderSend, mas se parecer com esta, corrigi-la:

int AccountStopoutLevel()
Возвращает значение урвоня, по которому определяется состояние Stop Out.
Пример:
 
Print("StopOut level = ", AccountStopoutLevel());

Pelo menos o link do Stop Out, que explica o que significa Stop Out (o mesmo que Margin Call? Não está claro. ...) é necessário aqui. Melhor ainda, se o exemplo der o valor específico da conta do consumidor e o que acontece com ela antes e depois do uso da função e por quê. No caso de AccountStopOutLevel, o exemplo poderia mostrar a conta do consumidor que foi expulsa do comércio a este nível e explicar a conexão entre este nível e o que AccountStopOutLevel reporta.

Verdade seja dita - também há funções, onde a documentação é um prazer de ler, você pode ver imediatamente que elas foram pensadas e escritas com seriedade, não apenas para ignorar (OrderSend, por exemplo). Mas há menos funções desse tipo do que aquelas com boa documentação. Com a OrderSend é claro - todos precisam da OrderSend, aqui você tem que escrever a documentação ou as pessoas não poderão negociar de forma alguma. E em outras funções - "bem, eles não estalam e bem, se necessário, nós os acrescentaremos mais tarde. É necessário, Sr. MQS, é necessário". Por favor, adicione-os.
 
Dmitrich:

Mas há muitos comerciantes aqui, não programadores! Um homem gosta de jogar na bolsa de valores, a excitação, os cálculos. Por que um comerciante se tornaria um programador estudando C++, e depois os artigos e animadores? Para ele não é interessante, e é difícil "correr" na estratégia sem um Expert Advisor. O que fazer? Pegue o caminho mais curto e procure (peça, exija, extorne) um livro didático. O que há de errado com isso? Se não gostamos das tortas na padaria mais próxima, procuramos outra padaria, nem sempre tentando assar a nós mesmos. Cada um deve fazer sua própria coisa e de preferência o que quiser.

Por alguma razão, você junta a relutância dos comerciantes em se tornarem programadores e a necessidade de um livro didático.
Estas são coisas completamente diferentes! Não sou um programador por educação e ninguém exigiu programação de mim, exceto no instituto durante o processo de aprendizagem. Entretanto, eu simplesmente li o que tenho 2 (DOIS) anos atrás na MQL e comecei gradualmente a programar. Agora eu tenho 260Kb EA escritos com minhas idéias, que eu nunca vi em nenhum lugar na Internet, e que eu estou constantemente modificando (ou seja, estou procurando por ela).
Se um trader tem sido bem sucedido em empurrar dinheiro no mercado por 1-2 meses pensando que é um verdadeiro "trader", e pensando que tem sorte de ter uma estratégia de trabalho pronta - ele só precisa de um livro de texto inteligente e será capaz de dormir bem uma vez por semana tendo programado um Expert Advisor com um livro de texto, então esta é uma ilusão pela qual todos passaram! Você precisa tratá-lo como apenas um certo passo no desenvolvimento da MTS. Posso lhe assegurar que o algoritmo que você usou para ter sucesso no mercado durante 1-2 meses não pode absolutamente lhe garantir nada no futuro, não importa como e por quem esta EA será implementada - o próprio autor ou terceiros por dinheiro.
 
Por alguma razão, você tem juntado a relutância dos comerciantes em se tornarem programadores e a necessidade de um livro didático. <br/ translate="no"> Estas são coisas completamente diferentes! Eu não sou um programador por educação e ninguém exigiu programação de mim a não ser no instituto durante o processo de aprendizagem. No entanto, acabei de fazer minhas leituras de MQL 2 (TWO) anos atrás e gradualmente comecei a programar. Agora tenho uma EA de 260Kb que escrevi com minhas idéias, que nunca vi em nenhum lugar da Internet, e que estou constantemente modificando (ou seja, estou procurando por elas).
Se um trader tem sido bem sucedido em empurrar dinheiro no mercado por 1-2 meses pensando que é um verdadeiro "trader", e pensando que tem sorte de ter uma estratégia de trabalho pronta - ele só precisa de um livro de texto inteligente e será capaz de dormir bem uma vez por semana tendo programado um Expert Advisor com um livro de texto, então esta é uma ilusão pela qual todos passaram! Você precisa tratá-lo como apenas um certo passo no desenvolvimento da MTS. Posso lhe assegurar que o algoritmo que você usou para ter sucesso no mercado durante 1-2 meses não pode absolutamente lhe garantir nada no futuro, não importa como e por quem esta EA seja implementada - pelo autor ou por outros por dinheiro.

Não estou falando do sucesso da estratégia, mas do desejo natural das pessoas de aprender a escrever Expert Advisors sem estudar livros de texto em C++ e muitos artigos e manuais.
 
Dmitrich:

Não estou falando do sucesso da estratégia, mas do desejo natural de uma pessoa de aprender a escrever EAs sem estudar livros de texto em C++ e muitos artigos e manuais.

Em geral, no meu entendimento, um livro-texto de escrita MQL normal deve ser algo semelhante ao que está disponível nas livrarias para qualquer linguagem de programação. Estes livros espessos têm meia mil páginas cada um. As peculiaridades da MQL dificilmente podem ser descritas em um livreto de 50-100 páginas, o que os "comerciantes" estão sonhando. Só a listagem de exemplos pode facilmente chegar a 100 ou até mais páginas, a julgar pelos artigos deste site. E você também precisa de ilustrações e explicações detalhadas. Portanto, é improvável que um livro de texto sério sobre MQL encoraje fortemente os "comerciantes" a programar EA se a existência deste site não os inspirou até agora. Falo da necessidade da existência de um tutorial MQL, e quero dizer o lado formal da questão - se existe uma linguagem de programação, então deve haver um tutorial (mesmo que principalmente em formato eletrônico) para aqueles que desejam aprender a programar nele.
A propósito, alguns artigos locais são capítulos quase prontos de um livro didático.
 
solandr:
Dmitrich:

Não estou falando de uma estratégia de sucesso, mas de um desejo natural de aprender a escrever Expert Advisors sem estudar livros e pilhas de artigos e manuais em C++.

Em geral, no meu entendimento, um livro-texto de escrita MQL normal deve ser algo semelhante ao que está disponível nas livrarias para qualquer linguagem de programação. Estes livros espessos têm meia mil páginas cada um. As peculiaridades da MQL dificilmente podem ser descritas em um livreto de 50-100 páginas, o que os "comerciantes" estão sonhando. Só a listagem de exemplos pode facilmente chegar a 100 ou até mais páginas, a julgar pelos artigos deste site. E você também precisa de ilustrações e explicações detalhadas. Portanto, é improvável que um livro de texto sério sobre MQL encoraje fortemente os "comerciantes" a programar EA se a existência deste site não os inspirou até agora. Falo da necessidade da existência de um tutorial MQL, e quero dizer o lado formal da questão - se existe uma linguagem de programação, então deve haver um tutorial (mesmo que principalmente em formato eletrônico) para aqueles que desejam aprender a programar nele.
A propósito, alguns artigos locais são quase todos capítulos prontos para uso em um livro didático.
Concordo, mas seria mais fácil para comerciantes e programadores novatos usar um livro-texto onde tudo é sistematizado. Você não precisa estudar todas as 500 páginas. Seria suficiente estudar a parte introdutória, o básico da programação, e depois usá-la como livro de referência, selecionando apenas os operadores (ou o que quer que sejam chamados) que são necessários para implementar e otimizar uma determinada estratégia. E exemplos, de acordo com isso, com ilustrações não serão mais necessários. Sei que é impossível escrever um livro de texto abrangente, mas apenas as sutilezas podem ser esclarecidas aqui nos artigos e no fórum.
 
Dmitrich:
É suficiente aprender a introdução, o básico da programação, e depois usá-la como referência, selecionando apenas os operadores (ou o que quer que sejam chamados) que são necessários para implementar e otimizar uma determinada estratégia. E os exemplos, de acordo, com ilustrações, não são mais necessários.
Apenas para resolver estes problemas, Rosh escreveu vários artigos básicos no site da Alpari que são bastante úteis para aqueles que estão apenas começando do zero. Entretanto, o design mudou - não consigo encontrar imediatamente estes artigos no site. Você pode lê-los durante uma semana e ficar atento às tendências básicas da programação. E então, dependendo das tarefas a serem desempenhadas pelo escritor especialista.
 

Por que empilhar tudo em uma pilha?
Por que argumentar o óbvio - que um bom (e não um bom) livro-texto MQL é uma obrigação?
Há dois anos estou programando em MQL, não preciso de nenhum livro. Mas isso significa que eles não são de modo algum necessários?

Neste tópico, muitos comentários corretos foram feitos em outros lugares. Vou repeti-los junto com os meus, para reunir tudo em um só lugar:

Deve haver um capítulo obrigatório descrevendo (como alex_ant escreveu) o mecanismo de operação do programa MQL. Isto é algo que todo comerciante que é novo em programação pode entender mesmo antes de aprender a linguagem. E esta descrição deve estar ligada ao processo de negociação, e também pode explicar a diferença entre indicadores, scripts e Expert Advisors, como eles se comportam em relação à fila de carrapatos, ao servidor de negociação, uns aos outros, etc.

Deve ser dada mais atenção à estrutura do programa MQL, seus principais componentes - as funções init(), start() e deinit(). Estas funções são a principal diferença entre a MQL e outros idiomas, e a documentação lhes dá muito pouco espaço, apenas algumas linhas.

Seria muito bom olhar todos os artigos do dicionário e não apenas para eliminar os erros e erros de digitação, mas também para trazer a terminologia a um denominador comum. Muitas vezes as descrições dos mesmos parâmetros de funções e procedimentos ou de parâmetros semelhantes são feitas usando termos bem diferentes e seu significado não é explicado. Como resultado, as descrições estão disponíveis, mas o significado e o uso de alguns parâmetros têm que ser estudados em uma experiência.

É muito importante (concordo absolutamente com o 4x4ever ) dar exemplos em linha reta! A grande maioria dos exemplos nos artigos do dicionário não explica nada e não ensina nada. Na verdade, um exemplo de uma linha não é um exemplo! Em um manual normal, o exemplo permite compreender tanto o significado dos parâmetros, como a ordem na qual o procedimento/função é utilizado e o resultado que produz. E para isso, não é necessário escrever seu próprio programa. IMHO: a fraqueza dos exemplos de MQL é um dos principais inconvenientes da documentação.

E, finalmente, deveria haver alguns artigos que explicariam a um iniciante o procedimento de escrever um indicador/escrito/conselheiro passo a passo. Esta necessidade não está relacionada ao algoritmo, mas às características da arquitetura do programa MQL. Este artigo ajudará um iniciante a entender a estrutura e o código do modelo e, assim, tornar o primeiro passo mais difícil. Posteriormente, este modelo pode ser usado para criar todos os outros programas deste tipo. E não há problema, porque Rosh de artigos similares têm sido escritos em abundância. Você só precisa selecionar o apropriado e simplificá-los significativamente.

Caros desenvolvedores, as melhorias listadas na documentação são muito menos trabalhosas do que a criação de um tutorial. Entretanto, para os usuários, estas coisas são quase iguais. Você costuma expressar sua insatisfação pelo fato de que ambos os fóruns muitas vezes têm pessoas fazendo as mesmas perguntas. As questões repetitivas podem ser reduzidas drasticamente. Para fazer isso, basta considerar pelo menos os poucos desejos expressos neste tópico na documentação.

 
Yurixx:

Por que empilhar tudo em uma pilha?
Por que argumentar o óbvio - que um livro didático MQL adequado (não bom) é uma obrigação?

Isto pode ser correto, mas uma pergunta permanece - quem realmente escreve e publica livros didáticos sobre programação no mundo? Desenvolvedores ou autores e editores terceirizados fazem isso? Os desenvolvedores fazem o programa e a linguagem, escrever e publicar um livro didático é outro negócio.

E o que o faz pensar que um livro didático é necessário? Se você pessoalmente e as outras três pessoas desta linha precisam dele, isso não significa nada. Se houvesse uma demanda efetiva, já haveria uma oferta - esse é o mercado.

Um livro didático normal custa de 50 a 100 dólares. Proponho que aqueles que desejam obter um livro didático de qualidade contribuam com cinqüenta dólares. E se esses cinqüenta dólares forem suficientes, será possível contratar um autor decente que, por dinheiro normal, trabalhará no livro didático como um trabalho principal, não entre as crises de pão cotidiano. Um editor normal será contratado, os revisores normais serão pagos, e então o livro será publicado com qualidade normal.

E se não houver demanda suficiente, então não há nada para falar - conversa de fórum vazia - me dê tudo mais e de graça.
 
timbo писал (а):


Isto pode ser correto, mas uma pergunta permanece: quem realmente escreve e publica livros de programação no mundo? Os desenvolvedores fazem isso, ou são autores e editores de terceiros? Os desenvolvedores fazem o software e a linguagem, escrever e publicar um livro didático é um negócio diferente.

É um tema muito especializado que ainda não foi abordado pelos editores. É verdade, se eles (os editores) se entregarem a ele, eles o torcerão e cometerão tantos erros que um manual embutido se parecerá com a Bíblia em comparação :-)
 
Yurixx:


É obrigatório ter capítulos descrevendo (como alex_ant escreveu) o mecanismo de operação do programa MQL. Isto é algo que todo comerciante que é novo em programação pode entender mesmo antes de aprender a linguagem. E esta descrição deve estar ligada ao processo de negociação, e também pode explicar a diferença entre indicadores, scripts e Expert Advisors, como eles se comportam em relação à fila de carrapatos, ao servidor de negociação, uns aos outros, etc.

Deve ser dada mais atenção à estrutura do programa MQL, seus principais componentes - as funções init(), start() e deinit(). Estas funções são a diferença essencial entre a MQL e outros idiomas...

Exatamente!

"- Vocês já notaram, senhores, como está o tempo?
- Previsível.
- Previu precisamente, Sir Oira-Oira, previu precisamente"!
(Strugatsky, segunda-feira começa no sábado)
Razão: