Подскажите пожалуйста, возможно ли средствами языка QLUA делать какие-либо графические отметки на графике инструмента в QUIK? Например, если алгоритм находит удачный момент для сделки - ставить графическую отметку на графике и т.п.
Заранее благодарен.
Пользователь
Сообщений: Регистрация: 30.01.2015
19.09.2016 13:18:44
Цитата
Ivanco написал: Подскажите пожалуйста, возможно ли средствами языка QLUA делать какие-либо графические отметки на графике инструмента в QUIK? Например, если алгоритм находит удачный момент для сделки - ставить графическую отметку на графике и т.п.
Заранее благодарен.
Функции для работы с метками Предназначены для построения меток и установки их на графике.
- добавляет метку с заданными параметрами
- удаляет метку с заданными параметрами
- удаляет все метки на диаграмме с указанным графиком
- позволяет получить параметры метки
- задает параметры для метки с указанным идентификатором
, спасибо! Судя по документации, это то что нужно.
Пользователь
Сообщений: Регистрация: 27.01.2017
08.08.2017 14:30:32
Подниму тему.
А такое банальное действо как вывод текста в рамках индикатора недоступно? Простой пример - текущий ATR. Я не хочу выводить линию или что-то еще. Нужно вывести просто текст.
Добавление меткаи есть в скрипте, а в индикаторе? Так много информации надо выводить в рамках индикаора, где нет проблемы идентификации окна. Я в WLab писал индиктор зиг-заг с выводом процентов каждого движения и поиска моделей. Пости все было текстом в виде меток над свечками. Линий минимум.
Неужели нет этого?
Пользователь
Сообщений: Регистрация: 23.01.2015
08.08.2017 15:24:42
Здравствуйте, Вы можете выводить текст через механизм меток. По другому возможности нет.
Пользователь
Сообщений: Регистрация: 27.01.2017
14.08.2017 16:55:15
Цитата
Sergey Gorokhov написал: Здравствуйте, Вы можете выводить текст через механизм меток. По другому возможности нет.
Хорошо. Вывел метки индикатором.
Но у меня падает Квик при изменении настроек индикатора. При смене инструмента в привязанном окне падения не происходит, а при нажатии ОК в окне редактрирования, да.
Возникает вопрос - какой метод удаления меток правильный.
У меня падение происходит после добавления такого кода в OnCalculate:
Код
if index == 1 and Settings.ChartId ~= '' then
DelAllLabels(Settings.ChartId)
AddedLabels = {}
end
Также добавлена процедура:
Код
function OnDestroy()
if Settings.ChartId ~= '' then
DelAllLabels(Settings.ChartId)
AddedLabels = {}
end
end
Падения не должно происходить. приведите полный код скрипта индикатора и сообщите версию терминала QUIK
Версия 7.6.1.1 (Сбербанк выше не дает).
Собственно весь код работы с метками такой и есть
Код
function OnCalculate(index)
if index == 1 and Settings.ChartId ~= '' then
DelAllLabels(Settings.ChartId)
AddedLabels = {}
end
if index == 1 then
DSInfo = getDataSourceInfo()
min_price_step = getParamEx(DSInfo.class_code, DSInfo.sec_code, "SEC_PRICE_STEP").param_value
end
return myFunc(index, Settings, 37)
end
Внутри функции расчета данных выводится (обновляется) метка
Код
if AddedLabels[1] ~= nil then
SetLabelParams(Settings.ChartId, AddedLabels[1], label)
else
local LabelID = AddLabel(Settings.ChartId, label)
if LabelID ~=nil and LabelID ~= -1 then
AddedLabels[1] = LabelID
end
end
Код
if AddedLabels[2] ~= nil then
SetLabelParams(Settings.ChartId, AddedLabels[2], label)
else
local LabelID = AddLabel(Settings.ChartId, label)
if LabelID ~=nil and LabelID ~= -1 then
AddedLabels[2] = LabelID
end
end
Падение происходит не каждый раз. Иногда на третий раз применения параметров. Иногда на первый.
Нам нужна полная версия кода, а не только часть функций. Хотя бы для того чтобы мы могли попробовать воспроизвести.
сейчас же Ваш код вызывает массу вопросов.
Пользователь
Сообщений: Регистрация: 12.07.2017
07.12.2017 15:24:05
Подниму тему еще раз. Те функции, что вы написали наверху устанавливают текстовую метку. Лазаю уже неколько часов по всем форумам и не могу найти информацию.
Как поставить скриптом трендовую линию?? у нее больше параметров чем у простой метки.
В Квике есть еще много других графических объектов, а как их устанавливать? В описании я не нашел на это ответа.
Попутный вопрос про метки . Как получить список вкладок и всех графиков на вкладке?? Видимо там и будет хранится тег графика, к которому привязывается метка
Если Вас не затруднит примеры кода, пожалуйста.
Пользователь
Сообщений: Регистрация: 23.01.2015
07.12.2017 15:31:03
Цитата
Владимир Павлов написал: Как поставить скриптом трендовую линию?? у нее больше параметров чем у простой метки.
Через SetLabelParams можно устанавливать на график произвольную bmp картинку, через параметр IMAGE_PATH Ничего не мешает в bmp файле нарисовать нужную линию.
Цитата
Владимир Павлов написал: В Квике есть еще много других графических объектов, а как их устанавливать? В описании я не нашел на это ответа.
В описании нет ответа т.к. в текущей реализации через QLUA нет такой возможности
Цитата
Владимир Павлов написал: Как получить список вкладок и всех графиков на вкладке?? Видимо там и будет хранится тег графика, к которому привязывается метка
Тег графика Вы указываете самостоятельно вручную, в поле Идентификатор, в свойствах графика на вкладке Дополнительно
Пользователь
Сообщений: Регистрация: 12.07.2017
07.12.2017 16:44:37
Спасибо за ответ, Очень жаль что QLua не дает доступа к графическим объектам Квика, тем более, что они существуют. А в QPILE есть такие функции??
Пользователь
Сообщений: Регистрация: 23.01.2015
07.12.2017 16:47:41
Владимир Павлов, В QPILE тоже нет таких функций. Можем предложить зарегистрировать от Вас пожелание на доработку.
Пользователь
Сообщений: Регистрация: 12.07.2017
07.12.2017 17:17:15
Цитата
Sergey Gorokhov написал: В QPILE тоже нет таких функций. Можем предложить зарегистрировать от Вас пожелание на доработку.
Зарегистрируйте пожалуйста, неизвесно, сколько еще с Квиком придется работать. А ка долго вы реализуете такие пожелания??
Пользователь
Сообщений: Регистрация: 23.01.2015
07.12.2017 17:23:40
Владимир Павлов, Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Цитата
Владимир Павлов написал: А ка долго вы реализуете такие пожелания??
Рекомендуем ознакомиться с регламентом
Пользователь
Сообщений: Регистрация: 12.07.2017
07.12.2017 19:50:56
Если следовать вашему Регламенту то задача "выделения библиотеки графических символов" может получить высший приоритет. - не влияет ни на какую функциональность - заинтересованность всеми слоями трейдеров - улучшает пользовательские свойства терминала.
Я бы сам занялся под вашим руководством, да кто-же мне даст...........
Пользователь
Сообщений: Регистрация: 30.01.2015
07.12.2017 20:04:10
Цитата
Владимир Павлов написал: Если следовать вашему Регламенту то задача "выделения библиотеки графических символов" может получить высший приоритет. - не влияет ни на какую функциональность - заинтересованность всеми слоями трейдеров - улучшает пользовательские свойства терминала.
Я бы сам занялся под вашим руководством, да кто-же мне даст...........
пожелания об этом регулярно возникают уже в течение десятка лет или даже больше. Видимо, разработчикам недосуг этим заниматься.
Пасхалочка для Алексея Иванникова:
QUIK clients support
Сообщений: Регистрация: 23.01.2015
25.12.2017 15:19:00
Владимир Павлов, Добрый день, Мы рассмотрели Ваше пожелание. По итогам его анализа сообщаем Вам, что реализация пожелания признана потенциально целесообразной. Если по результатам дальнейшего анализа, включающего юридические аспекты, анализ на непротиворечивость с общей политикой компании, никаких возражений не возникнет, мы постараемся включить Ваше пожелание в план доработок при выпуске одной из следующих версий нашего ПО.
Пользователь
Сообщений: Регистрация: 04.02.2018
05.05.2018 15:43:46
Подскажите. Нужно в собственном Индикаторе на lua вывести несколько меток на график, примерно в левый верхний угол и в правый нижний угол. Как получить параметры окна графика?
Пользователь
Сообщений: Регистрация: 23.01.2015
07.05.2018 05:20:10
Цитата
Goodchild написал: Подскажите. Нужно в собственном Индикаторе на lua вывести несколько меток на график, примерно в левый верхний угол и в правый нижний угол. Как получить параметры окна графика?
Здравствуйте, К сожалению такой возможности не предусмотрено. И свечки устанавливаются на координаты дата/цена, а не X,Y окна
Пользователь
Сообщений: Регистрация: 23.01.2015
07.05.2018 05:20:43
Цитата
Sergey Gorokhov написал: И свечки устанавливаются на координаты дата/цена, а не X,Y окна
Речь конечно же про метки, а не свечки)
Пользователь
Сообщений: Регистрация: 13.05.2017
30.12.2020 13:23:01
Здравствуйте!
Столкнулся с проблемой вывода меток в разных областях одного окна. Это возможно? В одной области метки выводятся. При попутке вывести метки во второй области того же окна метки из первой области пропадают. Версия 8.3.2.4
Рекомендуем выполнить обновление терминала до последней версии (8.11). Сделать это можно одним из следующих способов. - включить настройку Система/Настройки/Основные настройки/Программа - "Проверять наличие обновлений" - запросить новую версию у Вашего брокера если программа не обновится самостоятельно - если брокер не сможет предоставить нужную версию, скачать ее с нашего ftp:
В последнем случае, необходимо будет закрыть QUIK, сделать резервную копию папки, где он находится и скопировать все содержимое архива в первоначальную папку с подтверждением замены всех файлов.
Если проблема сохранится, просим прислать снимки экрана, на которых она наблюдается, и скрипт, выводящий метки.
Пользователь
Сообщений: Регистрация: 13.05.2017
03.02.2021 11:10:24
Здравствуйте!
Перешёл на версию 8.8.4.3., проблема осталась. Поясню подробнее. Я использую свой скрипт индикатора, он отображается в отдельной области, перерисовывается на каждом новом баре, метки на индикаторе тоже меняются на каждом новом баре. Чтобы при наступлении нового бара отобразить новый график индикатора с новыми метками мне нужно стереть старые метки, для этого использую в начале скрипта оператор DelAllLabels(labelGrafName1) и затем рисуются новые метки. Если я создам в этом окне ещё одну область с таким же индикатором, он появиться пока без меток, с первым тоже пока всё нормально. Но как только я укажу имя графика для второго индикатора и нажму кнопку Применить, то сразу метки первого индикатора исчезают, а у второго появляются. Получается, что оператор DelAllLabels(labelGrafName2) из скрипта второго индикатора удалил метки с именем labelGrafName1 из другого окна.
А в доках указано, что Команда удаляет все метки на диаграмме с указанным графиком!?
Пользователь
Сообщений: Регистрация: 27.01.2017
03.02.2021 11:14:40
А зачем стирать уже поставленные метки? Можно ведь просто обновить параметры уже установленных.
Не совсем понимаем, в чем заключается проблема. Функция выполняет ровно то, что описано в документации, а именно - удаляет все метки на диаграмме с указанным графиком.
Пользователь
Сообщений: Регистрация: 13.05.2017
04.02.2021 15:14:44
А что понимается под словам Диаграмма? В доках это слова появляется только для этого оператора. В самой программе используются понятия окно и область окна. Так как в данном операторе указывается имя графика, то я решил, что удалятся будут метки, привязанные к графику с этим именем.
Mikhail Ran написал: А что понимается под словам Диаграмма? В доках это слова появляется только для этого оператора.
"Окно программы, в котором рисуются графики, называется диаграммой" (Руководство пользователя QUIK. 4 Графики) Полное руководство можно скачать с нашего сайта по следующей ссылке -
Цитата
Mikhail Ran написал: В самой программе используются понятия окно и область окна.
Набор параметров, принимаемый той или иной функцией, не описывает ее работу и результат, для этого существует описание. Описание функции DelAllLabels() однозначным образом говорит о том, что будут удалены все метки на диаграмме, на которой находится указанный график.
Пользователь
Сообщений: Регистрация: 03.03.2016
27.06.2022 17:48:06
Кто-нибудь встречал типа архива графических файлов .bmp меток для Quik ? Нужны стандартные треугольники куплено-продано.
Пользователь
Сообщений: Регистрация: 30.01.2015
27.06.2022 20:57:20
Цитата
Kolossi написал: Кто-нибудь встречал типа архива графических файлов .bmp меток для Quik ? Нужны стандартные треугольники куплено-продано.
iconizer.net
Пасхалочка для Алексея Иванникова:
Пользователь
Сообщений: Регистрация: 03.03.2016
29.06.2022 18:17:11
К разработчикам:
господа, если вы сделали в последних версиях якорь позволяющий привязывать к окну графика тикеры таблицы текущих торгов, то может быть пора обратить внимание на то, что метка привязывается только к идентификатору графика. В итоге на графике полная мешанина из меток при переключении текущего инструмента. Прошу рассмотреть возможность дополнительной привязки меток к тикеру инструмента что бы при переключении графика на нем оставались только метни касающиеся этого инструмента.
PS Знаю, сейчас мне покажут ссылку, где такое предложение одобрено разработчиками много лет назад и однажды будет реализовано. )) Но все же
Предлагаем в настройках графика в левом выпадающем списке в пункте "Диаграмма" убрать галочку напротив пункта "Оставлять трендовые линии, фигуры и метки при смене инструмента" и нажать "Применить".
Предлагаем в настройках графика в левом выпадающем списке в пункте "Диаграмма" убрать галочку напротив пункта "Оставлять трендовые линии, фигуры и метки при смене инструмента" и нажать "Применить".
Ага, заработало, спасибо. Тогда подскажите еще галочку что бы из меню правой клавиши при наведении на метку созданную средствами qlua при выборе "удалить" удалялачь одна метка а не все.
Правильно понимаем, что Вы добавляете метки на график при помощи Qlua, потом наводите мышкой на метки, вызываете контекстное меню, нажимаете "удалить", и удаляются абсолютно все метки на графике ?
Если так, то просьба создать архив директории терминала без *.txk ключей, выложить его на какой-либо файлообменный сервер и на адрес прислать ссылку для скачивания.
Дополнительная просьба в письме укажите, пожалуйста, ссылку на данную ветвь форума.
Предлагаем в настройках графика в левом выпадающем списке в пункте "Диаграмма" убрать галочку напротив пункта "Оставлять трендовые линии, фигуры и метки при смене инструмента" и нажать "Применить".
Даниил, все таки помогите пожалуйста разобраться убогому чем это Вот убрал я эту галочку. График привязан якорем к таблице текущих торгов, стоит идентификатор "RZ". В таблице текущих торгов выбран Газпром. В это время в скрипте срабатывает заявка по инструменту Сбербанк и скрипт выставляет метку с ценой и временем в график с идентификатором "RZ". Куда она выставляется? При переключении графика на Сбербанк метки нет. На графике Газпрома ее тоже нет. Но в системе по uid она находится.
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
06.07.2022 11:53:40
Цитата
Kolossi написал: В таблице текущих торгов выбран Газпром.
Kolossi написал: скрипт выставляет метку с ценой и временем
Ищите метку на этом уровне цены.
Надо делать так, как надо. А как не надо - делать не надо.
Пользователь
Сообщений: Регистрация: 03.03.2016
06.07.2022 14:26:03
Старатель, это я к тому, что в ответ на предложение сделать привязку метки к тикеру мне саппорт посоветовал убрать галочку напротив пункта "Оставлять трендовые линии, фигуры и метки при смене инструмента". После чего бардак с метками на графике успешно превращается в полный бардак.