Отвечать начну с конца.
В Теме от nxz указали что текущая версия Транзак 1.12, а выложен уже 1.8. Какая версия текущая?
Текущие версии ATF в Intra и Trader - 1.12, которые новее версии 1.8.
getActiveOrderIDs() поддерживается, судя по документации с 1.12. 1.13 в разработке (документация есть).
Что требуется передать в скобках? В каком виде возвращаются значения функции?
Учимся внимательно читать:http://transaq.ru/docs/atf/functions
getActiveOrderIDs() -- Получить массив идентификаторов всех активных заявок по данной бумаге и активному клиенту. (ver. 1.12)
А отсутствие параметра в скобках указывает на вызов функции без передачи ей аргументов. Идентификаторы - целые числа.
Здравствуйте, приведите пожалуйста примеры по getActiveOrderIDs().Цель: перед выполнением кода проверить есть ли заявки, если есть то ни чего не делать.
Пожалуйста, написан за 5 мин.
#samewindow
#line 0 nodraw
static Order;
static ActiveOrderIDs;
function init()
{
setInitCandles(1);
Order = new_object("hash");
ActiveOrderIDs = new_object("array");
}
function calc()
{
var i; var j; var m;
ActiveOrderIDs = getActiveOrderIDs();
m = ActiveOrderIDs.size(); i -= i;
while (i < m) {
j = ActiveOrderIDs.shift();
Order = getOrder(j);
signal::outputMultiple("TransaqID:" + as_string(Order["trnid"]) +
" OrderNo:" + as_string(Order["orderno"]) + " price:" + as_string(Order["price"]));
i += 1;
}
}
Пример отображает активные (OS_ACTIVE) заявки на бирже в окне вывода ATF. Выводятся одной строкой:
- Идентификатор заявки на сервере Transaq;
- Идентификатор заявки на биржевом сервере;
- Цена заявки.