Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 111
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
Não entendo como, corrigi os nomes, a linha ainda está vermelha independentemente do tipo de ordem, apenas chamada de forma diferente. (Então eu tenho que encontrar uma maneira de cortá-lo para 10 barras), eu preciso exatamente da maneira
experimente agora.
É bom que haja um livro de origem por aí)
Ao pressionar o botão de compilação, o bot morre junto com o terminal, e após abrir EX ele não abre e este arquivo fica vazio.
É o que parece.
Também se você colocar azul, verde, dourado, branco, estas cores mudam, mas o cinzento escuro e o azuis não põem, ele fica branco.
É bom que haja um livro de origem por aí)
Ao pressionar o botão de compilação, o bot morre junto com o terminal, e após abrir EX ele não abre e este arquivo fica vazio.
É o que parece.
Se eu colocar azul, verde, dourado, branco, estas cores mudam, mas o cinzento escuro e o azuis não colocam, ele fica branco.
string string_value, // строка
int start_pos, // с какой позиции начать
int length=0 // длина извлекаемой строки
);
Obrigado!
Eu também preciso de ajuda - preciso descobrir quantos caracteres estão em uma corda - como faço isso?
Eu uso StringSplit para dividir uma string lida a partir de um arquivo. Mas a saída da matriz perde cordas, todas exceto a primeira corda. Na saída todos, exceto o primeiro fio, estão vazios, embora o tamanho da matriz esteja correto.
Além disso, encontrei um comportamento incompreensível com matrizes de cordas. Tenho que fazer arrays bidimensionais para salvar as cordas em uma matriz.
Alguém já encontrou este comportamento?
if( StringFind( fileBuffer[idx][0], "[Main]" ) >= 0 ) {
idx++;
Print( "Buffer(main) = " + fileBuffer[idx][0] ); // debug
if( StringFind( fileBuffer[idx][0], "Kit_Names=" ) >= 0 ) {
Print( "check1 - " + fileBuffer[idx][0] ); // debug
string tmp = StringSubstr( fileBuffer[idx][0], 10 );
Print( tmp ); // debug
StringReplace( tmp, "\"", "" );
Print( tmp ); // debug
Print( StringSplit( tmp, sep, list ) );
Print( "check22 - " + tmp ); // debug
for(int i = 0; i < ArrayRange(list,0); i++) Print(list[i][0]); // debug
}
}
idx++;
}
Obrigado!
Também preciso de ajuda - preciso descobrir quantos caracteres estão em uma corda - como faço isso?
Retorna o número de caracteres na corda.
string string_value // строка
);
Retorna o número de caracteres em um fio.
string string_value // строка
);
Declaro uma matriz a nível global da EA. Então em função especial init() eu chamo de função do usuário que preenche a matriz com constantes de string.
Então, na função especial start(), uso o array somente para ler dados.
Algum tempo depois, outros dados irão preencher a matriz. Isto é, quando eu executo a EA, espero que a matriz permaneça inalterada enquanto a EA estiver funcionando, mas os dados de alguma forma entram na matriz, e somente após algum tempo (mais de 10 minutos). Quando eu reiniciar o Expert Advisor, o array será preenchido como deve ser, mas algum tempo depois, por razões que não entendo, o array conterá novamente os valores errados.
A única saída é recarregar constantemente a matriz no início(), mas eu não gosto muito, porque a matriz deve ser realmente preenchida somente durante a inicialização.
Qual poderia ser o problema? Como proteger a matriz contra modificações?
Você pode me dar uma dica, por favor?
...
O que poderia ser? Como evitar que uma matriz seja modificada?
Uma palavra de conselho, por favor.
Declaro uma matriz a nível global da EA. Então em função especial init() eu chamo de função do usuário que preenche a matriz com constantes de string.
Então, na função especial start(), uso o array somente para ler dados.
Algum tempo depois, outros dados irão preencher a matriz. Isto é, quando eu executo a EA, espero que a matriz permaneça inalterada enquanto a EA estiver funcionando, mas os dados de alguma forma entram na matriz, e somente após algum tempo (mais de 10 minutos). Quando eu reiniciar o Expert Advisor, o array será preenchido como deve ser, mas algum tempo depois, por razões que não entendo, o array conterá novamente valores errados.
A única saída é recarregar constantemente a matriz no início(), mas eu não gosto muito, porque a matriz deve ser realmente preenchida somente durante a inicialização.
Qual poderia ser o problema? Como proteger a matriz contra modificações?