Добрый день. При покупке скриптом по рыночной цене , как узнать цену покупки? хотел через getItem('firm_holding') . Функция возвращает ноль. Других идей нету .
Рекомендуем использовать таблицу 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
Вы же хотите узнать цену сделки, так и читайте ее из таблицы сделок. причем здесь позиция по инструментам? и где Вы в позиции увидели цену?
Ну да, с ценой сделки козе понятно. ) А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
Вы же хотите узнать цену сделки, так и читайте ее из таблицы сделок. причем здесь позиция по инструментам? и где Вы в позиции увидели цену?
Ну да, с ценой сделки козе понятно. ) А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
Если Вы пытаетесь ответить на вопрос темы, то читайте внимательнее вопрос. Если просто выпендриваетесь, то нахрена?
Kolossi написал: А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
К сожалению, средствами QLUA данную таблицу не получить.
Однако параметры данной таблицы формируются на основе позиций клиента, которые отражены в соответствующих таблицах терминала, к которым в свою очередь можно получить доступ средствами QLUA. Подробное описание полей Таблицы "Состояние счёта" находится в Руководство пользователя QUIK v.9.7zip, 14.6 МБ -> Раздел 3. Просмотр информации -> 3.5 Состояние счета.
Kolossi написал: А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
К сожалению, средствами QLUA данную таблицу не получить.
Однако параметры данной таблицы формируются на основе позиций клиента, которые отражены в соответствующих таблицах терминала, к которым в свою очередь можно получить доступ средствами QLUA. Подробное описание полей Таблицы "Состояние счёта" находится в Руководство пользователя QUIK v.9.7zip, 14.6 МБ -> Раздел 3. Просмотр информации -> 3.5 Состояние счета.
Да не получается. Конечно я веду среднюю позиции средствами и возможностями скриптов. Как правило она совпадает с балансовой ценой, но стоит провести сделку мимо скрипта и весь результат можно кидать в помойное ведро. Поэтому возможность получать данные с этой таблицы хотелось бы иметь.
Kolossi написал: А как насчет получения средней цены покупки по инструменту, точнее параметра "Балансовая цена" в таблице Состояние счета?
К сожалению, средствами QLUA данную таблицу не получить.
Однако параметры данной таблицы формируются на основе позиций клиента, которые отражены в соответствующих таблицах терминала, к которым в свою очередь можно получить доступ средствами QLUA. Подробное описание полей Таблицы "Состояние счёта" находится в Руководство пользователя QUIK v.9.7zip, 14.6 МБ -> Раздел 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)
Alexey Danin, К стати хотел спросить, а чем "балансовая стоимость" отличается от "цены приобретения" ? Или это одно и тоже просто таблицы делали разные разные люди со своими терминами в голове?
Kolossi написал: Конечно, доступ к таблице "Состояние счета" средствами QLua.
Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Цитата
Kolossi написал: К стати хотел спросить, а чем "балансовая стоимость" отличается от "цены приобретения" ? Или это одно и тоже просто таблицы делали разные разные люди со своими терминами в голове?
"Балансовая стоимость" - это суммарная оценка стоимости позиций по ценам приобретения (по значению параметра Баланс. цена).
"Баланс. цена" - средневзвешенная цена открытия позиции, с учетом валюты цены приобретения. Для спот-рынка – соответствует значению параметра «Цена приобретения» в таблице «Позиции по инструментам». Для срочного рынка – соответствует значению параметра «Эффект. цена поз.» в таблице «Позиции по клиентским счетам».
Подробнее в Руководстве пользователя/ Раздел 3. Просмотр информации/ 3.5 Состояние счета.
Просьба описать проблему подробнее, если возникает какая-либо ошибка, пришлите, пожалуйста, скриншот данной ошибки, также просьба прислать код скрипта для анализа.
Брокер Сбербанк вчера перестал выдавать информацию при подаче запроса через метод CalcBuySell. Уже было. Приходится временно отключать контроль и переходить на самостоятельный расчет объема сделки или ГО и проверку достаточности средств.
Сергей написал: Всё ясно - не работает таблица Купить/Продать.
Уточните, как проявляется проблема? Не отображаются данные, либо отображаются, но они некорректные, просьба прояснить этот момент. Также пришлите, пожалуйста, скриншот данной таблицы.
Пробовали ли Вы перезаказать данные (Система - Заказ данных - Перезаказать данные) и пересоздать таблицу? Если пробовали и информация не появилась, то в таком случае по данному вопросу рекомендуем обратиться к Вашему брокеру.