[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 60

 

à artmedia70:

Bem, o pedido já está fechado quando se trata desta condição.

 

para demlin:

Bem, eu posso vê-lo desaparecer do Comércio.

 
demlin:

Olá a todos!

O indicador desenha uma linha, que no dia seguinte se separa das barras e fica pendurada para o lado. Quando reinicio o indicador, ele desenha normalmente novamente. O que pode ser?


O indicador está torto. Temos que refazê-lo.
 
Vinin:

O indicador está torto. Temos que refazê-lo.
Eu entendo isso, mas qual poderia ser o problema?
 
Solree:

para demlin:

Bem, eu posso vê-lo desaparecer do Comércio.

Que tal organizar uma busca de pedidos da história? Quando você encontra a ordem correta, você conta o tempo de fechamento
 

a delmin:

Para não fazer tal coisa, eu uso um bilhete. Em geral, podemos reescrever a lógica (pelo menos, podemos escrever o valor OrderClose() devolvido em bool e depois verificá-lo). Estou apenas curioso, porque não devolve o valor correto para uma ordem fechada e não quero sobrecarregar o programa com ações desnecessárias. Espero que em sua ajuda :)

 
Solree:

a delmin:

Para não fazer tal coisa, eu uso um bilhete. Em geral, podemos reescrever a lógica (pelo menos, podemos escrever o valor OrderClose() devolvido em bool e depois verificá-lo). Estou apenas curioso, porque não devolve o valor correto para uma ordem fechada e não quero sobrecarregar o programa com ações desnecessárias. Espero que em sua ajuda :)

Já respondi sua pergunta: você tem que verificar a hora de fechamento de um pedido por bilhete logo após sua seleção. Somente para ordens fechadas é superior a zero. Mas, no seu caso, a verificação do horário de fechamento vai após o bloco de fechamento de outras ordens, e você, respectivamente, verifica o horário de fechamento de outras ordens. Em geral, você obtém respostas tão abrangentes sobre quanto código você tem mostrado.
 
demlin:
Eu entendo isso, mas qual poderia ser o problema?

Você precisa olhar para o código, caso contrário somente os telepatas podem ajudar
 
    if (tempWho == 0 && pos != -1)
    {
        if (OrderSelect(pos, SELECT_BY_TICKET))
        {
            if (OrderType() == OP_BUY)
            {
                if (who != 1)
                {
                    while(!OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Bid, Digits), 0))
                        Sleep(3000);
                    
                    pos = -1;
                }
            }
            else if (OrderType() == OP_SELL)
            {
                if (who != 2)
                {
                    while(!OrderClose(OrderTicket(), OrderLots(), NormalizeDouble(Ask, Digits), 0))
                        Sleep(3000);
                    
                    pos = -1;
                }
            }
            
            Alert(OrderCloseTime());
            
            if (OrderCloseTime() != 0)
            {
                if (OrderProfit() < 0)
                {
                    if (tempCount != 0)
                    {
                        tempLot += lot;
                        tempCount--;
                    }
                    else
                    {
                        tempLot = lot;
                        tempCount = countLot;
                    }
                }
                else
                {
                    tempLot = lot;
                    tempCount = countLot;
                }
            }
        }
    }

Aqui está o código para aquele bloco onde o verificador de tempo de fechamento faz todo o material.

Não importa quando chamar a função? O principal é ter uma ordem fechada. Ou não...?

Z.Y. Já a mudou para mais lucrativa em termos de produtividade. Mas eu ainda me pergunto o que faço de errado com OrderCloseTime().

 
Solree:

Aqui está o código para aquele bloco onde o verificador de tempo de fechamento faz todo o material.

Não importa quando chamar a função? O principal é ter uma ordem fechada. Ou não...?

Z.Y. Já a mudou para mais lucrativa em termos de produtividade. Mas eu ainda me pergunto o que estou fazendo de errado com OrderCloseTime().

É melhor anotar o que você quer alcançar.