Transaq

СБО "Transaq" => Подсистема ATF => Topic started by: fable on Февраля 09, 2013, 10:55:21 pm

Title: Показатели торгов
Post by: fable on Февраля 09, 2013, 10:55:21 pm
подскажите пожалуйста как правильно применять statline.getparam(param) - получить параметр param для текущей бумаги.
если можно с примером. у меня она почемуто глючит, при использовании statline.getparam(param)  функция начинает выполнятья не один раз а произвольное количество раз, и если писать данные в массив то массив раздувается до гиганских размеров.
Title: Re: Показатели торгов
Post by: Heller on Февраля 11, 2013, 08:12:07 am
Не очень понятно что вы имеете ввиду. Можете привести ваш код? Пока ничего не понятно.
Title: Re: Показатели торгов
Post by: bugem on Февраля 11, 2013, 10:50:07 am
подскажите пожалуйста как правильно применять statline.getparam(param) - получить параметр param для текущей бумаги.
если можно с примером. у меня она почемуто глючит, при использовании statline.getparam(param)  функция начинает выполнятья не один раз а произвольное количество раз, и если писать данные в массив то массив раздувается до гиганских размеров.

Примерно так:
Code: [Select]
//************************* _test_Statline *************************
//------------------------------------------------------------------------------------
#line 0 solid blue
//------------------------------------------------------------------------------------
static secStat = 0; static openpositions = 0;
//------------------------------------------------------------------------------------
function init()
{
secStat = new_object("statline");
secStat.subscribe();
}
//------------------------------------------------------------------------------------
function calc()
{
openpositions = secStat.getparam(param_openpositions);
line[0] = openpositions;
}
//------------------------------------------------------------------------------------
function onNewCandle()
{
var a = secStat.getparam(param_open); var b = secStat.getparam(param_waprice);

signal::notify("Показатели торгов " + getFormattedDateTime(getServerTime()),
"Цена первой сделки: " + a + "; " + "Средневзвешенная цена: " + b + "; "
+ "\nКол-во лотов на покупку по лучшей цене: " + secStat.getparam(param_biddepth) + "; "
+ "Кол-во лотов на продажу по лучшей цене: "  + secStat.getparam(param_biddepth) + "; "
+ "\nСовокупный спрос: " + secStat.getparam(param_biddeptht) + "; "
+ "Совокупное предложение: "  + secStat.getparam(param_offerdeptht) + "\netc.");
}
//------------------------------------------------------------------------------------

Уважаемый Heller, поправьте если я не прав...
Title: Re: Показатели торгов
Post by: Heller on Февраля 11, 2013, 04:13:11 pm
bugem, да, всё так.
Title: Re: Показатели торгов
Post by: bugem on Февраля 14, 2013, 04:56:56 pm
Еще поэкспериментировал со statline
1. Время заключения последней сделки +4 часа к Мск для фьючей и +4 часа к Мск 1970г. для фондового.
2. Состояние торговой сессии по инструменту возвращает некие цифры 49 для срочки и 84 для фонды. Что это?
3. Для срочки - "планки"?
4. Для срочки - Дней до погашения?
Title: Re: Показатели торгов
Post by: Heller on Февраля 14, 2013, 05:10:41 pm
bugem, для статуса эти цифры - в общем-то баг. Это код состояния торгов, который обычно принято обозначать буквой. Можно привести к буквенному виду с помощью функции num2chr в принципе, хотя в последней сборке это уже исправлено.

Остальные вопросы я не понял.
Title: Re: Показатели торгов
Post by: bugem on Февраля 14, 2013, 05:42:45 pm
bugem, для статуса эти цифры - в общем-то баг. Это код состояния торгов, который обычно принято обозначать буквой. Можно привести к буквенному виду с помощью функции num2chr в принципе, хотя в последней сборке это уже исправлено.

Остальные вопросы я не понял.

по статусу понятно, спасибо. В общем то меня интересовала возможность отслеживать клиринг на срочке.

по п1 - если в таблице Финансовые инструменты время сейчас 18:39:00 то из АТФ возвращает 22:39:00 сегодняшней даты для срочки и 01.01.1970 для фондового
п.3 и 4 эти параметры хотелось бы получать в АТФ
Title: Re: Показатели торгов
Post by: bugem on Февраля 15, 2013, 10:28:34 am
Можно привести к буквенному виду с помощью функции num2chr в принципе

возвращает - Число не является ANSI-кодом (num2chr)
Title: Re: Показатели торгов
Post by: Heller on Февраля 15, 2013, 03:15:14 pm
Правим. В ближайшей сборке будет нормально.
Title: Re: Показатели торгов
Post by: hihi88 on Февраля 28, 2013, 11:04:53 pm
Помогите пожалуйста:
Необходимо сравнивать цены двух ирнструментов.
Пытаюсь использовать statline.getparam(shortname, market, param) .
С param все ясно.
Не получается венедрять в эту конструкцию shortname и market .
Откуда и как их получать, можно ли указать их строкой.?
Пример будет лучшим ответом.
Title: Re: Показатели торгов
Post by: Heller on Марта 01, 2013, 11:52:46 am
Имя бумаги можно получить функцией getISIN() либо подсмотреть в xml-файле при сохранении конфигурации. Идентификатор рынка - опять же либо в xml-файле, либо получив данные по рынку функцией getMarket() и затем посмотрев в этом хеше ключ "id". Ну и прежде чем звать getparam, надо на все бумаги, по которым вы планируете получать данные, подписаться. Вот простой пример:

Code: [Select]
static statline;

function init()
{
  statline = new_object("statline");
  statline.subscribe("LKOH", 4);
}

function onKeyDown(var id)
{
   signal::outputMultiple(statline.getparam("LKOH", 4, param_last));
}

id рынка и shortname бумаги в xml-файле в троке, которая выглядит примерно так:

Code: [Select]
<security scale="0.800000" lag="0.000000" axis="right" color="#000000" price_style="candles"
line_style="solid" price_type="close" multiplier="1.000000" ncandles="100" market="4" isin="LKOH" />

Послежние два параметра тут - это то что вам надо.
Title: Re: Показатели торгов
Post by: Олег on Июля 14, 2013, 07:02:46 pm
Еще поэкспериментировал со statline
...
3. Для срочки - "планки"?
...

п.3 и 4 эти параметры хотелось бы получать в АТФ





Все-таки так и не прозвучало, можно эти планки получить или нет.
Если можно, то как?
Title: Re: Показатели торгов
Post by: bugem on Июля 15, 2013, 08:30:47 am
Все-таки так и не прозвучало, можно эти планки получить или нет.
Если можно, то как?

Отвечу за разработчиков.
В версии 1.18 - нет. Судя по тому, что было в доках по 1.19 - тоже нет.
Title: Re: Показатели торгов
Post by: Heller on Июля 15, 2013, 05:10:56 pm
Да, пока еще не успели. В 1.21 постараюсь сделать.
Title: Re: Показатели торгов
Post by: Олег on Июля 15, 2013, 06:15:00 pm
Отвечу за разработчиков.
В версии 1.18 - нет. Судя по тому, что было в доках по 1.19 - тоже нет.

Да, пока еще не успели. В 1.21 постараюсь сделать.

Будем ждать.
Это очень полезная штука.

Title: Re: Показатели торгов
Post by: Anatoly Utkin on Апреля 17, 2014, 12:06:53 pm
Реализована ли в настоящее время возможность получать в ATF планки и время до экспирации?
Title: Re: Показатели торгов
Post by: Heller on Апреля 18, 2014, 11:28:58 am
Нет.