Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
ФХЪРСап 14, 2024, 12:04:20 am
Начало Помощь Поиск Войти Регистрация
Новости:

Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: getActiveOrderIDs() и getAllOrderIDs() « предыдущая тема следующая тема »
Страниц: [1] Печать
Автор Тема: getActiveOrderIDs() и getAllOrderIDs()  (Прочитано 4822 раз)
DiveRSS
Jr. Member
**
Сообщений: 68


Просмотр профиля Email
« : дХТаРЫп 07, 2014, 11:23:24 am »

Доброго времени суток.
Столкнулся с проблемой что функция getActiveOrderIDs не видит условных заявок выставленных по бумаге на рынке, а функция getAllOrderIDs возвращает все заявки включая снятые и отмененные и исполненные.

Вопрос собственно в следующем можно ли как то получить выставленную условную заявку( ее номер ) при этом не подтягивая все заявки?

 и сразу попутные вопрос в коде приведенном ниже idO получает сразу № последней заявки?
Записан
alexejshevchenko
Jr. Member
**
Сообщений: 68



Просмотр профиля WWW Email
« Ответ #1 : дХТаРЫп 07, 2014, 11:29:12 am »

я так сделал:

                var ins=getSecInfo();
      var ids = getAllOrderIDs();
      var z_id;

      while(ids.size()>0){
         z_id=ids.shift();
         var z=getOrder(z_id);
         if(z["secid"]!=ins["secid"]){continue;}
         if(z["status"]==OS_WATCHING){

            ПОЛУЧИЛИ УСЛОВНУЮ ЗАЯВКУ z_id

         }
      }
Записан
DiveRSS
Jr. Member
**
Сообщений: 68


Просмотр профиля Email
« Ответ #2 : дХТаРЫп 07, 2014, 11:46:36 am »

Я лично я пошел  по такому пути и мне надо на выходе получить в переменных idO и idS Либо номер заявки ( с стоп заявками все работает как надо )а вот если усланная обычная заявка то как то всегда есть значение.


                                                      ActiveStopOrderIDs = new_object("array");
            ActiveOrderIDs = new_object("array");
            ActiveStopOrderIDs = getActiveStopOrderIDs();
            ActiveOrderIDs = getAllOrderIDs();
            s = ActiveStopOrderIDs.size();
            o = ActiveOrderIDs.size();
            i -= i;
            j -= j;
            signal::alertMultiple("o="+ o +"s="+ s);
               if (o != 0)
                  {
                  idO = ActiveOrderIDs.shift();
                  }
               if (s != 0)
                  {
                  idS = ActiveStopOrderIDs.shift();
                  }

alexejshevchenko спасибо за подсказку в каком направление думать но если четно люблю однотипность. так что подумаю над твоим кодом( если не против то я просто всегда предпочитаю общаться на "ты" ) .
Записан
alexejshevchenko
Jr. Member
**
Сообщений: 68



Просмотр профиля WWW Email
« Ответ #3 : дХТаРЫп 07, 2014, 11:55:32 am »

та я тоже за общение на "ты" ))

в переменных idO и idS у тебя id заявок. Получаешь структуру getOrder(id) и оттуда берёшь номер заявки ))
Записан
DiveRSS
Jr. Member
**
Сообщений: 68


Просмотр профиля Email
« Ответ #4 : дХТаРЫп 07, 2014, 11:59:54 am »

Ну смотри на стоп ордерах получение структур не требуется, а я уже чувствую что придется пропускать через сито все заявки.
Жалко времени и чем сложнее код тем проще потом в нем самому запутаться.
Эх ну да ладно прорвемся.)
 
Записан
DiveRSS
Jr. Member
**
Сообщений: 68


Просмотр профиля Email
« Ответ #5 : дХТаРЫп 07, 2014, 02:21:02 pm »

Так вот и получается проблема:
если мы получаем массив заявок то да можно выдернуть ее статус ( и то не саму функцию OS_WATCHING а тока ее числовое значение в данном примере это будет 11).

а теперь вопрос как отфильтровать тока те условные заявки которые в данный момент находятся на рынке?
Записан
alexejshevchenko
Jr. Member
**
Сообщений: 68



Просмотр профиля WWW Email
« Ответ #6 : дХТаРЫп 07, 2014, 02:27:45 pm »

OS_WATCHING это константа, означающая что заявка ожидает условия, т.е. это активная условная заявка.
значение 11 - это OS_MATCHED, т.е. заявка исполнена.
Записан
DiveRSS
Jr. Member
**
Сообщений: 68


Просмотр профиля Email
« Ответ #7 : дХТаРЫп 07, 2014, 02:32:42 pm »

точно спасибо а то все я уже сам запутался.
Записан
Страниц: [1] Печать 
Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: getActiveOrderIDs() и getAllOrderIDs() « предыдущая тема следующая тема »
Перейти в:  


Войти

Powered by MySQL Powered by PHP Powered by SMF 2.0.10 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!