Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Esta parte
if(newbar==Time[0])return(0);
else newbar=Time[0];
int ticket, total;
if(Bars<100)
{
Impressão ("barras com menos de 100");
retornar(0);
}
if(TakeProfit<10)
{
Imprimir ("TakeProfit menos de 10");
retornar(0); // verificar TakeProfit
}
Está impedindo a ea de fechar pedidos em determinado momento se não for o primeiro tique de uma nova barra e se o lucro não for > 10 pipsOi mladen, removi essa parte da codificação e ainda minha ea não fecha no momento desejado.
Você tem alguma idéia de qual poderia ser a razão? Obrigado.
Atenciosamente
Ryan
Oi mladen, eu removi essa parte da codificação e ainda minha ea não fecha na hora desejada.
Você tem alguma idéia de qual poderia ser a razão? Obrigado.
Cumprimentos
RyanDa maneira como está escrito, só fechará pedidos, e somente se o horário do corretor for exatamente 07:00:00:00
Da maneira como está escrito, só fechará pedidos, e somente se o horário do corretor for exatamente 07:00:00:00
Oi mladen, há alguma outra forma de contornar isto, pois parece não estar funcionando aqui.
Cumprimentos
Ryan
Oi mladen, há alguma outra forma de contornar isto, pois parece não estar funcionando aqui.
Cumprimentos
RyanTente usar
Se (TimeCurrent()>= StringToTime("07:00:00"))
em vez de
Tente usar
Se (TimeCurrent()>= StringToTime("07:00:00"))
em vez deOi mladen, ainda não está funcionando. Estou me perguntando se poderia ser devido a esta linha aqui... ou o OrderTotal ou o OrderSelect pode estar causando o problema?
para (int i=OrdersTotal()-1; i>=0; i--)
{
se (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
Cumprimentos
Ryan
Oi mladen, ainda não está funcionando. Estou me perguntando se poderia ser devido a esta linha aqui... ou o OrderTotal ou o OrderSelect pode estar causando o problema?
para (int i=OrdensTotal()-1; i>=0; i--)
{
se (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
Cumprimentos
RyanNão. Essas linhas estão corretas
Não. Essas linhas estão corretas
Oi mladen, porque eu defini minha ea para ter apenas 1 comércio em qualquer momento e notei que OrdensTotal definiu minha int eu conto para negativo 0 por 1-1, i>=0; i-- fará minha i=-1
por isso estava se perguntando se este poderia ser o erro.
senão se(total > 1) // para fechar ordens com base no tempo... ainda não resolvido.
{
se (Hora()==7 && Minuto()==30)
{
para (int i=OrdensTotal()-1; i>=0; i--)
{
se (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if (!UseCurrSymbol || OrderSymbol()==Symbol())
{
se (OrderType()==OP_BUY)
{
pBid=MarketInfo(OrderSymbol(),MODE_BID);
OrderClose(OrderTicket(),OrderLots(),pBid,1,Blue);
}
se (OrderType()==OP_SELL)
{
pAsk=MarketInfo(OrderSymbol(),MODE_ASK);
OrderClose(OrderTicket(),OrderLots(),pAsk,1,Red);
}
}
}
}//
}
retorno(0);
}
Oi mladen, porque eu defini minha ea para ter apenas 1 comércio em qualquer momento e notei que OrdensTotal definiu minha int eu conto para negativo 0 por 1-1, i>=0; i-- fará minha i=-1
por isso, estava se perguntando se este poderia ser o erro.
senão se(total > 1) // para fechar ordens com base no tempo... ainda não resolvido.
{
se (Hora()==7 && Minuto()==30)
{
para (int i=OrdensTotal()-1; i>=0; i--)
{
se (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
se (!UseCurrSymbol || OrderSymbol()==Symbol())
{
se (OrderType()==OP_BUY)
{
pBid=MarketInfo(OrderSymbol(),MODE_BID);
OrderClose(OrderTicket(),OrderLots(),pBid,1,Blue);
}
se (OrderType()==OP_SELL)
{
pAsk=MarketInfo(OrderSymbol(),MODE_ASK);
OrderClose(OrderTicket(),OrderLots(),pAsk,1,Red);
}
}
}
}//
}
retorno(0);
}Favor substituir isto : f (Hour()==7 && Minute()==30) pela linha que lhe enviei e tente então
OrdensTotal() retornará 1 se houver uma ordem aberta. Ao usar OrderSelect(), esse 0 (OrderTotal()-1) irá selecionar a ordem correta. Se OrderTotal() retorna 0, então não há ordens abertas no pool de ordens ativo.
Favor substituir isto : f (Hour()==7 && Minute()==30) pela linha que lhe enviei e tente entãoOrdersTotal() retornará 1 se houver uma ordem aberta. Ao usar OrderSelect(), esse 0 (OrderTotal()-1) irá selecionar a ordem correta. Se OrderTotal() retorna 0, então não há ordens abertas no pool de ordens ativo.
Oi mladen, lamento dizer que acabei de testá-lo de novo e ainda não está funcionando.
Existe outra maneira de fechar meu negócio com base em um tempo específico?
Cumprimentos
Ryan
Favor substituir isto : f (Hour()==7 && Minute()==30) pela linha que lhe enviei e tente então OrderTotal() retornará 1 se houver uma ordem aberta. Ao usar OrderSelect(), esse 0 (OrderTotal()-1) irá selecionar a ordem correta. Se OrderTotal() retorna 0, então não há ordens abertas no pool de ordens ativo.
Oi mladen, eu consegui resolver o problema. parece que este revestimento estava causando o problema... o código está funcionando depois que eu o removi.
senão se(total > 1)
obrigado por sua assistência...
Cumprimentos
Ryan