[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 679
Caros programadores, por favor respondam a seguinte pergunta:
Saídas com 8 casas decimais. Por que não está normalizado?
http://savepic.ru/1435355.gif
Se estiver escrito na ajuda sobre a função NormalizeDouble() que ele arredonda para uma precisão especificada e retorna tipo duplo, você tem tudo certo, e se você precisar de uma seqüência de texto com precisão especificada após um ponto decimal, então você deve usar DoubleToStr()
Devo ter entendido mal o significado de int startH = Hora(); - dará ao servidor atual tempo - hora, eu procuraria por zero horas, ou qualquer outra hora:
Obrigado, agora funciona.
Mas porque não funcionou com a função Hora(), eu ainda não entendo.
Isso nos deu a hora atual da hora do norte. Por exemplo, que seja 5.
Portanto, quando chamamos abrir[i+5], obtemos o preço de abertura da vela que abriu no início do dia, ou seja, às 0:00 da manhã.
Por favor, explique o que exatamente eu não entendo...
Eu ainda não entendo porque não funcionou com a função Hora().
Isso nos deu a hora atual da hora do norte. Por exemplo, que seja 5.
Portanto, quando chamamos abrir[i+5], obtemos o preço de abertura da vela que abriu no início do dia, ou seja, às 0:00 horas.
Por favor, explique o que exatamente eu não entendo...
O tempo do servidor é o tempo do servidor ( TimeCurrent() ), você o tem em seu PC ( TimeLocal(); ), a função Hora() :
"Retorna a hora atual (0,1,2,...23) do último horário conhecido do servidor no início do programa (este valor não muda durante a execução do programa ).Nota: o último horário conhecido do servidor é simulado durante os testes. "
Eu mesmo nem sei o que fazer com ele se não mudar - talvez seja necessário apenas para o testador.
Preciso encontrar o preço de abertura da primeira vela no gráfico horário, ou seja, aquela às 0:00 e desta vela à vela atual para encontrar o valor máximo do preço.
Por que eu sempre fico com o alto da primeira vela do dia atual?
É assim que eu faço:
Cicle no tempo[] e encontre a barra desejada, e depois, rode a partir dessa barra para encontrar um extremo.
Colegas, alguém sabe como fazer para que o testador não deduza comissão para uma profissão? Talvez haja um arquivo em MT4, onde o valor da comissão de um contrato para um determinado instrumento é especificado?
Deixe-me explicar para que eu preciso dele. Além das moedas, também estou interessado nos futuros do Uber e do Índice RTS. O Quick não é adequado para o desenvolvimento de robôs. Por exemplo, minha corretora tem uma comissão para um contrato - CFD sobre futuros no índice rts (como parece, mas ...:) - é uma barulheira ... custa 10 livros verdes. É por isso que mesmo um comércio com um lucro de 250p dá uma perda de US$ 1 dólar no testador. É inacreditável, eu tenho ferramentas e citações, mas é impossível testá-las e otimizá-las.
Colegas, alguém sabe como fazer para que o testador não deduza comissão para uma profissão? Talvez haja um arquivo em MT4, onde o valor da comissão de um contrato para um determinado instrumento é especificado?
Deixe-me explicar para que eu preciso dele. Além das moedas, também estou interessado nos futuros do Uber e do Índice RTS. O Quick não é adequado para o desenvolvimento de robôs. Por exemplo, minha corretora tem uma comissão para um contrato - CFD sobre futuros no índice rts (como parece, mas ...:) - é uma barulheira ... custa 10 livros verdes. É por isso que mesmo um comércio com um lucro de 250p dá uma perda de US$ 1 dólar no testador. É inacreditável, eu tenho ferramentas e citações, mas é impossível testá-las e otimizá-las.
Por favor, informe como e o que você pode fazer para substituir o código para fazer a mesma coisa, mas trabalhar mais rápido:
if (BB_1>BB_2 && BB_2<=BB_3 && BB_1<0) // Найден разворот BB вверх
{
switch (tf)
{
case1: TrBBTurnUP_M1 =true; TrBBTurnDN_M1=false; // Флаг разворота вверх на М1case5: TrBBTurnUP_M5 =true; TrBBTurnDN_M5=false; // Флаг разворота вверх на М5case15: TrBBTurnUP_M15=true; TrBBTurnDN_M15=false; // Флаг разворота вверх на М15 case30: TrBBTurnUP_M30=true; TrBBTurnDN_M30=false; // Флаг разворота вверх на М30 case60: TrBBTurnUP_H1 =true; TrBBTurnDN_H1=false; // Флаг разворота вверх на H1case240: TrBBTurnUP_H4 =true; TrBBTurnDN_H4=false; // Флаг разворота вверх на H4case1440: TrBBTurnUP_D1 =true; TrBBTurnDN_D1=false; // Флаг разворота вверх на D1case10080: TrBBTurnUP_W1 =true; TrBBTurnDN_W1=false; // Флаг разворота вверх на W1case43200: TrBBTurnUP_MN =true; TrBBTurnDN_MN=false; // Флаг разворота вверх на MN
}
}
É apenas um pedaço de uma grande função, onde há muitas verificações desse tipo e isso afeta muito o desempenho. Já fiz aqui perguntas sobre otimização de código, mas não obtive respostas e não encontrei nada em busca... É realmente um segredo que ninguém sabe disso ou está disposto a compartilhá-lo? Pelo menos um link para um artigo... para ler a seu gosto... É impossível testá-lo completamente de qualquer maneira...
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.
Caros programadores,
Por favor, responda a seguinte pergunta:
Saídas com 8 casas decimais. Por que não está normalizada?
http://savepic.ru/1435355.gif
Caros programadores,
por favor respondam a seguinte pergunta:
Saídas com 8 casas decimais. Por que não está normalizado?
http://savepic.ru/1435355.gif
Se estiver escrito na ajuda sobre a função NormalizeDouble() que ele arredonda para uma precisão especificada e retorna tipo duplo, você tem tudo certo, e se você precisar de uma seqüência de texto com precisão especificada após um ponto decimal, então você deve usar DoubleToStr()
Devo ter entendido mal o significado de int startH = Hora(); - dará ao servidor atual tempo - hora, eu procuraria por zero horas, ou qualquer outra hora:
Obrigado, agora funciona.
Mas porque não funcionou com a função Hora(), eu ainda não entendo.
Isso nos deu a hora atual da hora do norte. Por exemplo, que seja 5.
Portanto, quando chamamos abrir[i+5], obtemos o preço de abertura da vela que abriu no início do dia, ou seja, às 0:00 da manhã.
Por favor, explique o que exatamente eu não entendo...
Obrigado, agora funciona.
Eu ainda não entendo porque não funcionou com a função Hora().
Isso nos deu a hora atual da hora do norte. Por exemplo, que seja 5.
Portanto, quando chamamos abrir[i+5], obtemos o preço de abertura da vela que abriu no início do dia, ou seja, às 0:00 horas.
Por favor, explique o que exatamente eu não entendo...
O tempo do servidor é o tempo do servidor ( TimeCurrent() ), você o tem em seu PC ( TimeLocal(); ), a função Hora() :
"Retorna a hora atual (0,1,2,...23) do último horário conhecido do servidor no início do programa (este valor não muda durante a execução do programa ).Nota: o último horário conhecido do servidor é simulado durante os testes. "
Eu mesmo nem sei o que fazer com ele se não mudar - talvez seja necessário apenas para o testador.
Você pode me dizer o que eu fiz de errado?
Preciso encontrar o preço de abertura da primeira vela no gráfico horário, ou seja, aquela às 0:00 e desta vela à vela atual para encontrar o valor máximo do preço.
Por que eu sempre fico com o alto da primeira vela do dia atual?
É assim que eu faço:
Colegas, alguém sabe como fazer para que o testador não deduza comissão para uma profissão? Talvez haja um arquivo em MT4, onde o valor da comissão de um contrato para um determinado instrumento é especificado?
Deixe-me explicar para que eu preciso dele. Além das moedas, também estou interessado nos futuros do Uber e do Índice RTS. O Quick não é adequado para o desenvolvimento de robôs. Por exemplo, minha corretora tem uma comissão para um contrato - CFD sobre futuros no índice rts (como parece, mas ...:) - é uma barulheira ... custa 10 livros verdes. É por isso que mesmo um comércio com um lucro de 250p dá uma perda de US$ 1 dólar no testador. É inacreditável, eu tenho ferramentas e citações, mas é impossível testá-las e otimizá-las.
Socorro!
Colegas, alguém sabe como fazer para que o testador não deduza comissão para uma profissão? Talvez haja um arquivo em MT4, onde o valor da comissão de um contrato para um determinado instrumento é especificado?
Deixe-me explicar para que eu preciso dele. Além das moedas, também estou interessado nos futuros do Uber e do Índice RTS. O Quick não é adequado para o desenvolvimento de robôs. Por exemplo, minha corretora tem uma comissão para um contrato - CFD sobre futuros no índice rts (como parece, mas ...:) - é uma barulheira ... custa 10 livros verdes. É por isso que mesmo um comércio com um lucro de 250p dá uma perda de US$ 1 dólar no testador. É inacreditável, eu tenho ferramentas e citações, mas é impossível testá-las e otimizá-las.
Socorro!
provavelmente o seguinte: https://www.mql5.com/ru/forum/119830
Por favor, informe como e o que você pode fazer para substituir o código para fazer a mesma coisa, mas trabalhar mais rápido:
É apenas um pedaço de uma grande função, onde há muitas verificações desse tipo e isso afeta muito o desempenho. Já fiz aqui perguntas sobre otimização de código, mas não obtive respostas e não encontrei nada em busca... É realmente um segredo que ninguém sabe disso ou está disposto a compartilhá-lo? Pelo menos um link para um artigo... para ler a seu gosto... É impossível testá-lo completamente de qualquer maneira...
Por favor, informe como e o que você pode fazer para mudar o código para fazer a mesma coisa, mas trabalhar mais rápido: ...