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

 
Mathemat:
De qualquer forma, espera-se que a necessidade de um compilador C tenha desaparecido. Basicamente, você pode encontrar distribuições de DOS muito compactas na web, pesando no máximo uma dúzia de megas.

Obrigado! Depois de dois dias com tutoriais C, finalmente entendi algo em exemplos de Expert Advisors. Vou tentar usar a MQL4 imediatamente. Espero receber mais artigos da Rosha em breve.
 
Dmitrich:
Mathemat:
Bem, esperemos que a necessidade de um compilador C tenha desaparecido. Em princípio, você pode encontrar distribuições de DOS muito compactas na web, pesando no máximo uma dúzia de megas.

Obrigado! Depois de dois dias com tutoriais C, finalmente entendi algo em exemplos de Expert Advisors. Vou tentar usar a MQL4 imediatamente. Espero que os artigos também estejam disponíveis em breve.

Eles estão disponíveis agora, embora através de um link temporário.
 
Rosh:
Dmitrich:
Mathemat:
Bem, esperemos que a necessidade de um compilador C tenha desaparecido. Basicamente, você pode encontrar distribuições de DOS muito compactas na web, pesando no máximo uma dúzia de megas.

Obrigado! Depois de dois dias com tutoriais C, comecei a entender algo em exemplos de Expert Advisors. Vou tentar usar a MQL4 imediatamente. Espero que mais artigos da Rosha fiquem disponíveis em breve.

Eles estão disponíveis agora, embora através de um link temporário.

Caro Rosh, obrigado por seus artigos! Já estou desconfiado de escrever algo assim no fórum para não ofender ninguém novamente, mas li seus artigos com tanto cuidado que descobri uma gralha. Artigo 3, linha 2, a frase "cada um destes" em vez de "cada um destes". As letras "x" e "z" estão ao lado uma da outra no teclado e eu mesmo às vezes escorrego e depois "apanho" tais erros nos documentos. Eu peguei sua gralha por hábito.

;)
 
Obrigado, eu conserto se puder (já faz um tempo :) ).
 
Não, eu não posso. Aparentemente, o endereço do sistema de publicação também mudou.
 
O livro didático parece ter sido tratado. Mas a documentação não nos deu uma resposta direta.
E eu acidentalmente decidi olhar para a lista de parâmetros da funçãoOrderSend e imediatamente me deparei com ela.

A explicação da função diz: "Vocênão pode usar um preço estimado ou não-normalizado".
É perfeitamente claro e conciso.

Algumas linhas abaixo é um exemplo com preços não-normalizados e de liquidação:

ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Bid-25*Point,Ask+25*Point, "My order #"+counter,16384,0,Green);
if(ticket<0)
{
Print("OrderSend failed with error #",GetLastError());
return(0);
}
Renat, isto não é um erro real ?
E essas coisas são consistentes com a noção de "documentação de qualidade"?

É por isso que os usuários interessados pedem que você melhore a documentação. Eles não estão procurando criticá-lo de forma irrazoável, não estão exigindo o impossível ou irrazoável, e certamente não estão tentando ofender ninguém ou a empresa como um todo.
 
Este exemplo assume que os preços Bid and Ask são recebidos do servidor comercial, o que significa que os preços padrão são normalizados para dígitos após o ponto decimal. De fato, verificou-se que antes do aparecimento da possibilidade de baixar o histórico minucioso do Centro de História, muitos usuários tinham preparado eles mesmos tal histórico a partir de várias fontes e o resultado obtido durante os testes deu erros relacionados a preços não-normalizados (os pedidos simplesmente não podiam abrir). Por isso, tal frase apareceu:


Um preço estimado ou não-normalizado não pode ser usado. Se o preço de abertura solicitado não estava no fluxo de preços ou o preço solicitado não é normalizado de acordo com o número de dígitos após o ponto decimal, será gerado o erro 129 (ERR_INVALID_PRICE).


Você "esqueceu" de citá-lo na íntegra. E esta frase permanecerá relevante, pois se você tomou um preço calculado (o valor de algum muving ou outro indicador), então o servidor não se dará ao trabalho de mostrar sua "inteligência" (ou seja, arredondá-la na direção correta), e simplesmente reenviará a ordem.
 

Eu não esqueci nada, Rosh. A sugestão que você acrescentou à minha citação não muda nada em substância ou forma. Já vi mais de uma vez no fórum MQ (não me lembro apenas deste ou de um paralelo) pessoas perguntando por que as ordens não são executadas, porque eu uso Bid ou Ask price, daí o preço ser relevante, então por que a rejeição ? A solução para esta questão era simples - deveríamos normalizar o preço e fazê-lo até mesmo para o Bid and Ask.

Talvez isto tenha mudado nas últimas construções, mas não o vi mencionado em nenhum lugar.

Além disso, há três preços nos parâmetros OrderSend(). No exemplo acima, dois dos três são computados. A expressão computada contém tanto operandos inteiros como operandos duplos. A normalização dos preços surgiu como um meio de resolver o problema da representação ao converter inteiros para o dobro. Portanto, o leitor desta documentação que certamente não tem muita experiência em MQL4, não poderá dizer com certeza se o resultado dos cálculos será normalizado ou não. Portanto, este exemplo dará origem a mais perguntas do que respostas.

E mesmo se a normalização estiver bem, ainda há uma expressão no preço.

Portanto, minhas perguntas a você, Rosh, como pessoa que escreve artigos sobre a MQL4 para iniciantes:
Você realmente acredita que este exemplo é bom e ilustra o que ele deve ilustrar?
Você realmente acha que este exemplo ajudará um iniciante a entender como usar OrderSend() e não confundi-lo?

 
Yurixx:

Você realmente acha que este exemplo ajudaria um iniciante a entender como usar OrderSend() em vez de confundi-los?

Pessoalmente, acredito que um iniciante não é igual a um idiota. Se você descobriu, se foi fácil para mim, por que outra pessoa não pode descobrir? Por que este recém-chegado abstrato está sempre associado a um idiota?
 
Jurix, posso ver que você está se engajando apenas em críticas.