Nikolai Semko: Sim, já dei este link para a vossa implementação no correio 22214. Volto a dizê-lo - penso que esta é a opção mais sensata até agora. E parece não haver melhor implementação em termos de carga mínima de CPU e relevância do momento de um novo tick.
O terminal (1874) deixa de mostrar (gráfico ou consulta) o histórico da barra do símbolo personalizado ao mudar para outro servidor comercial. Após o reinício do Terminal, é mostrado o histórico. Assim que se muda novamente para outro servidor, a situação repete-se.
Ohistórico do tick não sofre quando se muda de servidor comercial. Este insecto não está aí presente.
template <typename T>
class CLASS
{
public:
T Func() { return(0); }
};
class CLASS2 : public CLASS<int>
{
public:
CLASS2()
{
this.Func(); // ALT+G в ME не производит переход на int CLASS<int>:Func()
}
};
Erro em FileLoad. Se dois agentes locais com a bandeira FILE_COMMON tentarem ler dados através do FileLoad, um dos agentes falha.
É possível colocar bandeiras apropriadas em FileOpen, mas não em FileLoad. Portanto, por favor permitir o acesso ao ficheiro através do FileLoad se o outro FileLoad o ler.
// Нужно компилировать (не запускать) советник, когда этот файл (с любым содержанием, хоть пустой) лежит в Песочнице.// Иначе Тестер не будет видеть эти данные, даже если соответствующий файл с ними положить после компиляции на место. #property tester_file__FILE__
Se der um ficheiro tester_file modificado com o mesmo tempo de modificação do ficheiro, o ficheiro será tratado como não modificado.
O tempo de modificação actualizado não tem qualquer efeito sobre o resultado. Conselheiro especializado
// Нужно компилировать (не запускать) советник, когда этот файл (с любым содержанием, хоть пустой) лежит в Песочнице.// Иначе Тестер не будет видеть эти данные, даже если соответствующий файл с ними положить после компиляции на место. #property tester_file__FILE__sinputint NumPass = 10;
#define TOSTRING(A) #A
void SetArray( int &Array[], constint Amount )
{
MathSrand((int)TimeLocal());
for (int i = ArrayResize(Array, Amount) - 1; i >= 0; i--)
Array[i] = MathRand() * Amount / SHORT_MAX + 1; // Случайное положительное число
}
voidOnTesterInit()
{
ParameterSetRange(TOSTRING(NumPass), true, 0, 0, 1, NumPass - 1); // Задали Оптимизатору количество проходов = NumPass int Array[];
SetArray(Array, NumPass);
FileSave(__FILE__, Array);
ArrayPrint(Array);
}
voidOnTesterDeinit()
{
ChartClose(); // Закрыли чарт Frame-выполнения советника
}
doubleOnTester()
{
int Array[];
return((FileLoad(__FILE__, Array) != -1) ? Array[NumPass]: 0);
}
Resultado de duas corridas consecutivas
Marcado a vermelho, a segunda corrida corresponde exactamente aos valores da primeira corrida, não da segunda (segunda linha).
O registo confirma-o
Tester set"Custom max"as optimization criterion for mathematical calculations
Tester input parameter 'NumPass'set to: enable=true, value=0, start=0, step=1, stop=9
Tester cache file 'tester\cache\X2.30.480532BA71563CA64BC267378A0185DD.opt' contains 10 records
Tester Experts\fxsaber\X2.ex5 math calculations test means no history and no symbol info for EURGBP
Tester complete optimization started
Tester optimization already processed, total passes 10
Tester reading of 10 result records from cache...
Tester 1 blocks of results read from cache in0 ms
Statistics optimization done in0 minutes 00 seconds
Se eu reiniciar a cache (recompilar), a primeira corrida está bem, mais à frente não está.
Sim, já dei este link para a vossa implementação no correio 22214. Volto a dizê-lo - penso que esta é a opção mais sensata até agora. E parece não haver melhor implementação em termos de carga mínima de CPU e relevância do momento de um novo tick.
Haverá funcionalidade normal nos Serviços.
Nos Serviços haverá uma funcionalidade normal.
esperançosamente...
O terminal (1874) deixa de mostrar (gráfico ou consulta) o histórico da barra do símbolo personalizado ao mudar para outro servidor comercial. Após o reinício do Terminal, é mostrado o histórico. Assim que se muda novamente para outro servidor, a situação repete-se.
Ohistórico do tick não sofre quando se muda de servidor comercial. Este insecto não está aí presente.
É assim que o ME se deve comportar?
Erro em FileLoad. Se dois agentes locais com a bandeira FILE_COMMON tentarem ler dados através do FileLoad, um dos agentes falha.
É possível colocar bandeiras apropriadas em FileOpen, mas não em FileLoad. Portanto, por favor permitir o acesso ao ficheiro através do FileLoad se o outro FileLoad o ler.
Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial
Não para MT Developers! Por que substituir INIT_PARAMETERS_INCORRECT por ?
fxsaber, 2018.07.10 20:16
Insecto antigo.
É possível manter o arquivo tester_file na RAM para evitar o abuso de HDD/SSD? Há milhões de passes e é horrível contar o ficheiro tantas vezes.
Um tal "disco RAM" tornaria muito mais difícil a transferência não autorizada de dados pessoais para terceiros.
As novas caches de optimização não têm em conta as alterações ao ficheiro tester_file e aos ficheiros comuns antes de executar Optimisação.
Aqui está um exemplo de uma tal EA.
As novas caches de optimização não têm em conta as alterações ao ficheiro tester_file e aos ficheiros comuns antes de executar Optimisação.
Aqui está um exemplo de uma tal EA.
Os antigos foram tidos em conta ou não?
Nada mudou das "velhas" caches de optimização.
Se der um arquivo tester_file modificado com o mesmo tempo de modificação, o arquivo será considerado como inalterado.
Os ficheiros comuns não podem ser controlados de forma alguma (e nunca o foram), porque não se sabe qual deles utiliza no seu Expert Advisor
Se der um ficheiro tester_file modificado com o mesmo tempo de modificação do ficheiro, o ficheiro será tratado como não modificado.
O tempo de modificação actualizado não tem qualquer efeito sobre o resultado. Conselheiro especializado
Resultado de duas corridas consecutivas
Marcado a vermelho, a segunda corrida corresponde exactamente aos valores da primeira corrida, não da segunda (segunda linha).
O registo confirma-o
Se eu reiniciar a cache (recompilar), a primeira corrida está bem, mais à frente não está.