Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 249
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
Talvez seja melhor assim.
Apenas trocar de lugar. Ainda assim, Hora()>OpenHHH mais vezes do que hora e minutos.
Você acha que isso vai aumentar a velocidade da EA? Eu me pergunto, talvez... Francamente falando, eu nunca pensei em ordem de condições no IF...)
Você acha que isso vai aumentar a velocidade da EA? Interessante, talvez... Honestamente, nunca pensei na ordem de estabelecer condições no IF...)
Tudo parece estar correto, deve funcionar. Tentei seu código no meu - funciona com minutos. Mas somente das 14:25 às 14:59, das 15:25 às 15:59 etc.
{
int OpenHH=14,OpenMM=25;
bool Trade=true;
//----
if (Trade) // Разрешение на торговлю.
if (TimeHour(TimeCurrent()) >= OpenHH ) // В назначенный час
{ OpenOrders();Print("Время пришло ",TimeHour(TimeCurrent()),":",TimeMinute(TimeCurrent())); return(0); } // открыть ордера.
//----
return(0);
}
//+------------------------------------------------------------------+
void OpenOrders(){return(0);}
Mas assim que eu adicionar minutos ( TimeMinute(TimeCurrent())) >= OpenMM ) - sem resultado.
A EA também se recusa a fazer pedidos por minutos ao usar a função StrToTime().
Mais uma vez, obrigado... Vou continuar cavando...
Talvez seja melhor assim.
Nah... Isto também não funciona...
Mesmo quando uso outra função StrToTime() - se eu especificar tempo em horas inteiras - tudo está bem, mas assim que eu acrescentar minutos - nenhum resultado. Embora, como escrevi no 1º correio, as encomendas fechem às 23h45 das sextas-feiras sem qualquer problema.
bool Trade=true;
string OpenTime = "14:00"; // Вот так работает!!!
string OpenTime = "14:25"; // А вот так - не работает!!!
if ( StrToTime(OpenTime) == TimeCurrent() && Trade )
{ OpenOrders();Print("Время пришло ",TimeHour(TimeCurrent()),":",TimeMinute(TimeCurrent())); return(0); }
//----
return(0);
}
//+------------------------------------------------------------------+
void OpenOrders(){return(0);}
Nah... Isto também não funciona...
Mesmo quando se usa outra função StrToTime() - se eu especificar o tempo em horas inteiras - tudo está bem, mas assim que são adicionados minutos - nenhum resultado. Embora, como escrevi no 1º correio, as encomendas fechem às 23h45 das sextas-feiras sem nenhum problema.
bool Trade=true;
string OpenTime = "14:00"; // Вот так работает!!!
string OpenTime = "14:25"; // А вот так - не работает!!!
if ( StrToTime(OpenTime) == TimeCurrent() && Trade )
{ OpenOrders();Print("Время пришло ",TimeHour(TimeCurrent()),":",TimeMinute(TimeCurrent())); return(0); }
//----
return(0);
}
//+------------------------------------------------------------------+
void OpenOrders(){return(0);}
Eu não sei... Este código funciona para mim também....
Como você o testa? Se, por exemplo, no H1 e a preços de abertura, provavelmente não vai funcionar
Como você testa? Se, por exemplo, no H1 e a preços de abertura, provavelmente não funcionará.
Veja, é tão simples quanto isso... A ata deve ser um múltiplo de TF ...
Agora / se ( TimeCurrent() == StrToTime(OpenTime) && Trade ), se OpenTime = 14:25 / funcionará, mas somente em TF=M1 e M5 ... As ordens de abertura de função precisam de citações atuais, mas as ordens de fechamento de função não precisam delas...
Eu perdi este ponto de alguma forma (por causa da minha inexperiência).
Muito obrigado, eu já resolvi isso...
Sepulca:
Como você testa? Se, por exemplo, no H1 e a preços de abertura, provavelmente não vai funcionar.Ha ha... E aqui está uma mentira...
O problema acabou se revelando na função OpenOrders(). Esqueci completamente de remover o controle da abertura do pedido em caso de quebra de uma vela (barra):
if (Volume[0] > 1) return;
Então, no que a TF, a Expert Advisor, estava testando, estava abrindo ordens naquelas atas...
Estúpido em geral, em uma difícil...
Obrigado...