Características da linguagem mql5, subtilezas e técnicas - página 105 1...9899100101102103104105106107108109110111112...247 Novo comentário TheXpert 2018.10.14 14:47 #1041 fxsaber: template <typename T1, typename T2> bool More(const T1& first, const T2& second) { return first > second; } bool More(const MqlTick& first, const MqlTick& second) { return first.bid > second.bid; } // Простая сортировка template <typename T1, typename T2> // T2 - по какому правилу сортируем void Sort( T1 &Array[] ) { const int Size = ArraySize(Array); for (int i = 0; i < Size - 1; i++) { T2 Min = Array[i]; int Pos = i; for (int j = i + 1; j < Size; j++) if (More(Min, Array[j])) { Min = Array[j]; Pos = j; } if (Pos != i) { Array[Pos] = Array[i]; Array[i] = Min; } } } De qualquer forma, ficou um pouco fora de tópico. fxsaber 2018.10.17 12:50 #1042 // Возвращает TimeLocal даже в Тестере datetime GetTimeLocal( void ) { static const bool IsTester = MQLInfoInteger(MQL_TESTER); static uint TickCount = 0; static datetime InitTimeLocal = 0; datetime Res = 0; if (IsTester) { if (InitTimeLocal) Res = InitTimeLocal + (GetTickCount() - TickCount) / 1000; else { int Array[]; const string FileName = __FUNCTION__; if (FileSave(FileName, Array)) { TickCount = GetTickCount(); Res = InitTimeLocal = (datetime)FileGetInteger(FileName, FILE_MODIFY_DATE); } } } else Res = TimeLocal(); return(Res); } Aplicação void OnInit() { Print(GetTimeLocal()); } double OnTester() { Print(GetTimeLocal()); return(0); } HH Há uma maneira mais fácil de descobrir a hora do PC local no Testador? Stanislav Korotky 2018.10.17 15:59 #1043 fxsaber: Aplicação HH Há uma maneira mais fácil de obter a hora local do PC no Testador?Através de uma variável global (GlobalVariableTemp, GlobalVariableTime). fxsaber 2018.10.17 16:03 #1044 Stanislav Korotky: Através de uma variável global (GlobalVariableTemp, GlobalVariableTime).Não vai funcionar. Stanislav Korotky 2018.10.17 20:19 #1045 fxsaber: Não vai funcionar.Está a funcionar há muito tempo e está a funcionar correctamente. fxsaber 2018.10.17 20:31 #1046 Stanislav Korotky: Está a funcionar bem há muito tempo.Então o que estou a fazer mal? datetime GetTimeLocal( const bool FlagDelete = false ) { static const bool IsTester = MQLInfoInteger(MQL_TESTER); static const string Name = __FILE__; return(IsTester && GlobalVariableTemp(Name) ? GlobalVariableTime(Name) : TimeLocal()); } double OnTester() { Print(GetTimeLocal()); return(0); } TheXpert 2018.10.17 20:55 #1047 fxsaber: Então o que estou a fazer mal? Suspeito que o problema é o teu amor pela concatenação. Tenta passar se. fxsaber 2018.10.17 21:01 #1048 TheXpert: Suspeito que o problema é o teu amor pela laconização. Tenta se.Tentado datetime GetTimeLocal() { static const string Name = __FILE__; datetime Res = 0; if (GlobalVariableTemp(Name)) Res = GlobalVariableTime(Name); return(Res); }Não funciona. Alain Verleyen 2018.10.17 21:10 #1049 fxsaber: Tentado Não funciona. Não funciona porque a variável global é emulada com o MT5 Tester. Eles também usam o TimeCurrent (). Stanislav Korotky 2018.10.17 21:19 #1050 fxsaber: Tentado Não funciona.Funciona como o esperado para mim... PS. Erro meu - funciona no MT4 mas não funciona no MT5. 1...9899100101102103104105106107108109110111112...247 Novo comentário
Aplicação
HH Há uma maneira mais fácil de descobrir a hora do PC local no Testador?
Aplicação
HH Há uma maneira mais fácil de obter a hora local do PC no Testador?
Através de uma variável global (GlobalVariableTemp, GlobalVariableTime).
Através de uma variável global (GlobalVariableTemp, GlobalVariableTime).
Não vai funcionar.
Não vai funcionar.
Está a funcionar há muito tempo e está a funcionar correctamente.
Está a funcionar bem há muito tempo.
Então o que estou a fazer mal?
Então o que estou a fazer mal?
Suspeito que o problema é o teu amor pela concatenação. Tenta passar se.
Suspeito que o problema é o teu amor pela laconização. Tenta se.
Tentado
Não funciona.
Tentado
Não funciona.
Tentado
Não funciona.
Funciona como o esperado para mim...
PS. Erro meu - funciona no MT4 mas não funciona no MT5.