Бесило меня несовершенство MT4. Если, например, на тестовом терминале установлено 100500 ботов, часть из которых делает пометки на графике (стрелки, надписи, трендовые линии и т.п.), то:
1. Терминал начинает выедать много оперативной памяти;
2. В текущий профиль (MQL4\Profiles) все эти данные записываются и профили могут достигать десятков, а то и сотен мегабайт;
3. Из-за пункта 2 при перезагрузке терминала все эти данные должны быть вновь нанесены на графики. И MT4 иногда с этим не справляется, когда объём данных слишком велик. И он попросту или не загружает некоторые советники на график или даже загружает советник, но не осиливает при этом его настройки, оставляя дефолтные. Каждый график приходится перепроверять вручную, всё ли загрузилось и верно ли пресет загружен.
Решать данную беду можно было разными способами. Всё работает, но утомительно. Например, можно вручную с каждого графика удалять все объекты периодически. Можно сохранить профиль и вручную удалить из каждого файла графика (.chr) в профиле удалить все объекты.
Надоело. Наваял небольшой скрипт, который удаляет все объекты типа стрелка, трендлиния, текст, битмап и фоновый битмап со всех графиков терминала.
Перетаскивается или исполняется на любом графике. Сканирует при этом все открытые графики и удаляет километры объектов, не влияющих не работу, но жрущих память.
Может кому-то будет полезен.
