Суммарная позиция

Автор: vladislav99980

Суммарная позиция - Thu Nov 07 2019 11:09 AM

Может кто нибудь знает как посмотреть суммарную позицию по всем агентам, по каждому инструменту. Например SR в сумме -4, т.е. 8 в лонг, 12 в шорт, SI 12 в лонге, 24 в шорте, суммарная -12, и т.д. и так по каждому инструменту. Проблема: из-за сбоев связи иногда, идет не соответствие контрактов квика и тслаба. Зависает позиция, т.к. например заявка исполнилась, а тслаб это не узнал. и позиция получилась ничейная(ни один агент не ведет). В ручную считать каждый раз занимает много времени, т.к. агентов много. плюс в части агентов в 1 скрипте торгуются несколько инструментов, т.е. там вообще не видно какая позиция у какого инструмента, пока не откроешь агент.
Автор: OldMo

Re: Суммарная позиция - Thu Nov 07 2019 12:33 PM

Можно в каждом агенте сохранять в кэш какие открытые позиции у него есть, а в специально созданном для этого агенте эту информацию собирать и выводить в удобном виде. Но, мне кажется, это бред. Надо со сбоями связи разбираться. Зачем вы их терпите?
Автор: vladislav99980

Re: Суммарная позиция - Thu Nov 07 2019 07:57 PM

Сбои связи, это не то что каждый день, что-то сбоит. Бывают какие то внештатные ситуации, когда что-то подвисает, то ли квик, то ли квик шарп, и т.д. и бывает что одна заявка срабатывает несколько раз. было 2 раза за год. последний раз было 1.11.2019 перестал торговать после вечернего клиринга тслаб. ни одной сделки. даже так и не понял в чем проблема была, я это увидел только в субботу. соответственно там, произошел полный перекос позиций. Для чего мне это нужно? чтобы спать спокойно, с утра встал посмотрел суммарную позицию, сравнил с квиком, все совпало, значит все ок. Я просто не понимаю, почему это до сих пор не реализовано в программе. как люди торгуют, когда 150 агентов? там разве уследишь за агентами за всеми,я за своими то 60 не могу уследить)) я вот вижу только 1 выход, сравнивать позиции суммарные.60 агентов у меня ведут более 100 разных позиции по инструментам. не возможно это в ручную отслеживать. Вернее возможно, но долго))) примерно от 30-50 минут чтобы в ручную посчитать все.
Автор: OldMo

Re: Суммарная позиция - Thu Nov 07 2019 08:59 PM

Агент в тслаб видит только свои позиции и заявки. Еще есть доступ к суммарной позиции по инструменту на счете. Так что без передачи данных другим агентам, наверное, ни как.

Имхо, то что вы описываете ненормально. В тех поддержку обращались? Если нет до думаю стоит обратиться пока логи за 01.11 еще не стерлись. Должны помочь. Ну, и даже если не помогут, вы ничего не теряете.
Автор: vladislav99980

Re: Суммарная позиция - Thu Nov 07 2019 09:12 PM

можно подробнее про то как сделать через агенты? если не сложно. даже пока представления не имею куда копать. вы как сверяете позиции?
Автор: OldMo

Re: Суммарная позиция - Thu Nov 07 2019 11:23 PM

Ну, во-первых, торгующих агентов у меня всего 10. А во-вторых, специально я размеры позиций не сверяю. Я поглядываю, конечно, что-там происходит, потому что могут происходить какие-то внештатные ситуации, вылезать баги и тд. При этом возникновение позиции, которую не видит ТСлаб - это только одна из возможных, причем, имхо, не самых вероятных проблем. Так что приглядывать за работой агентов придется все равно.

