Como codificar? - página 150

 

Olá, eu tenho um especialista que uso que precisa ser capaz de reenviar uma ordem de compra ou venda se houver um problema abrindo o pedido se o servidor estiver desconectado, ocupado ou o que você tem. Esta manhã ele deveria ter aberto um pedido, mas não pôde porque a plataforma estava desconectada. No código agora ele está configurado para esperar 3 segundos e depois tentar novamente, o que ele fez, mas só tentou 3 vezes e depois parou de tentar enviar o pedido através de minha ea não escalpa, mas é mais uma negociação de médio prazo, então eu só recebo 1-3 negociações por semana por par. Como posso tê-lo codificado para que ele espere 10 segundos antes de tentar novamente e depois continue tentando enviar o pedido até que ele passe, eu gostaria de ter a opção de ajustá-lo no código quantos segundos ele espera para tentar novamente e depois também quantas vezes ele continuará tentando.

Anexei um trecho de código para que alguém pudesse ver o que poderia ser alterado. Obrigado antecipadamente por sua ajuda!

Mike

RefreshRates();

int ticket=OrderSend(Symbol(),OP_BUY,ManagedLotSize(),Ask,Slippage,sl,tp, "Expert" + " - " + Period(),MagicNumber,0,Lime);

if(ticket<0)

{

Imprimir("Erro na abertura do pedido de compra : ",GetLastError());

Sleep(3000); //---- esperar por 3 segundos

}

senão

{

pausa;

}

}

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))

{

Imprimir("Pedido aberto : ",OrderOpenPrice());

}

senão

{

Imprimir("Erro na abertura do pedido de compra : ",GetLastError());

}

}

vazio ManageSell()

{

duplo tp,sl;

if (TakeProfit==0) { tp=0; } else { tp=Bid-TakeProfit*Point; }

if (StopLoss==0) { sl=0; } else { sl=Bid+StopLoss*Point; }

for (int i = 1; i <=5; i++) //---- Loop if requote

{

RefreshRates();

int ticket=OrderSend(Symbol(),OP_SELLL,ManagedLotSize(),Bid,Slippage,sl,tp, "Expert" + " - " + Period(),MagicNumber,0,Red);

if(ticket<0)

{

Imprimir("Erro na abertura do pedido de VENDA : ",GetLastError());

Sleep(3000); //---- esperar por 3 segundos

}

senão

{

pausa;

}

}

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))

{

Imprimir("Pedido de venda aberto : ",OrderOpenPrice());

}

senão

{

Imprimir("Erro na abertura do pedido de VENDA : ",GetLastError());

}

 

Use o OrderRelable incluir arquivo.

Lux

Arquivos anexados:
 

Olá kevin07,

Testarei a nova versão do sinal de alerta de não-lagzigzag quando o mercado abrir no domingo. Obrigado novamente por seu trabalho. Você e outros aqui que dão seu tempo e experiência pro bono são o que torna muitos de nós comerciantes mais bem sucedidos. Vou informá-los de meus resultados com o novo indio.

Com os melhores cumprimentos, Tom.

 

ajudar a fixar este indicador

olá a todos, quando tento compilar este indicador, este erro me parece, poderia ser corrigido, por favor?

obrigado

Arquivos anexados:
 
zombie333:
Olá a todos, quando tento compilar este indicador, este erro me parece, poderia ser corrigido, por favor, obrigado.

Não se preocupe, não são erros, são apenas avisos. Eles colocaram a biblioteca inteira no indicador, mas usaram apenas a parte.

 
Roger09:
Não se preocupe, não são erros, são apenas avisos. Eles colocaram a biblioteca inteira no indicador, mas usaram apenas a parte.

obrigado roger por me dizer o que isso significa,..,

mas por que não aparece quando o coloco na tabela?

você pode verificá-lo por favor ??

 

Se você colocá-lo no diretório/especialistas/indicadores e depois compilá-lo, reinicie seu terminal e observe os Indicadores Navigator/Custom.

 
Roger09:
Se você colocá-lo no diretório/especialistas/indicadores e depois compilá-lo, reinicie seu terminal e observe os Indicadores Navigator/Custom.

No roger , isto que quero dizer ,,

Arquivos anexados:
 

Quando você inicia seu indicador, deve ser permitida a importação de DLL.

 
Roger09:
Quando você inicia seu indicador, deve ser permitida a importação de DLL.

obrigado Roger , agora é trabalho ,,