Закачивание котировок скриптом "Key_Home"

 
Когда надо закачать в историю терминала MT4 все котировки, которые есть на сервере, приходится отключать автопрокрутку, нажимать кнопку Home и зажимать её зубочисткой, чтобы она не отжалась. При этом больше ничего делать невозможно. Приходится держать окно активным и тупо наблюдать за этим безобразием. И иногда нет под рукой зубочистки.

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

Чтобы выгрузить скрипт, достаточно поменять период графика. При удалении скрипта график перематывается на конец (эмуляция нажатия клавиши End).
Можно прицепить и качать сразу на несколько графиков. Не забывайте отключать автопрокрутку, чтобы график не дергался.
Файлы:
 
Закачка истории - способ без использования кирпича =)
ZZ_All Quotings 0-0070
 

Так я тоже делал. Это слишком хлопотно и не всегда надёжно. Кроме того, нужно потом удалять левые котировки, иначе с тестированием можно напороться.

А вообще, разработчики MT4 сделали всё, чтобы скачивать котировки было трудно. А народ всё равно ищет как скачивать легко. Антагонизм.

 
mandor:

Так я тоже делал. Это слишком хлопотно и не всегда надёжно. Кроме того, нужно потом удалять левые котировки, иначе с тестированием можно напороться.

А вообще, разработчики MT4 сделали всё, чтобы скачивать котировки было трудно. А народ всё равно ищет как скачивать легко. Антагонизм.


Спасибо, приятная мелочевка. Лаконично и как оказалось просто. ... Штучка МАСТ ХЭВ.

А вот ZZ_All Quotings 0-0070 почему-то не всегда и не всё доступное закачивает, как я не пытался его модифицировать, даже по объемау трафа видно...

 

Последняя редакция скрипта Key_Home. При удалении скрипта график перематывается на конец (эмуляция нажатия клавиши End). См. в первое сообщение.

 

Попытка №1.

Кто подскажет как программно отключить авто прокрутку графика?

 
mandor:

Кто подскажет как программно отключить авто прокрутку графика?

в папке - \profiles\default если у вас прпофиль по умолчанию

выбрать нужный файл графика например - chart01.chr

в нем есть строка - scroll=1
соответственно поставить scroll=0

все просто :-))

 
Хе-хе... Эмуляцией нажатия оконной кнопки AutoScroll :)
 

Пропытка №2.

Кто знает как с помощью функции PostMessageA() отключить авто прокрутку графика?

 
Вот до каких извращений можно довести клиентов, упорно нежелая добавить одну простую функцию.
(об этой функции уже много раз говорили, и многих за эти речи забанили ...)

Нужно всего лишь сделать функцию типа:
GetHistory(SymbolName,TimeFrame,NumBars,Assinc)
Assinc - признак ассинхронности выполнения операции.
1 - запускается загрузка нужного куска истории и управление возвращается не дожидаясь завершения.
0 - управление возвращается после завершения загрузки.

Массовая загрузка сейчас все равно есть в тестере,
так что главный аргумент против уже устарел.
 
mandor:

Пропытка №2.

Кто знает как с помощью функции PostMessageA() отключить авто прокрутку графика?

Тут granit77 недавно извратился. Смотри 'Еще раз о возможности компиляции mql файла из командной строки' . Там не PostMessageA(), но тоже чудеса всякие. Может, подберешь что-нибудь. Кстати, в хелпе MT4 по Hot Keys (User Interface|Fast Navigation) я не нашел такового для переключения опции Auto Scroll.

P.S. Кстати, Hot Key для Auto Scroll - это Alt-C-S, т.е. через меню. Но только при условии, что ни у одного индюкатора/скрипта/советника нет аналогичных Hot Keys... К тому же это только toggle, а программных способов проверки, включен ли Auto Scroll, вроде как нет.

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