Example2: Será que uma função como esta seria adequada para o tratamento de erros?
Algo é muito curto. Mesmo esta também não está completa.
//*********************ф-ия обработки ошибок*************************|int Fun_Error(int Error)
{
switch(Error)
{ // Преодолимые ошибкиcase0: return(1);
case4: //Print("Торговый сервер занят. Пробуем ещё раз...");Sleep(500); // Простое решениеreturn(1); // Выход из функцииcase128: //Истек срок ожидания совершения сделкиreturn(1);
case129: //Print("Цена изменилась. Пробуем ещё раз...");return(1); // Выход из функцииcase132: //Print("Рынок закрыт. Пробуем ещё раз...");Sleep(123000); // Это было сделано для робо. У них первые 2 минуты в понедельник рынок закрыт, а надо было ставить ордера в 00:00return(1); // Выход из функцииcase135: //Print("Цена изменилась. Пробуем ещё раз...");RefreshRates(); // Обновим данныеreturn(1); // Выход из функцииcase136: //Print("Нет цен. Ждём новый тик...");while(RefreshRates()==false) // До нового тикаSleep(1); // Задержка в циклеreturn(1); // Выход из функцииcase137: //Print("Брокер занят. Пробуем ещё раз...");Sleep(500); // Простое решениеreturn(1); // Выход из функцииcase138: //Print("Новые цены. Пробуем ещё раз...");Sleep(1); // Задержка в циклеreturn(1); // Выход из функцииcase146: //Print("Подсистема торговли занята. Пробуем ещё...");Sleep(500); // Простое решениеreturn(1); // Выход из функцииcase4107: //Print("Неправильный параметр цены для торговой функции. Пробуем ещё...");Sleep(50); // Простое решениеreturn(1); // Выход из функции// Критические ошибкиcase1:
return(0);
case2: Alert("Общая ошибка. Перегрузите терминал и\или компьютер.");
return(0); // Выход из функцииcase5: Alert("Старая версия терминала.");
//Work=false; // Больше не работатьreturn(0); // Выход из функцииcase64: Alert("Счет заблокирован.");
//Work=false; // Больше не работатьreturn(0); // Выход из функцииcase130: Alert("Неправильные стопы.");
return(0); // Выход из функцииcase133: Alert("Торговля запрещена.");
return(0); // Выход из функцииcase134: Alert("Недостаточно денег для совершения операции.");
return(0); // Выход из функцииcase4051: Alert("Недопустимое значение параметра функции.");
return(0); // Выход из функцииcase4108: Alert("Неверный номер тикета.");
return(0); // Выход из функцииdefault: //Print("Возникла ошибка ",Error); // Другие вариантыreturn(0); // Выход из функции
}
}//******************************************************************|
Assim, se a função retornar 1, devemos tentar colocar um pedido novamente; se retornar 0, sairemos da função para abrir pedidos.
Comprar/vender sem parar e descolar sl=0;tp=0, depois modificar-->sl=100;tp=300
O pensamento já me ocorreu por desespero...
Entretanto, a questão é por que com todos os parâmetros corretos o pedido não é feito.
Como este é um gráfico dourado, os números 11 e 1 são bastante corretos. Traduzido significa 10 e 110 pips.
Verifiquei os preços e os parâmetros de parada e lucro. Há exatamente 120 pips entre o lucro e a parada, e por alguma razão o preço de abertura = 0,000.
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Olá, se um EA só define ordens pendentes, será que ele deve ser capaz de lidar com erros?
Sim.
Por exemplo.
Sim.
Por exemplo.
Será que uma função como esta seria adequada para o tratamento de erros?
Algo é muito curto. Mesmo esta também não está completa.
Assim, se a função retornar 1, devemos tentar colocar um pedido novamente; se retornar 0, sairemos da função para abrir pedidos.
Cidadãos, vocês podem me dizer por que o terminal Alpari não consegue fazer um pedido?
A função OrderSend tem este aspecto
Não há parâmetros iguais a zero. Eu o verifiquei.
A distância mínima de parada e de lucro de acordo com as condições do terminal = 0,1.
O terminal gera erro 130 e escreve sobre um lucro ou parada inválida.
Os parâmetros SL e TP são 11 e 1 (após a normalização), respectivamente.
Nos terminais Aforex, Diven FX, ForexClub, AlfaForex - sem problemas com o mesmo código.
Cidadãos, vocês podem me dizer por que o terminal Alpari não consegue fazer um pedido?
A função OrderSend tem este aspecto
Não há parâmetros iguais a zero. Eu o verifiquei.
A distância mínima de parada e de lucro de acordo com as condições do terminal = 0,1.
O terminal gera erro 130 e escreve sobre um lucro ou parada inválida.
Os parâmetros SL e TP são 11 e 1 (após a normalização), respectivamente.
Nos terminais Aforex, Diven FX, ForexClub, AlfaForex - sem problemas com o mesmo código.
comprar/vender sem parar e retirar sl=0;tp=0, depois modificar-->sl=100;tp=300
Comprar/vender sem parar e descolar sl=0;tp=0, depois modificar-->sl=100;tp=300
O pensamento já me ocorreu por desespero...
Entretanto, a questão é por que com todos os parâmetros corretos o pedido não é feito.
Como este é um gráfico dourado, os números 11 e 1 são bastante corretos. Traduzido significa 10 e 110 pips.
Verifiquei os preços e os parâmetros de parada e lucro. Há exatamente 120 pips entre o lucro e a parada, e por alguma razão o preço de abertura = 0,000.
A tentativa de fazer um pedido pendente também não trouxe nada....
Está se tornando cada vez mais milagroso.
Bom dia a todos!
Você poderia me dizer qual é a melhor maneira de codificar a seguinte condição
Se todos os castiçais de 1 a 20 são de baixa sem exceção (o número de pontos entre a abertura e o fechamento de cada candelabro não importa)
Para abrir um pedido.
Eu não consigo ler mais nada, basta abrir um pedido.