Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 77

 
Vitaly Muzichenko:
Não encontrei nenhuma, e não me lembro dela aqui

grosso modo, há uma oferta, há um preço médio dos pedidos na grade

uma rede de arrasto é uma oferta menos o preço médio da rede, em comparação com a etapa especificada

Se algo der errado, você passa imediatamente pelo laço e cobre toda a grade

este é um algoritmo rudimentar e precisa ser melhorado do lado da robustez, mas mostra bons resultados em curtas distâncias

A propósito, estou à procura de idéias para melhorar a estabilidade do algoritmo.

 
trader781:

grosso modo, há uma oferta, há um preço médio dos pedidos na grade

uma rede de arrasto é uma oferta menos o preço médio da rede, em comparação com a etapa especificada

Se algo der errado, você passa imediatamente pelo laço e cobre toda a grade

este é um algoritmo rudimentar e precisa ser melhorado do lado da robustez, mas mostra bons resultados em curtas distâncias

A propósito, estou à procura de idéias para melhorar a estabilidade do algoritmo

Minha rede de arrasto funciona bem tanto individualmente quanto em toda a rede.

Você já leu minha pergunta? Não estou esperando por uma resposta sua, mas dos profissionais.

 
Vitaly Muzichenko:

Sim, logicamente pode ser, por exemplo, que o terminal tenha perdido a conexão - há muitas razões para isso, eu o fiz perder a conexão 50 vezes por dia.

Qual é a melhor maneira de obter preços atualizados, ao mesmo tempo em que é menos intensivo em recursos, pense em você - para a rede de arrasto.

Portanto, não há muitas opções...

Eis o que faço: em loop de ordem, após passar por todos os filtros para símbolo, número mágico e tipo, recebo o preço correto para uma variável via SymbolInfoDouble() e faço cálculos de nível com ela imediatamente antes de enviar uma solicitação comercial (se o cálculo der tal resultado que seja necessária uma modificação). Você também pode usar SymbolInfoTick() - o que melhor se adequar à sua lógica. É claro que podemos obter não apenas um preço, mas todo o conjunto de parâmetros do último tick, mas às vezes é suficiente obter apenas um preço para um determinado tipo de pedido - Pergunte ou Licite e trabalhe com ele, e obtenha o outro preço para outro tipo de pedido na próxima iteração do loop, de qualquer forma. É por isso que utilizar o preço obtido uma vez antes do laço pode resultar no risco de obter um preço obsoleto se o carrapato for perdido devido a cálculos prolongados.

 
Artyom Trishkin:
E se não conseguir nada? Como se retarda o ciclo?

E isto eu deixei ao critério de todos. Mas, a pedido dos usuários, vou contar-lhes um enorme segredo.

       int d = 0;
        do
         {
          d++;
         }
        while(!SymbolInfoTick(_Symbol, mqlTick) && d < 7);
 

Olá a todos!

Você poderia me dizer como escrever pontas de ferramentas/popups?

Grosso modo, preciso de um indicador sob uma determinada barra para desenhar um ícone e quando clico neste ícone, um pequeno texto com uma descrição será mostrado

Obrigado!

 
LuckySith:

Olá a todos!

Você poderia me dizer como escrever uma dica de ferramenta/popup?

Grosso modo, eu preciso do indicador para desenhar um ícone sob uma determinada barra e mostrar um pequeno texto com descrição quando eu pressiono este ícone

Obrigado!

SetIndexLabel

Define o texto de descrição da linha indicadora a ser exibido na Janela DataWindow e na ponta da ferramenta.

SetIndexLabel(
índice int,// número da linha
texto de seqüência de caracteres// texto de descrição
);

Parâmetros

índice

[O número de índice da linha. Deve ser de 0 a 7.

texto

[em] Texto da descrição da linha indicadora. NULL significa que este valor de linha não é mostrado na DataWindow.

 
Alekseu Fedotov:

SetIndexLabel

Define o texto de descrição da linha indicadora para exibir informações na DataWindow e na ponta da ferramenta.

SetIndexLabel(
índice int,// número da linha
texto de seqüência de caracteres// texto de descrição
);

Parâmetros

índice

[O número de índice da linha. Deve ser de 0 a 7.

texto

[em] Texto da descrição da linha indicadora. NULL significa que este valor de linha não é mostrado na DataWindow.

Hmm, então é uma linha.
E para mim, ao clicar no ícone
 
LuckySith:
Hmm, então é uma linha.
E para mim, quando você clica no ícone.

Tanto faz, você pode fazer isso no ícone.

Jogue os fractais sobre a tabela e passe o mouse sobre o ícone.

 
Olá. Você pode me dizer como if(MarketInfo(Symbol(),MODE_POINT)==0) poderia estar correto?
 
Gevorg Hakobyan:
Olá. Por favor, informe como if(MarketInfo(Symbol(),MODE_POINT)==0) pode ser correto?
Verifique se há um símbolo na visão geral do mercado. Não pode ser zero.
Razão: