Добрый день. При покупке скриптом по рыночной цене , как узнать цену покупки? хотел через getItem('firm_holding') . Функция возвращает ноль. Других идей нету .
Пользователь
Сообщений: Регистрация: 08.04.2022
23.08.2022 07:07:08
Здравствуйте.
Рекомендуем использовать таблицу trades, параметр price. Например: getItem('trades', index).price. Также можно использовать функцию обратного вызова OnTrade - Функция вызывается терминалом QUIK при получении сделки или при изменении параметров существующей сделки. Подробнее в Руководстве пользователя Qlua/ Функции обратного вызова/ OnTrade/
function GetTotalnet() if IsRun == true and isConnected() == 1 then local result = getBuySellInfo( FIRM_ID, CLIENT_CODE, CLASS_CODE, SEC_CODE , 0 ) if result ~= nil then local bal = tonumber( result.balance or "0" ) local val = tonumber( result.value or "0" ) local prof = tonumber( result.profit_loss or "0" )
return bal /LOTSIZE, -- Позиция val, -- Оценка prof, -- Прибыль / Убыток в деньгах tonumber( result.can_buy or "0" ) / LOTSIZE, -- Можно купить tonumber( result.can_sell or "0" ) / LOTSIZE, -- Можно продать (val - prof ) / bal -- Цена приобретения end return 0, 0, 0, 0, 0, 0 end end
Вы же хотите узнать цену сделки, так и читайте ее из таблицы сделок. причем здесь позиция по инструментам? и где Вы в позиции увидели цену?
Ну да, с ценой сделки козе понятно. ) А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
Вы же хотите узнать цену сделки, так и читайте ее из таблицы сделок. причем здесь позиция по инструментам? и где Вы в позиции увидели цену?
Ну да, с ценой сделки козе понятно. ) А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
Если Вы пытаетесь ответить на вопрос темы, то читайте внимательнее вопрос. Если просто выпендриваетесь, то нахрена?
Пользователь
Сообщений: Регистрация: 08.04.2022
05.09.2022 22:28:48
Здравствуйте.
Цитата
Kolossi написал: А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
К сожалению, средствами QLUA данную таблицу не получить.
Однако параметры данной таблицы формируются на основе позиций клиента, которые отражены в соответствующих таблицах терминала, к которым в свою очередь можно получить доступ средствами QLUA. Подробное описание полей Таблицы "Состояние счёта" находится в -> Раздел 3. Просмотр информации -> 3.5 Состояние счета.
написал: А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
К сожалению, средствами QLUA данную таблицу не получить.
Однако параметры данной таблицы формируются на основе позиций клиента, которые отражены в соответствующих таблицах терминала, к которым в свою очередь можно получить доступ средствами QLUA. Подробное описание полей Таблицы "Состояние счёта" находится в -> Раздел 3. Просмотр информации -> 3.5 Состояние счета.
Да не получается. Конечно я веду среднюю позиции средствами и возможностями скриптов. Как правило она совпадает с балансовой ценой, но стоит провести сделку мимо скрипта и весь результат можно кидать в помойное ведро. Поэтому возможность получать данные с этой таблицы хотелось бы иметь.
написал: А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
К сожалению, средствами QLUA данную таблицу не получить.
Однако параметры данной таблицы формируются на основе позиций клиента, которые отражены в соответствующих таблицах терминала, к которым в свою очередь можно получить доступ средствами QLUA. Подробное описание полей Таблицы "Состояние счёта" находится в -> Раздел 3. Просмотр информации -> 3.5 Состояние счета.
Да не получается. Конечно я веду среднюю позиции средствами и возможностями скриптов. Как правило она совпадает с балансовой ценой, но стоит провести сделку мимо скрипта и весь результат можно кидать в помойное ведро. Поэтому возможность получать данные с этой таблицы хотелось бы иметь.
Если интересует цена покупки актива то надо использовать Позиции по инструментам
Описание параметров таблицы «Позиции по инструментам»:
Параметр
Тип
Описание
sec_code
STRING
Код инструмента
trdaccid
STRING
Счет депо
firmid
STRING
Идентификатор фирмы
client_code
STRING
Код клиента
openbal
NUMBER
Входящий остаток
openlimit
NUMBER
Входящий лимит
currentbal
NUMBER
Текущий остаток
currentlimit
NUMBER
Текущий лимит
locked_sell
NUMBER
В продаже. Количество инструментов, заблокированное под исполнение заявок клиента на продажу
locked_buy
NUMBER
В покупке. Количество инструментов в активных заявках клиента на покупку
locked_buy_value
NUMBER
Стоимость инструментов, заблокированных под покупку
locked_sell_value
NUMBER
Стоимость инструментов, заблокированных под продажу
wa_position_price
NUMBER
Цена приобретения
limit_kind
NUMBER
Срок расчётов. Возможные значения:
положительные целые числа, начиная с «0», соответствующие срокам расчётов из таблицы «Позиции по инструментам»: «0» – T0, «1» – T1, «2» – T2 и т.д.;
отрицательные целые числа – технологические лимиты (используются для внутренней работы системы QUIK)
написал: Поэтому возможность получать данные с этой таблицы хотелось бы иметь.
Можем зарегистрировать пожелание на доработку функционала. Регистрируем?
Конечно, доступ к таблице "Состояние счета" средствами QLua. Спасибо.
Пользователь
Сообщений: Регистрация: 03.03.2016
06.09.2022 18:31:13
Alexey Danin, К стати хотел спросить, а чем "балансовая стоимость" отличается от "цены приобретения" ? Или это одно и тоже просто таблицы делали разные разные люди со своими терминами в голове?
Пользователь
Сообщений: Регистрация: 08.04.2022
06.09.2022 19:28:30
Цитата
Kolossi написал: Конечно, доступ к таблице "Состояние счета" средствами QLua.
Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Цитата
Kolossi написал: К стати хотел спросить, а чем "балансовая стоимость" отличается от "цены приобретения" ? Или это одно и тоже просто таблицы делали разные разные люди со своими терминами в голове?
"Балансовая стоимость" - это суммарная оценка стоимости позиций по ценам приобретения (по значению параметра Баланс. цена).
"Баланс. цена" - средневзвешенная цена открытия позиции, с учетом валюты цены приобретения. Для спот-рынка – соответствует значению параметра «Цена приобретения» в таблице «Позиции по инструментам». Для срочного рынка – соответствует значению параметра «Эффект. цена поз.» в таблице «Позиции по клиентским счетам».
Подробнее в Руководстве пользователя/ Раздел 3. Просмотр информации/ 3.5 Состояние счета.
Пользователь
Сообщений: Регистрация: 26.04.2021
12.09.2022 13:28:52
Что-то у меня getBuySellInfo перестало работать. QUIK 8.7.1.3
Пользователь
Сообщений: Регистрация: 08.04.2022
12.09.2022 14:00:44
Здравствуйте.
Просьба описать проблему подробнее, если возникает какая-либо ошибка, пришлите, пожалуйста, скриншот данной ошибки, также просьба прислать код скрипта для анализа.
Пользователь
Сообщений: Регистрация: 26.04.2021
12.09.2022 15:47:21
Скрипт() исправно работал полгода. А сегодня отказался.
Пользователь
Сообщений: Регистрация: 26.04.2021
12.09.2022 16:11:42
Не работает - это не выдаёт информацию по открытым позициям.
Сергей написал: Скрипт( ) исправно работал полгода. А сегодня отказался.
Брокер Сбербанк вчера перестал выдавать информацию при подаче запроса через метод CalcBuySell. Уже было. Приходится временно отключать контроль и переходить на самостоятельный расчет объема сделки или ГО и проверку достаточности средств.
Уже привыкли...
Пользователь
Сообщений: Регистрация: 08.04.2022
14.09.2022 08:30:43
Здравствуйте.
Цитата
Сергей написал: Всё ясно - не работает таблица Купить/Продать.
Уточните, как проявляется проблема? Не отображаются данные, либо отображаются, но они некорректные, просьба прояснить этот момент. Также пришлите, пожалуйста, скриншот данной таблицы.
Пробовали ли Вы перезаказать данные (Система - Заказ данных - Перезаказать данные) и пересоздать таблицу? Если пробовали и информация не появилась, то в таком случае по данному вопросу рекомендуем обратиться к Вашему брокеру.
Пользователь
Сообщений: Регистрация: 26.04.2021
15.09.2022 15:41:45
Заменил старый QUIK 8.7.1.3 на новый брокерский 9.4.2.1, и таблица Купить/Продать заработала.