SmartQuant Discussion

Automated Quantitative Strategy Development, SmartQuant Product Discussion and Technical Support Forums
It is currently Wed Dec 02, 2020 3:43 pm

All times are UTC + 3 hours




Post new topic Reply to topic  [ 6 posts ] 
Author Message
PostPosted: Mon Mar 14, 2011 10:25 am 
Offline

Joined: Thu Mar 10, 2011 10:09 pm
Posts: 582
Приветствую,
Есть задача записать в Strategy.Position данные о позиции реально находящейся на брокерском счете.
Уже подсказали что есть такие вещи как BrokerInfo и BrokerAccount, однако в API quide про них совсем немного. Есть ли какие то стандартные способы условно говоря присвоить Strategy.Position=BrokerPosition ? Может уже сущевтвуют какие то методы или пример кода ? Если нет возможности обновлять сразу набор свойст Position, то собственно – как это делать по одному тоже не понятно, они все readonly. Provider основной- SmartCom, для Quik2Quant - тоже интересно, я им временно пользуюсь.

Кроме того вопрос, обновляет ли OpenQuant самостоятельно Strategy.Postition корректно при возникновении таких событий как OnOrderCancelled, OnOrderPartiallyFilled, OnOrderRejected, или надо саму это как то кодить ?

Спасибо.


Top
 Profile  
 
PostPosted: Tue Mar 15, 2011 5:54 pm 
Offline

Joined: Thu Mar 10, 2011 10:09 pm
Posts: 582
Ну что есть какие то идеи, рекомендации ?
У меня это пожалуй самый важный кусок остался в стратегии из белых пятен до выхода в реальный Live.

Спасибо


Top
 Profile  
 
PostPosted: Tue Mar 15, 2011 7:10 pm 
Offline

Joined: Thu Mar 10, 2011 10:09 pm
Posts: 582
В данной ветке http://www.smartquant.com/forums/viewtopic.php?f=60&t=6635&hilit=OnOrderRejected+Position отыскал такой код:
Code:
         BrokerAccountList Accounts = DataManager.GetBrokerInfo("IB").Accounts;
         foreach (BrokerAccount A in Accounts)
            if(A.Name==Account)
            {
               Console.WriteLine(A.Name + " BuyingPower=" + A.BuyingPower);
               foreach(BrokerPosition P in A.Positions)
               {
                  Console.WriteLine(A.Name + "\tSymbol= " + P.Symbol + "\tLongQty=" + P.LongQty +

"\tShortQty=" + P.ShortQty);
                  if(P.LongQty>0) {
                     Portfolio.Add(Clock.Now,TransactionSide.Buy,P.LongQty,Instruments[P.Symbol],0);
                  }
                  if(P.ShortQty>0) {
                     Portfolio.Add(Clock.Now,TransactionSide.Sell,P.ShortQty,Instruments[P.Symbol],0);
                  }
               }
            }

Полагаю он делает ровно то что мне нужно.
И ключевые строки которые синхронизируют Strategy.Position c тем что реально обранужено на моем счете
Portfolio.Add(Clock.Now,TransactionSide.Buy,P.LongQty,Instruments[P.Symbol],0)
Portfolio.Add(Clock.Now,TransactionSide.Sell,P.ShortQty,Instruments[P.Symbol],0)
Я прав ?
Единственное совершенно не понятно что за свойство BuyingPower ?


Top
 Profile  
 
PostPosted: Wed Mar 16, 2011 12:40 pm 
Offline

Joined: Thu Mar 10, 2011 10:09 pm
Posts: 582
В итоге с Quik не работает у меня данная строчка :(

BrokerAccountList Accounts = DataManager.GetBrokerInfo("Quik").Accounts
У кого нибудь есть положительный опыт работы с Квиковским "BrokerInfo" ?


Top
 Profile  
 
PostPosted: Wed Mar 16, 2011 3:30 pm 
Offline

Joined: Tue Aug 05, 2003 3:43 pm
Posts: 6817
Так а чего бы вам не спросить разработчиков квик адаптера? Другое дело что у нас в UserProvider в OpenQuant не всунуть никуда BrokerInfo, поэтому нам сначала надо доработать этот момент, а потом надо чтобы разработчики квика добавили этот запрос к себе.


Top
 Profile  
 
PostPosted: Wed Mar 16, 2011 6:19 pm 
Offline

Joined: Thu Mar 10, 2011 10:09 pm
Posts: 582
Ну, смотрите, наверно стоит вам доработать. Имхо без такой возможности серьезную стрратегию в Лив выпускать страшновато. А OQ все же серьезный инструмент :)


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 6 posts ] 

All times are UTC + 3 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group