[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
:) 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...
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.
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... :)
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? :)
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);
}
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...
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... 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
Ela fica pendurada até parecer que o tempo está se esgotando.
Alguma dica de como fazer isso?
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... :):)
Como um temporizador? Entrará em um sono letárgico :)
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? :)
mais detalhes em
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
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:
E então eu já verifico a presença da subjanela:
O que você não gosta em Dormir?
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.