Я, кстати говоря, сталкивался с ситуацией, когда тслаб неверно рассчитывал размер позиции. Она у него удваивалась. То есть позиция открывалась, допустим, на 10 лотов, но в кокой-то момент он решал что на 20 лотов. После обращения в тех поддержку баг пофиксили. Заняло это, правда, полгода. Мне кажется, могли бы и быстрее исправить (


про то как организовать сверку:

1. Если бы каждый агент работал на отдельном счете или хотя бы на этом счете не было бы агентов работающих с теми же инструментами, то можно было бы сравнивать баланс по инструменту на счете и размер позиции которую ведет агент. Через АПИ баланс по инструменту доступен через ISecurityRt.BalanceQuantity есть ли он в кубиках не знаю. Соответственно если они не совпадают, то можно выводить соответствующее сообщение в лог с трансляцией сообщения через менеджер уведомлений куда надо. Если идея распихать агенты по разным счетам вас не пугает - это самый простой вариант.

2. Если на одном счету много агентов то ситуация усложняется тем, что каждый из них видит только свою позицию. В тслаб есть возможность передачи данных между агентами через кеш программы. Через кубики тоже можно, хотя названия кубика я не знаю. Соответственно, нужно, в каждый агент добавить блок сохраняющий размер позиции в кеш и создать отдельный агент который будет из кэша размеры позиций считывать, складывать, а дальше все как в пункте №1.

У меня по подобному принципу работает агент, собирающий с других агентов данные о результатах их работы и записывающий данные в красивую табличку excel.

В варианте номер два я, правда, вижу две проблемы:
1. Агенты узнают о размере позиции с запаздыванием. Например, вы торгуете на часовиках и сделка совершена в 15:10. Агент увидит и передаст ее размер в кеш только на следующем пересчете в 16:00.
2. Не уверен что это реально собрать в кубиках. Хотя, глядя на опционные скрипты, я готов в это поверить.
Автор: vladislav99980

Re: Суммарная позиция - Fri Nov 08 2019 09:18 AM

С ситуацией где тслаб неверно считает размер позиции, я тоже сталкивался,при расчете позиции от суммы, у меня тслаб в 1 прекрасный момент посчитал не 10 лотов, а 100. вот был сюрприз когда я увидел свою позицию, после обращения в тех поддержку, баг поправили, через пару недель.

Каждый агент на своем счете, мне не нравится, у меня так было,не удобно, возвращаться к этому не буду.

По пересчету если на часовиках, то у меня агенты которые работают на больших таймфреймах, все идет через сжатие, т.е. если часовщики, то все равно пересчет идет раз в 5 минут. Ну и это не страшно, мне нужно сравнить позиции раз в день с квиком. все равно в какой момент с утра, днем или вечером.

Проблема в том, что я не знаю АПИ, и вообще не знаю программирование. Если только собирать из кубиков.

Спасибо, за помощь, попробую в кубиках поискать что нибудь
Автор: vladislav99980

Re: Суммарная позиция - Sat Nov 09 2019 10:44 AM

Пришел ответ от поддержки, по поводу что ТСлаб перестал торговать. По логу не понятно что произошло. Вот так
Автор: ViL

Re: Суммарная позиция - Wed Nov 13 2019 01:53 PM

Ну, вероятно попросили что-то запустить и что-то сделать, что бы ситуация прояснилась. Проблема явно не в программе ?
Автор: vladislav99980

Re: Суммарная позиция - Thu Nov 14 2019 04:06 PM

да, попросили, запустил. Почему не в программе, есть какой то ответ на этот вопрос? в логе тслаба просто после 18.41 нет ничего, хотя потом в 23.50 есть сообщение. Если есть предположение что виндоус всему виной, тогда почему в 23.50 было сообщение? получается что виндоус должен был так и не отпускать ТСлаб работать. Хотя может и не в программе, в любом случае запустил агента проверочного, ждем))
Автор: vladislav99980

Re: Суммарная позиция - Thu Nov 14 2019 04:07 PM

Спасибо за совет, все собрал через кубики. Теперь вижу все суммарные позиции по всем агентам. красота
Автор: Frend

Re: Суммарная позиция - Thu Nov 14 2019 04:30 PM

Originally Posted By: vladislav99980
Спасибо за совет, все собрал через кубики. Теперь вижу все суммарные позиции по всем агентам. красота

Как реализовали ? Через кеш ?
Автор: vladislav99980

Re: Суммарная позиция - Mon Nov 18 2019 08:30 PM

да
Автор: ViL

Re: Суммарная позиция - Tue Nov 19 2019 07:41 PM

Originally Posted By: vladislav99980
Спасибо за совет, все собрал через кубики. Теперь вижу все суммарные позиции по всем агентам. красота

Подробности будут ? smile
Автор: vladislav99980

Re: Суммарная позиция - Wed Nov 20 2019 07:01 AM

)) в каждом агенте добавил кубик суммарная позиция и сохранить в глобальный кеш. Создал агентов по инструментам, каждому отдельно. Например для сбера свой агент, для ртс свой. Туда добавил кубик загрузить из глобального кеш, по всем агентам где торгуется ртс, и дальше сравниваю с текущей позицией сумму всех позиций по агентам, если не совпадает, то сообщение в телеграмм. а если нужно посмотреть какой агент в какой позиции, то захожу в агент ртс, они на графике все выведены, и выведена суммарная позиция