1) В меню "Связь - Заказ всех сделок..." добавляем, например, Сбербанк: при этом все сделки по Сбербанку в терминал не поступают. Открываем таблицу всех сделок и выбираем любую другую бумагу: начинают поступать все сделки по Сбербанку. Закрываем таблицу всех сделок: прекращают поступать все сделки по Сбербанку.
Это - тот же вопрос, что обсуждается здесь, вы не находите? Но из ваших сообщений выходит, что вы "", и проблему только сейчас. Я ошибаюсь?
Надо делать так, как надо. А как не надо - делать не надо.
Глупый вопрос! Механизм совершения сделок!, Механизм совершения сделок!
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
12.08.2015 16:10:31
Цитата
Sergey пишет: в результате купил я по той цене какой заказывал, а вот на бирже сделка произошла по цене стаканаи разницу (выгоду) забрал себе брокер.
Скрины в студию!
Надо делать так, как надо. А как не надо - делать не надо.
Количество открытых позиций и сделки из таблицы всех сделок
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
12.08.2015 14:32:32
Цитата
user пишет: RIU5;RTS-9.15;82700.00000;10000;2015-08-06 14:41:42.167;1185838445;1
1 - Nosystem (внесистемная в торгах)
Василий Конюшев, если не секрет, как вы используете в торговле индикатор открытых позиций?
Надо делать так, как надо. А как не надо - делать не надо.
Процентное изменение
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
12.08.2015 12:53:04
Как сделать, чтобы на одной оси графика отображалась абсолютная цена, а на другой - процентное изменение?
Надо делать так, как надо. А как не надо - делать не надо.
заказ всех сделок, вопрос разработчикам
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
11.08.2015 20:26:38
Цитата
Stanislav Tvorogov пишет: Ваше обращение получено, проблема изучается. Постараемся в ближайшее время дать ответ.
Я не понял, а почему этой проблемой не занялись ещё в январе по ?
Надо делать так, как надо. А как не надо - делать не надо.
заказ всех сделок, вопрос разработчикам
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
11.08.2015 16:35:05
Stanislav Tvorogov, вам стоит ознакомиться с темой (но иногда не лишним будет общение с коллегами). Что-нибудь с тех пор изменилось?
Надо делать так, как надо. А как не надо - делать не надо.
Графические инструменты и метки
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
10.08.2015 09:08:26
Egor Zaytsev, возможно, имеется ввиду, графическая метка с текстом. Тут мы имеем съезжание метки как по вертикали, так и по горизонтали при изменении масштаба графика.
Надо делать так, как надо. А как не надо - делать не надо.
Количество открытых позиций и сделки из таблицы всех сделок
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
08.08.2015 00:13:15
Хм, ну может, тут вы правы.
Надо делать так, как надо. А как не надо - делать не надо.
Количество открытых позиций и сделки из таблицы всех сделок
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
07.08.2015 17:26:17
В одном вы точно заблуждаетесь: сделки объёмом 1700 контрактов не могут увеличить/уменьшить количество открытых позиций более, чем на 1700 контрактов. Также на открытые позиции, возможно (?) влияют: внесистемные (внебиржевые) сделки, сделки для фьючерсных контрактов в календарном спреде, закрытие позиции в результате исполнения опционного контракта.
Надо делать так, как надо. А как не надо - делать не надо.
заявки с переносом на следующий день
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
04.08.2015 16:51:48
Я к тому, что нельзя выставить так стоп-заявку, чтоб "порожденная ей лимитка стопроцентно исполнилась", да ещё по цене не хуже заданной и .
Надо делать так, как надо. А как не надо - делать не надо.
Спрэд в стакане и цены совершённых сделок (Таблица всех сделок), Проблема понимания изменения спрэда в стакане и цены совершённых сделок в Таблице всех сделок
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
04.08.2015 16:37:13
Цитата
Фёдор Сухов пишет: В том то и дело, что я беру время биржевое у стакана и у сделок, и оно совпадает.
Цитата
Фёдор Сухов пишет: заявки в стакан попадают в текущее биржевое время с временем прошлым
У стакана есть время? Где вы его берёте?
Надо делать так, как надо. А как не надо - делать не надо.
заявки с переносом на следующий день
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
04.08.2015 16:27:53
К тому же, при условии
Цитата
Imersio Arrigo пишет: выбрасываем лимитку по, например, 95, если цена <=90.
можно никогда не дождаться его выполнения, даже если бумага торгуется по нужной цене 94.
Надо делать так, как надо. А как не надо - делать не надо.
заявки с переносом на следующий день
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
04.08.2015 16:25:09
Ну, во-первых,
Цитата
minimen456 пишет: Я хочу купить какую-то облигацию по 94.
А во-вторых: если спрэд шире? Или предложения нет? На рынке никто не даст стопроцентной гарантии.
Надо делать так, как надо. А как не надо - делать не надо.
заявки с переносом на следующий день
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
04.08.2015 14:08:52
Цитата
Imersio Arrigo пишет: Дык надо ставить цены так, чтобы если уж сработала стоп-заявка, то порожденная ей лимитка - стопроцентно исполняется.
Это как? Пример - в студию ;-)
Надо делать так, как надо. А как не надо - делать не надо.
заявки с переносом на следующий день
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
04.08.2015 12:44:27
Если лимитированная заявка, выставленная при исполнении стоп-заявки, не исполнится, повторного перевыставления стоп-заявки не произойдёт. Не так ли?
Надо делать так, как надо. А как не надо - делать не надо.
Редактор кода QLUA и прочее
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
31.07.2015 20:06:11
Цитата
Михаил Филимонов пишет: 1. Неужели разработчикам трудно было написать для новичков кратко что потребуется для написания скриптов и программ(роботов) 2. Вкратце описать "скелет" индикаторов и роботов 3. Как отлаживать созданные скрипты и роботов
Николай Камынин, что из этого есть по приведённым вами ссылкам?
Надо делать так, как надо. А как не надо - делать не надо.
платформа для создания роботов, создание роботов без знаний LUA и QPILE
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
30.07.2015 17:50:28
Цитата
Фёдор Сухов пишет: а вот, если надо вот такой немножко посложней
Эту стратегию можно проще записать
Надо делать так, как надо. А как не надо - делать не надо.
Изменение цвета линии индикатора на "лету"-возможно?
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
29.07.2015 13:32:28
Зарегистрируйте пожелание на добавление функционала: 1) изменение цвета линии индикатора на заданном участке 2) добавление флага, запрещающего соединять точки, если между ними есть nil значение
Надо делать так, как надо. А как не надо - делать не надо.
Таблица всех сделок, Проблема при считывании направлении сделок ("Купля" или "Продажа")
Старатель пишет: *Вернее, установлены 0-й (для 1025) и 1-й (для 1026) биты соответственно.
вообще-то в 1025 установлен только 0й бит, а в 1026 только 1й. так что все нормально
Кто-то утверждал обратное? Вопрос в том, что означают старшие биты в обезличенных сделках? (В документации информации нет.)
Надо делать так, как надо. А как не надо - делать не надо.
Таблица всех сделок, Проблема при считывании направлении сделок ("Купля" или "Продажа")
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
29.07.2015 11:12:54
*Вернее, установлены 0-й (для 1025) и 1-й (для 1026) биты соответственно.
Надо делать так, как надо. А как не надо - делать не надо.
Таблица всех сделок, Проблема при считывании направлении сделок ("Купля" или "Продажа")
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
29.07.2015 10:55:42
Иногда сделки приходят с параметром flags, равным 1025 (установлен 1-й бит) или 1026 (установлен 2-й бит). А вот, что значат эти биты - вопрос к техподдержке.
Надо делать так, как надо. А как не надо - делать не надо.
Take Profit, Как правильно выставить величину отступа и спрэда
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
26.07.2015 22:48:25
Цитата
Sergey Gorokhov пишет: Если интересует развернутый ответ, у нас есть документ описывающий стоп заявки на 16 страницах, могу отправить по письменному запросу на quiksupport@arqatech.com
Есть какое-нибудь логическое объяснение тому, что развёрнутое описание стоп-заявок нельзя найти в общем доступе и/или официальной документации? Какие ещё документы, описывающие работу с ИТС QUIK, можно запросить по quiksupport@arqatech.com?
Надо делать так, как надо. А как не надо - делать не надо.
Как сделать так, чтобы файлы подгружались сами?
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
24.07.2015 23:58:05
Указывайте полные пути к модулям (файлам).
Надо делать так, как надо. А как не надо - делать не надо.
Привязка кнопок
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
24.07.2015 23:53:36
Цитата
Сергей пишет: function f_cb(t_id,msg,par1,par2) --событие на нажатие клавиш if (msg==QTABLE_CHAR) and (par2==19) then --сохранить в CSV файл текущее состояние таблицы нужно нажать комбинацию клавиш Ctrl+S CSV(t_id) end if (msg==QTABLE_CLOSE) then --закрытие окна Stop() end end
А где вы взяли этот кусок кода?
Надо делать так, как надо. А как не надо - делать не надо.
Привязка кнопок
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
24.07.2015 20:57:17
Код
local bRun, hID = true
local _Callback = function(t_id, msg, par1, par2)
if msg == QTABLE_CLOSE then bRun = nil
elseif msg == QTABLE_CHAR then
SetCell(hID, 1, 1, GetCell(hID, 1, 1).image..string.char(par2))
end
end
function main()
hID = AllocTable()
AddColumn(hID, 1, 'Введите тект:', true, QTABLE_STRING_TYPE, 32)
CreateWindow(hID)
SetWindowPos(hID, 600, 300, 200, 60)
SetTableNotificationCallback(hID, _Callback)
SetWindowCaption(hID, "Окно ввода текста")
InsertRow(hID, -1)
while bRun do sleep(100) end
end
function OnStop()
bRun = nil
end
Надо делать так, как надо. А как не надо - делать не надо.
Паузы 15 мске при отправке TRANS2QUIK_SEND_ASYNC_TRANSACTION, обнаружил странные паузы
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
22.07.2015 23:52:25
Это не задержка в 15 мс. Это разность между двумя событиями, которая в Windows при стандартном таймере вычисляется кратно 15.6 мс. Соответственно, для промежутка времени менее таймера будет отображаться либо 0 либо 15 (15.6 мс).
Надо делать так, как надо. А как не надо - делать не надо.
Надо делать так, как надо. А как не надо - делать не надо.
CreateDataSource
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
20.07.2015 23:00:23
Цитата
Дмитрий пишет: То есть если график не открыт, то CreateDataSource вообще не выдаст нам свечи, сохраненные в кэше?
Нет, не так. Конечно, CreateDataSource вернёт нам свечи из кэша (я не совсем верно написал выше). Но, если график открыт, то значения свечей мы можем получить сразу. Если же график не открыт, то сначала ds:Size() = 0. Свечи придут позже.
Надо делать так, как надо. А как не надо - делать не надо.
CreateDataSource
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
20.07.2015 10:28:33
Цитата
Николай Камынин пишет: действительно, нет надобности обновлять историю которая уже есть в терминале. Было бы хорошо, если бы история в терминале в начале сессии не обновлялась, а добавлялась.
Специально проверил: На выходных с помощью QMinEditor изменил значение одной свечи на графике. Сегодня подключился к серверу, и свеча не обновилась.
Причём, если график не открыт в терминале, то значения "старых" свечей мы получаем только в колбеке (не зависимо, сохранён кэш графиков или нет). Если график открыт, то "старые" свечи возвращаются в CreateDataSource. Эту информацию можно добавить в документацию.
Но в любом случае, значение изменённой свечи не обновляется.
Надо делать так, как надо. А как не надо - делать не надо.
Скрипт, сохраняющий историю., Я пока учусь :)
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
18.07.2015 16:35:56
Цитата
Некто пишет: Контекстное меню графика - "Параметры текущего окна" - появится окно "Настройка параметров диаграммы" - вкладка "Диаграмма" - " Показывать графики" есть пункт "выбрать с" - можно выбрать на определённый день, но только до 18:45
Там можно выбрать любое время. Это поле редактируемое.
Старатель пишет: есть настройка Intra-day, где указывается нужное время.
Видимо, это может подойти тем, кто каждый день будет сохранять историю после 23:49 . Приятного им времяпрепровождения.
Сохранять историю с помощью getCandlesByIndex, изменяя каждый раз дату-время графика в настройках, - в любом случае не самое приятное времяпрепровождение :D Проще сохранять историю с помощью CreateDataSource: написал скрипт, запустил один раз и забыл. Остальное он сам сделает.
Надо делать так, как надо. А как не надо - делать не надо.
Скрипт, сохраняющий историю., Я пока учусь :)
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
18.07.2015 10:25:25
Цитата
Некто пишет: В своём скрипте сначала вызываю getNumCandles(), потом getCandlesByIndex(), потом сравниваю кол-во свечей, которые они вернули. Для графика Сбера периодов 1 и 2 мин они равны. Для Si getNumCandles() в 21:30 возвращает бОльшее число.
Старатель пишет: TIME возвращает время последней сделки, но не дату, не так ли?
На графике есть
Пока последняя свечка не загрузится, мы об этом не узнаем.
Но ваш спор не понятен: Вас просят, сказать сколько свечек на сервере. Вы предлагаете считать свечки на рабочем месте. Вас спрашивают о дате-времени последней сделки, чтобы узнать загрузился ли график. Вы предлагаете дождаться загрузки графика, чтобы узнать дату-время последней сделки.
Надо делать так, как надо. А как не надо - делать не надо.
CreateDataSource
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
17.07.2015 14:15:13
Цитата
Sergey Gorokhov пишет: Такая функция уже есть называется Size, однако она ведь не решает проблему не так ли?
Size() возвращает текущее количество свечек на локальном месте, а не на сервере, не так ли?
Цитата
Sergey Gorokhov пишет: Это уже есть, смотрите параметр time из ТТП, однако и она не решает проблему не так ли?
TIME возвращает время последней сделки, но не дату, не так ли?
Надо делать так, как надо. А как не надо - делать не надо.
Sergey Gorokhov пишет: Здравствуйте, Вопрос уже многократно поднимался на форуме. Ответ: никак.
Прошу понять, что прочитать весь форум довольно затруднительно, а поиском не всегда находится нужное. Поэтому ещё вопрос - а планируется ли добавление срабатывания callback'а в такой ситуации? Ведь это решило бы проблему.
Вы не совсем понимаете. Дело в том, что нет такого критерия который позволил бы отличить ситуацию "продолжения ожидания" от "отсутствия данных", а значит и решить эту проблему нельзя.
Вопрос действительно многократно поднимался на этом форуме. И было показано, что есть решение, которое "позволило бы отличить ситуацию "продолжения ожидания" от "отсутствия данных" при наличии этих данных на сервере. Вы не смогли аргументированно опровергнуть данное решение. Поэтому, правильней было бы говорить не об отсутствии критерия, как такового, а об отсутствии желания что либо делать в этом месте.
Надо делать так, как надо. А как не надо - делать не надо.
getInfoParam is not a string?
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
17.07.2015 08:55:12
Цитата
DronGO пишет: А почему дата меняется только утром? а не в 00:00:00?
Потому, что ночью торги ещё не начались. И в выходные торгов также нет. Вполне логично, что дата торгов меняется только в торговый день. Ключевое слово здесь "торгов".
Надо делать так, как надо. А как не надо - делать не надо.
Управление индикатором из Lua-скрипта
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
15.07.2015 17:46:40
Добрый день.
Не помню, было такое пожелание или нет... Сделайте возможным из QLUA-скрипта, если не добавлять индикатор на диаграмму, то хотя бы управлять уже созданным индикатором: вызывать функцию Refresh, ту самую, которая вызывается при нажатии на кнопку "Сохранить" в настройках индикатора, а также изменить значения параметров таблицы Settings.
Надо делать так, как надо. А как не надо - делать не надо.
Ошибки в функции getQuoteLevel2!!!, Возвращаемый стакан котировок не всегда соответствует (нормальным) условиям...
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
14.07.2015 16:34:39
Реже-чаще... Предлагаю сделать запись изменений стакана в QUIK и ITInvest в одно и то же время и сравнить.
Надо делать так, как надо. А как не надо - делать не надо.
Обмен данными между Lua-скриптами
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
14.07.2015 10:47:31
Я не знаю как там в Metatrader, но представляю себе следующим образом: В любом из скриптов создаётся переменная и обозначается как глобальная в общем "пространстве имён", доступ к которой возможен из любого скрипта. Обращение к этой переменной должно осуществляться по ссылке (без создания нового объекта) по аналогии с таблицами в Lua. Возможно ли это сделать?
Надо делать так, как надо. А как не надо - делать не надо.
Обмен данными между Lua-скриптами
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
14.07.2015 10:05:06
Зарегистрируйте пожелание на доработку такого функционала.
Надо делать так, как надо. А как не надо - делать не надо.
Динамическое изменение верхней/нижней границы вертикальной оси
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
14.07.2015 08:54:13
Регистрируйте. Но мне хотелось решить ещё одну задачу: приведение к одному масштабу на нескольких диаграммах, где границы оси изменяются в зависимости от определённых условий..
Надо делать так, как надо. А как не надо - делать не надо.
Обмен данными между Lua-скриптами
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
14.07.2015 01:31:29
Добрый день.
Возможно ли сделать в QUIK общее хранилище данных для обмена информацией между скриптами?
Я знаю, что . Но оно не удобно тем, что при обращении к объекту из общего "пространства имён" создаётся новый экземпляр объекта (вместо ссылки), что негативно сказывается на ресурсах.
Надо делать так, как надо. А как не надо - делать не надо.
Ошибки в функции getQuoteLevel2!!!, Возвращаемый стакан котировок не всегда соответствует (нормальным) условиям...
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
13.07.2015 18:01:09
Цитата
Николай Камынин пишет: Просто сервер биржи не транслирует стакана, пока не урегулирует очередь. Но обновление очереди на сервере QUIK или в терминале может проходить без запрета и мы видим промежуточное состояние стакана.
"Без запрета" чего? Что такое "промежуточное состояние стакана". Откуда оно появилось, если первоисточником для QUIK является биржа?
Надо делать так, как надо. А как не надо - делать не надо.
Конфигурация квика 2014 в 2015 год, Быстрое изменение конфигурации квика.
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
13.07.2015 14:49:10
Egor Zaytsev, у вас, вроде, была утилита, меняющая коды бумаг в info.wnd. Не подойдёт?
Надо делать так, как надо. А как не надо - делать не надо.
Динамическое изменение верхней/нижней границы вертикальной оси
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
13.07.2015 14:46:44
Чтобы иметь возможность самостоятельно указывать границы оси и не зависеть от автомасштабирования.
Скрытый текст
Мне, например, в данной ситуации хотелось бы задать другие границы оси.
Надо делать так, как надо. А как не надо - делать не надо.
Динамическое изменение верхней/нижней границы вертикальной оси
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
13.07.2015 13:46:01
Добрый день.
Добавьте возможность из кода Lua-индикатора задавать и динамически изменять верхнюю и нижнюю границы вертикальной оси.
Надо делать так, как надо. А как не надо - делать не надо.
Останавливается скрипт
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
13.07.2015 12:28:48
Один код бумаги может содержаться в разных классах. В результате вы можете получить не тот класс, который ожидали.
Надо делать так, как надо. А как не надо - делать не надо.
Про метки
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
13.07.2015 11:41:53
Цитата
Egor Zaytsev пишет: Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа.
Опять?! Уже :
Цитата
Alexey Ivannikov пишет: Мы рассмотрели Ваше пожелание. По итогам его анализа сообщаем Вам, что реализация пожелания признана потенциально целесообразной.
Переходите на следующий уровень.
Надо делать так, как надо. А как не надо - делать не надо.
Ошибки в функции getQuoteLevel2!!!, Возвращаемый стакан котировок не всегда соответствует (нормальным) условиям...
Пользователь
Сообщений: Регистрация: 30.01.2015
Роботорговец
13.07.2015 11:32:58
Цитата
user пишет: Ту информацию, что ближе к спреду надо бы обновлять более приоритетно.
При чём тут приоритетное обновление?! Есть правила торгов, согласно которым исполняются ордера. Согласно этим правилам, ордера всегда исполняются последовательно (пусть даже по несколько штук в единицу времени) в порядке очереди. Исполнение ордеров приводит к изменению стакана таким же образом в строгой последовательности. Если соблюдать эту последовательность изменений при отображении "стакана", то никогда даже при частичном обновлении "ценовых уровней" не возникнет пересечения котировок. Отсюда вытекает вывод, что в QUIK эта последовательность изменений строк в "стаканах" нарушается.
Надо делать так, как надо. А как не надо - делать не надо.
При выводе информации в лог-файл выводится тарабарщина