[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 748

 
Roger:
Tente reiniciar seu terminal.

:) Obrigado! Reiniciar o terminal não ajudou, mas reiniciar meu próprio cérebro ajudou! Uso diferentes blocos em meu EA - bloco comercial, bloco de critérios, bloco variável, bloco de funções adicionais, etc., que são conectados por um... Então eu estava mudando o bloco de critérios comerciais "Critérios", e eu precisava do "Critério01". Esse é o truque... :)

ZZZ... Eu estava começando a acreditar no "drubashki"... :) Eu deveria ter acabado de dormir um pouco...

 
itum:
POR FAVOR, ME AJUDE!!! No seguinte código eu verifico se o pedido foi rentável ou não! Se não contar a quantidade!!!
Se o primeiro comércio não foi lucrativo, então o ciclo de contagem é iniciado e é adicionado para sempre.

Mas há uma grande vantagem!!! Se um negócio é lucrativo, então todos os outros pedidos perdidos são contados normalmente ....

duplo pedidoProf; // Contador do número de negócios perdidos

duplo CalculateLots(){
dupla Res=0,01;
bool bProfit=verdadeiro;
int PrevTime=-1;
tmpLotes duplos;
for (int i=0;i<OrdersHistoryTotal();i++){
se (!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) continuar;
se (OrderSymbol()!=Symbol()) continuar;
se (OrderCloseTime()<PrevTime) continuar;
PrevTime=OrderCloseTime();
se (OrderProfit()>0){bProfit=verdadeiro; orderProf=0;} se (OrderProfit()<0){bProfit=falso; orderProf++;}
tmpLots=OrderLots();
}


retorno(Res);
}
Eu lhe dei um link para Igor Kim... Lá você encontrará muitas coisas boas para suas necessidades...
 
artmedia70:
Eu lhe dei um link para Igor Kim... Há muitas coisas que você precisa para suas necessidades...

DAK ! É o mesmo que o meu ....

O PROBLEMA é que a primeira vez não conta normalmente, mas depois conta normalmente.... )))

ajuda ...

 

O enigma é este.

O indicador no final do código cria um objeto, que serve como uma bandeira para outro indicador.

Depois de criar o objeto, preciso "dormir" o indicador por 5 segundos, depois apagar o objeto e dormir por 60 segundos, após o que ele vai para a última tentativa e começa de novo com um novo tique.

Tentando fazer isso

      int pauseT=0, // 
          pause01=0, // время первой паузы
          pause02=0; // время второй паузы
         if (ObjectFind("signalG")==1) // проверка наличия
         pause01=TimeLocal()+5; // 
         {while (TimeLocal()<pause01) // цикл сравнения
         {pauseT=TimeLocal()+1;} // чем бы его занять?????
         ObjectDelete("signalG");}
         if (ObjectFind("signalG")==-1) // повтор всего для 2-ой паузы
         pause02=TimeLocal()+15;
         while (TimeLocal()<pause02)
         {pauseT=TimeLocal()+1;}

Ela fica pendurada até parecer que o tempo está se esgotando.

Alguma dica de como fazer isso?

 
Abzasc:

O enigma é este.

O indicador no final do código cria um objeto, que serve como uma bandeira para outro indicador.

Após criar o objeto, preciso "dormir" o indicador por 5 segundos, depois apagar o objeto e dormir por 60 segundos, após o que ele irá para a última tentativa e recomeçará do início com um novo tique.

Tentando fazer isso

Ela fica pendurada até parecer que o tempo está se esgotando.

Alguma dica de como fazer isso?

Martelo de forja... :):) Desculpe, não pude resistir... :)
 
artmedia70:
Martelo de forja... :):)
Como um temporizador? Ele vai entrar em um sono letárgico :)
 
Abzasc:
Como um temporizador? Entrará em um sono letárgico :)
Bem... quando ele precisar de fazer cócegas, ele vai acordar... :)
Ok, isso é fora de tópico. Quem me dera poder ser mais específico. Um para acordá-lo, outro para abatê-lo, outro para pregá-lo...
E quanto à alimentação? :)
 
artmedia70:
mais detalhes em
Faça a pausa do indicador. Mais ou menos como um sono.
 
Abzasc:
Faça uma pausa no indicador. Mais ou menos como dormir.

O que há de errado com Dormir?

E também - ao verificar a presença de um objeto

         if (ObjectFind("signalG")==1) // проверка наличия
você compara com o número da subjanela do indicador. E se houver dois deles?
É melhor comparar com uma variável que é atribuída ao número da subjanela do indicador desejado.

É assim que eu procuro:

 int WinID=WindowFind("A/D");               // Номер окна AD

E então eu já verifico a presença da subjanela:

// --------------- Начертим восходящую трендовую линию (DN - экстремумы) ---------------------            
             
               if (WinID>0)   // Если окно индикатора есть на чарте (оно может иметь любой номер, кроме 0)
                  {
                     if (ObjectFind("Trend_GLine_DN")<0)     // Если объект ещё не построен
                     ObjectCreate("Trend_GLine_DN",OBJ_TREND,WinID,LowestTDN,LowestPeakDN,HighestTDN,HighestPeakDN);
                     ObjectSet("Trend_GLine_DN",OBJPROP_COLOR,Lime);
                     ObjectSet("Trend_GLine_DN",OBJPROP_TIME1,LowestTDN);
                     ObjectSet("Trend_GLine_DN",OBJPROP_PRICE1,LowestPeakDN);
                     ObjectSet("Trend_GLine_DN",OBJPROP_TIME2,HighestTDN);
                     ObjectSet("Trend_GLine_DN",OBJPROP_PRICE2,HighestPeakDN);
                  }
 
artmedia70:

O que você não gosta em Dormir?

Não funciona nos indicadores. A razão de fazer desta maneira - não entendo. Aparentemente, um indicador de trabalho constante é suposto hipnotizar :)
artmedia70:

E se eu tiver dois deles?

Não vai. Apenas se livrando de janelas desnecessárias.

No entanto, vou precisar de um cheque mais tarde, mas espero que para a EA :) obrigado, vou tomar nota.

Razão: