Позиции по деривативам

Позиции по деривативам
Atom
10/10/2011
aleksej


Здравствуйте!

Тестирую стратегию на Украинской бирже и столкнулся с проблемой получения позиций по деривативам из таблицы "Позиции по деривативам".
Версия S# 4.0.1, Quik 5.23, 5.24.

Verifier говорит что все настроено правильно, но при старте экспорта ProcessDataError отлавливает:

Code
System.InvalidOperationException: Инструмент с кодом UX1100BL1 для деривативной позиции не найден.
   at StockSharp.Quik.QuikTrader.#=q83RC8QjwGE06bYxuClwq92LhVOvhOqg1Ibb6sc3fM$w=
.#=qyv7cgDXipIbE4H64zoSQuQ==(IList`1 #=qnPrMXzejlhZGIiblHaU0yw==, Func`2 #=qoCz5
3tE0sp4RQUb3Ds8GsA==)
   at #=qp_fbLTJnFE2othouXvioeCpaCgoD026MlkJsD2ZqOQGLb6nfpDLyRuo5lZzqRlei.#=qAUA
7Once2I3cbE7dXu$MZg==(DdeTable #=qSWwYAwvcL$D4KIHt_5bG3w==, IList`1 #=q6IUmIWmvv
dbuHixc5eXkyQ==, Action`2 #=qTX0q2c4E$ISj79rZpKw6vA==, Action`1 #=qs7PROwMpZp9zz
gPyrFElhg==, Boolean #=qTJVmId$bLpcrK$siTqKJ3A==).
...
И так для всех позиций из таблицы "Позиции по деривативам".



Все эти инструменты в таблице "Инструменты" есть.

Самое удивительное, что через некоторое время позиции таки появляются, но ошибки продолжают сыпаться в ProcessDataError.
Сейчас приходится просто убирать из StartExport-а DerivativePositionsTable и работать только с позициями стратегий.


verifier DerivativePosition DDE error
positions DerivativePosition error

Tags:


Thanks:


1 2  >
Mikhail Sukhov

Avatar
Date: 10/10/2011
Reply


aleksej
Все эти инструменты в таблице "Инструменты" есть.


Вы лучше скрин этой таблицы приведите.
Thanks:

aleksej

Avatar
Date: 10/10/2011
Reply


Извините, забыл сразу прикрепить.


instruments DerivativePositions error
Thanks:

Mikhail Sukhov

Avatar
Date: 10/10/2011
Reply


aleksej
Извините, забыл сразу прикрепить.


Добавьте соответствующие классы в QuikTrader.SecurityClassInfo
Thanks: aleksej

aleksej

Avatar
Date: 10/10/2011
Reply


Большое спасибо, заработало :)

Готовое решение для Украинской биржи, если кто-то еще будет с такой проблемой:

Code

QuikTrader.SecurityClassInfo.Add("OPTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Option, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("FUTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Future, Exchange.Ux));
Thanks:

Alexander

Avatar
Date: 10/10/2011
Reply


aleksej
Большое спасибо, заработало :)

Готовое решение для Украинской биржи, если кто-то еще будет с такой проблемой:

Code

QuikTrader.SecurityClassInfo.Add("OPTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Option, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("FUTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Future, Exchange.Ux));


Совершенно верно. :)

Добавим в S# 4.0.2 которая будет на codelpex. Спасибо за фидбек.
Thanks:

aleksej

Avatar
Date: 10/10/2011
Reply


Попрошу для полноты добавить сразу так :)

Code

QuikTrader.SecurityClassInfo.Add("OPTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Option, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("FUTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Future, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("GTS", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Equity, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("RTSIND", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Index, Exchange.Ux));
Thanks:

Alexander

Avatar
Date: 10/10/2011
Reply


aleksej
Попрошу для полноты добавить сразу так :)

Code

QuikTrader.SecurityClassInfo.Add("OPTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Option, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("FUTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Future, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("GTS", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Equity, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("RTSIND", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Index, Exchange.Ux));


Индекс автоматом проставляется
Про GTS можно поподробнее - что это? В инете пусто.
Thanks:

Mikhail Sukhov

Avatar
Date: 10/10/2011
Reply


aleksej
Попрошу для полноты добавить сразу так :)

Code

QuikTrader.SecurityClassInfo.Add("OPTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Option, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("FUTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Future, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("GTS", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Equity, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("RTSIND", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Index, Exchange.Ux));


Последние два кода будет добавить проблематично. Они могут использоваться и для наших бирж.
Thanks:

aleksej

Avatar
Date: 10/10/2011
Reply


С RTSIND согласен, будут пересекаться, логично только OPTUX и FUTUX использовать.

А GTS - это класс обычных Equity на Украинской Бирже (не знаю, есть ли он на РТС):

Thanks:

lesser

Avatar
Date: 10/17/2011
Reply


Подскажите , плиз куда нужно дописать :

QuikTrader.SecurityClassInfo.Add("OPTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Option, Exchange.Ux));
QuikTrader.SecurityClassInfo.Add("FUTUX", new RefPair<SecurityTypes, Exchange>(SecurityTypes.Future, Exchange.Ux));

В примере Sample.

Хотя наверно проблемма не в этом , потому что инструменты у меня есть , портфель есть, а вот позиций не видно. :(

Спасибо.
Thanks:
1 2  >

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy