MetaTrader 4 Client Terminal build 610 - страница 73

 
Mamed:

Ага, а сет файлы к моим индикаторам в папке \MQL4\Presets мне инопланетяне подбросили да?

Видимо, да

Или индикаторы инопланетянские (:

 
stringo:

Глобальные переменные хранятся в файле \profiles\gvariables.dat

Файл реально записывается на диск при закрытии клиентского терминала и при явном вызове GlobalVariablesFlush() (по указанной мной ссылке это явно написано)


Т.е. во время оптимизации все значения переменных которые записаны в Global-переменные (без применения GlobalVariablesFlush() ) хранятся только в памяти, что ускоряет оптимизацию по сравнению с сохранением переменных используя File-функции. Но если при этом Windows или МТ4 падает то все значения этих Global- теряются безвозвратно, верно?
 
evillive:

Видимо, да

Или индикаторы инопланетянские (:

Это из той-же серии что мне сейчас подкинули.

- "Посмотри пожалуйста, что-то советник на график не ставится"...

Смотрю, а в коде #property show_inputs, дальше int init() int deinit() и start()

Вот такие инопланетяне встречаются.

 

Nemser:

https://www.mql5.com/ru/articles/1561

Не лучше ли разработчикам самим нормализовывать входные параметры в торговые функции до количества знаков после запятой на инструменте? В этом случае можно избежать множества претензий со стороны программистов-трейдеров.

Так же при операциях деления с целыми числами лучше преобразовывать их в double, чтобы результат был тоже double ! А преобразование к целому числу производить в момент присвоения !

По-моему эталоном правильного вычисления должен быть учебник математики, а не C++

Если курс или объем в лотах один раз уже нормализован, а затем много раз используется при выставлении ордеров, то каждый раз его нормализовать совершенно лишняя работа. При многодневной оптимизации параметров советника в тестере это становится важным. Если быстродействие не важно, то каждый может сам написать функции, окружающие вызовы торговых, под свои нужды.

Восьмибайтное целое содержит 63-64 двоичных значащих цифры, или (2^10=10^3) 19 десятичных. А в double удерживаются только 16-17 десятичных значащих цифр. Преобразование к double может привести к изменению значения целого числа, в double нет места для точности, имеющейся в восьмибайтных целых (коротка мантисса). Это место занято порядком. Целое число больше 10^18 будет испорчено.

Это не C++ отличается от математики, а компьютер. В математике легко оперируют корнем из 2 и числом Пи, у которых список значащих цифр не имеет конца. Никакой компьютер их не разместит в памяти, и за тысячу лет не сможет добавить к такому числу единицу. У него множество действительных чисел дискретно, не заполняет числовую ось. И ограничено, всегда найдется диапазон, вне которого компьютерные числа не попадают. Смешно с точки зрения математики, так ведь? Зато работает. И очень быстро.

 
AlexeyVik:

Это из той-же серии что мне сейчас подкинули.

- "Посмотри пожалуйста, что-то советник на график не ставится"...

Смотрю, а в коде #property show_inputs, дальше int init() int deinit() и start()

Вот такие инопланетяне встречаются.


Ну ставиться-то он на график всё равно должен, даже если там из кода только

void start()
{
}

Но если там #property show_inputs - тогда извините, это скрипт )))

 
evillive:

Ну ставиться-то он на график всё равно должен, даже если там из кода только

void start()
{
}

Но если там #property show_inputs - тогда извините, это скрипт )))

Ага... А если есть init и deinit то советник. А если вместе и #property show_inputs и init и deinit то это будет советующий скрипт...)))
 
AlexeyVik:
Ага... А если есть init и deinit то советник. А если вместе и #property show_inputs и init и deinit то это будет советующий скрипт...)))


Нет, это будет просто скрипт. Терминал как советника его не будет воспринимать пока там будут show_confirm и show_inputs
 
evillive:

Нет, это будет просто скрипт. Терминал как советника его не будет воспринимать пока там будут show_confirm и show_inputs
Ты не понял что это я рассказываю как прикол. Но это реально чел ко мне обращался. Кто так смог написать увы не знаю...
 
Mamed:

Ага, а сет файлы к моим индикаторам в папке \MQL4\Presets мне инопланетяне подбросили да?

Сет-файлы в этой папке к экспертам были точно, они и остались. К индикаторам не было.
 

Заинтриговали. Заглянул в 509:

Нет ни сохранения, ни открытия.

Причина обращения: