я писал такую функцию:
function TMTExpGen.UpdateTerminal: boolean; var Msg, lParam: integer; i: integer; ok: bool; begin result:= false; if GetTerminalWindow then begin Msg:= RegisterWindowMessage('MetaTrader4_Internal_Message'); ok:= false; for i := -100 to 100 do begin lParam:= Msg+i; if SendMessage(TerminalHandle, Msg, $3039, lParam)=$303A then begin ok:= true; break; end; end; if ok then begin PostMessage(TerminalHandle, Msg, $303D, lParam); Log1.Lines.Add(DT+'Данные в терминале обновлены. Msg=' + FloatToStr(Msg)+ ' lparam='+FloatToStr(lParam)); result:= true; end else begin Log1.Lines.Add(DT+'Ошибка. Данные в терминале не обновлены'); end; end; end;
Есть кривоватость, конечно, с циклом -100..100, т.к. я не понял откуда берется lParam сообщения, но методом тыка диапазон показался ограниченным. Пока работает, дальше лень было разбираться, точнее времени жалко.
Не из коммандной строки конечно, но что уж есть.
SailorMax писал (а) >>
Попробовал настроить свой редактор на metalang.exe;
Компиляция проходит, а терминал не обновляет индикатор... Хотя если тем же заниматься из под MetaEditor - обновляется.
Никто не знает как терминал заставить автоматически обновлять индикаторы из командной строки?
Извращение полное. Вот кому делать нехрен
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Попробовал настроить свой редактор на metalang.exe;
Компиляция проходит, а терминал не обновляет индикатор... Хотя если тем же заниматься из под MetaEditor - обновляется.
Никто не знает как терминал заставить автоматически обновлять индикаторы из командной строки?