Опционы BaseAsset.GetStrikeStep() всегда возвращает 0


Опционы BaseAsset.GetStrikeStep() всегда возвращает 0
Atom
9/6/2012


Привет, форумчане.

Проблема такая:
GetStrikeStep() на любом БА (базовый актив) всегда 0. При этом портфель и БА зарегистрированы. Данные по ним приходят. Все параметры БА (BestBid, BestAsk) достаются без проблем. GetCentralStrike() тоже отрабатывает корректно.
Code

var strikeStep = BaseAsset.GetStrikeStep(); // strikeStep - 0


Это бага в либе или при каких условиях еще я могу получить 0 этим методом?


Tags:


Thanks:


Mikhail Sukhov

Avatar
Date: 9/6/2012
Reply


А само поле Strike?
Thanks:

pehas

Avatar
Date: 9/6/2012
Reply


Mikhail Sukhov Go to
А само поле Strike?


В BaseAsset проверить сейчас не могу, нет лицензии на этой машине (рабочая). Вечером проверю, отпишусь.
Но все Strike самих опционов полученных через BaseAsset.GetCall и GetPut - есть.
Thanks:

pehas

Avatar
Date: 9/7/2012
Reply


Mikhail Sukhov Go to
А само поле Strike?


Поле strike у BaseAsset - 0. Но это и не опцион. Так что вроде логично. У опционов это поле соответствует страйку
Thanks:

Alexander

Avatar
Date: 9/13/2012
Reply


Code
		public static decimal GetStrikeStep(this Security underlyingAsset)
		{
			var options = underlyingAsset.GetDerivatives().Filter(OptionTypes.Call).OrderBy(s => s.Strike);
			return options.ElementAt(1).Strike - options.ElementAt(0).Strike;
		}


Вот исходный код данного метода.
Попробуйте у себя подебажить его, посмотреть что возвращает GetDerivatives().
Мне ошибку найти не удалось.

Просьба отписаться по результатам.
Thanks:

pehas

Avatar
Date: 9/14/2012
Reply


Подебажил

Жук выползает потому, что в определении метода GetStrikeStep не учитывается ExpireDate
И получается, что если в деревативах базового актива есть опционы разных серий, то сравниваются соответственно первые колы разных серий с одинаковыми страйками, т.к. они у вас в функции сортируются по страйку

вот скрин того, что у вас находится в результате в коллекции options
Коллекция options
Thanks: Mikhail Sukhov Alexander

Mikhail Sukhov

Avatar
Date: 9/14/2012
Reply


pehas Go to
Подебажил

Жук выползает потому, что в определении метода GetStrikeStep не учитывается ExpireDate


Поправим.
Thanks:


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

loading
clippy