Portfolio Management Software – Xignite Hit Calculation Examples

First Published Friday, 4th March 2011 11:54 am from Xand : Joel York

The opinions expressed by this blogger and those providing comments are theirs alone, this does not reflect the opinion of Automated Trader or any employee thereof. Automated Trader is not responsible for the accuracy of any of the information supplied by this article.


href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F">

/> src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F&source=xignite&style=normal&b=2"

height="61" width="50" />

One of the most common financial applications of Xignite

on-demand market data is portfolio management software. Portfolio

management software is used by a wide range of Xignite customers

including asset managers, wealth managers, hedge funds, financial

advisers, broker-dealers and publishers of online portfolio

websites. Each portfolio management software customer has unique

requirements that vary across asset classes and update

frequencies, however, the hit calculation required to select the

right Xignite Web services subscription plans is essentially the

same.

This is the third post in a blog series

on hit calculation that will provide detailed example

calculations for portfolio management software applications. The

href="http://xignite.web-services-blog.com/2011/02/hit-calculation-tutorial-for-xignite-web-services/"

target="_blank">first post and href="http://xignite.web-services-blog.com/2011/02/simplifying-hit-calculations-for-xignite-web-services/"

target="_blank">second post in this series provided

a comprehensive hit calculation tutorial as well as a href="http://xignite.web-services-blog.com/media/xignite-hit-estimation-worksheet.xlsx"

target="_blank">general hit calculation spreadsheet.

The examples in this post are also available in this sample href="http://xignite.web-services-blog.com/media/portfolio-management-software-xignite-hit-estimation-worksheet.xlsx"

target="_blank">portfolio management software hit calculation

spreadsheet.

Single Hit Data Block

for Portfolio Management Software

Every

portfolio management software application

will access a number of Xignite Web

services covering a variety of asset classes ( href="http://www.xignite.com/xquotes.asmx"

target="_blank">XigniteQuotes, href="http://www.xignite.com/xfunds.asmx"

target="_blank">XigniteFunds, href="http://www.xignite.com/xfutures.asmx"

target="_blank">XigniteFutures, href="http://www.xignite.com/xoptions.asmx"

target="_blank">XigniteOptions, href="http://www.xignite.com/xmetals.asmx"

target="_blank">XigniteMetals, etc.) to obtain the

current price of each asset in each portfolio. Because Xignite

Web services count hits uniformly as one hit per price quote, we

can dramatically simplify the hit calculation using the href="http://xignite.web-services-blog.com/2011/02/simplifying-hit-calculations-for-xignite-web-services/"

target="_blank">single symbol, single hit data block

described in the previous blog post in this hit calculation

series, i.e., the number of symbols requested per month is equal

to the number of hits per month.

Update

Frequencies for Portfolio Management Software

As pointed out in the previous post in this series,

href="http://xignite.web-services-blog.com/2011/02/simplifying-hit-calculations-for-xignite-web-services/"

target="_blank">the most important factor in determining usage

is almost always the update frequency, or the number of

requests to refresh the data each month.

Monthly Hits = # Symbols per Request x #

Requests per Month

Therefore, we're

going to break our portfolio management software examples into

three application scenarios according to update

frequency.

  • End-of-Day Portfolio

    Accounting System

  • Real-Time Portfolio

    Management Software

  • Online Portfolio

    Website

Each of these update

scenarios has a unique trigger event: day, cache refresh, and

page view respectively, giving the following hit calculation

formulas for each respective scenario.

Monthly Hits = # Symbols per Day x # Days per

Month

Monthly Hits = #

Symbols per Cache Refresh x # Cache Refreshes per

Month

Monthly Hits = #

Symbols per Page View x # Page Views per

Month

In the sections that follow,

we'll use the formulas above to estimate the usage for each

update frequency scenario above.

End-of-Day

Portfolio Accounting System - Hit

Calculation

The trick to calculating hits for

portfolio management software is estimating the request

population, or number of symbols per request, which for an

end-of-day portfolio accounting system is given by the following

formula.

Request Population = #

Symbols per Day (by Asset Class)

Depending on the particular assets held in each

portfolio, the result looks something like the table

below.

Asset

Class

Total

/>Symbols

per Day

Total

/>Asset

Allocation

Monthly

Hits

Estimate

Plan Max

Monthly

Hits

Stocks 3,000 60% 60,000 60,000
Funds 1,000 20% 20,000 60,000
Futures 250 5% 5,000 6,000
Options 250 5% 5,000 6,000
Metals 500 10% 10,000 60,000

End-of-Day Portfolio Accounting

System Hit Calculation

The table

above is a simple tally of all symbols across all portfolios

managed by the portfolio accounting system. Each symbol requires

one price each day (equal to one hit). In this particular

example, we've assumed that the portfolio accounting system will

run its valuation routine twenty working days each month, hence

the hits are equal to twenty times the number of symbols per

day.

60,000 Monthly Stock Hits =

3,000 Symbols per Day x 20 Days per Month

Xignite subscription plans are generally available in

increments of 600, 6,000, 60,000, and so on, therefore the

subscription plan is determined by rounding up to the maximum

number of hits available in each subscription plan.

Real-Time Portfolio Management Software - Hit

Calculation

The hit calculation for real-time

portfolio management software is essentially similar to that for

the end-of-day portfolio accounting system above with a

straightforward change to the update request frequency. To

minimize response time, it makes sense for real-time portfolio

management software to cache every symbol in every portfolio

using the relevant Xignite Web services, and then serve

individual portfolios from within the software application. Using

the same symbol count as the example above and assuming a cache

refresh rate of 5 updates per minute, the hit calculation for

stocks is as follows.

48,000 Cache

Refreshes per Month

= 5 refreshes/min x 60 mins/hr x 8

hrs/day x 20 days/mo

144,000,000 Monthly Stock Hits

=

3,000 Symbols per Refresh x 48,000 Refreshes per

Month

Extending the calculation

above to the other asset classes gives the table below as the

complete hit calculation for our real-time portfolio management

software.

Asset

Class

Total

/>Symbols

per Refresh

Total

Asset

Allocation

Monthly

Hits

Estimate

Plan Max

Monthly

Hits

Stocks 3,000 60% 144,000,000 Custom
Funds 1,000 20% 20,000 60,000
Futures 250 5% 12,000,000 60,000,000
Options 250 5% 12,000,000 60,000,000
Metals 500 10% 24,000,000 60,000,000

Real-time Portfolio Management Software Hit

Calculation

As mentioned

previously, the most important factor in determining usage is

almost always the update frequency. Compared to our end-of-day

portfolio accounting system, our real-time portfolio management

software requires several orders of magnitude more hits (With the

exception of funds which only have end-of-day NAV prices,

assuming ETFs are included in stocks). In fact, since most

Xignite standard subscription plans top out at 60 million hits,

this particular application would require a custom quote for the

real-time stock Web service (e.g., XigniteRealTime,

XigniteGlobalRealTime, XigniteBATSLastSale, or

XigniteNASDAQLastSale)

Online Portfolio

Website - Hit Calculation

While

it's possible to architect an online portfolio website to provide

either end-of-day or real-time updates like the respective

portfolio accounting system or portfolio management software

examples above, it is more common to update each website

visitor's portfolio on-demand each time a visitor requests a page

displaying the portfolio. In this case, the relevant trigger

event is a page view, and the associated request population is

given by the following formula.

Request Population = # Symbols per Page View

(By Asset Class)

The number of

symbols per page view is simply the average number of symbols in

a single portfolio. If we use the same total symbol count as in

the two previous examples, and further assume that there are

1,000 registered users of our online portfolio website that view

their portfolios twice a day on average, then the calculation

will look something like the table below.

Asset

/>Class

Average

Symbols

/>per Page

View

Average

/>Portfolio

Asset

Allocation

Monthly

Hits

Estimate

Plan Max

Monthly

Hits

Stocks 60 60% 3,600,000 6,000,000
Funds 20 20% 1,200,000 6,000,000
Futures 5 5% 300,000 600,000
Options 5 5% 300,000 600,000
Metals 10 10% 600,000 600,000

Online Portfolio Website Hit

Calculation

The average number of

symbols per page view (symbols in a single portfolio) would

normally be based on the specific portfolio holdings of the

particular online portfolio website, but for this example we've

used a little sleight of hand to make the calculation for our

online portfolio website example as similar to the earlier

end-of-day portfolio accounting system and real-time portfolio

software examples. Here we've assumed 50% overlap in portfolio

assets across all users, so to get the average symbols per page

view we simply divided the total number of symbols in the

previous examples by 1,000 users and then multiplied by 2 to

adjust for overlapping assets. For example, the average number of

stock symbols per page view = average number of stocks in a

single portfolio = 60 = 2 x 3,000 / 1000.

The

total number of hits is then determined by multiplying the number

of symbols per page view by the total number of page views per

month as in the formula above.

60,000 Page Views per Month

= 1,000

users x 2 views/day/user x 30 days/month

3,600,000 Monthly Stock Hits

= 60

Symbols per Page View x 60,000 Page Views per

Month

It is worth noting that the

number of hits for funds could be significantly reduced by

caching the end-of-day NAVs instead of serving them on-demand.

These three common examples demonstrate a number of recurring

concepts that can be used for similar hit calculations.

  • Single Hit, Single Symbol Data Block (one

    hit per symbol)

  • Average Request Population

    (average symbols per portfolio or page view)

  • Common Event Triggers

    (EOD Updates vs.

    Real-time Caching vs. On-Demand Page Views)

In addition, they clearly demonstrate that

update frequency is the most important factor in determining

total hit usage. Future posts in this series will provide more

hit calculation examples for the most common financial

applications.

Share and Enjoy:

target="_blank"

href="mailto:?subject=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples&body=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F"

title="email"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/email_link.png"

title="email" alt="email" class="sociable-hovers" />

href="http://twitter.com/home?status=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples%20-%20http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F"

title="Twitter"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/twitter.png"

title="Twitter" alt="Twitter" class="sociable-hovers"

/>

href="http://www.facebook.com/share.php?u=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F&t=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples"

title="Facebook"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/facebook.png"

title="Facebook" alt="Facebook" class="sociable-hovers"

/>

href="http://www.linkedin.com/shareArticle?mini=true&url=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F&title=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples&source=Financial+Market+Data+Web+Services+-+Xignite+Blog+It%26%23039%3Bs+not+the+data.++It%26%23039%3Bs+the+delivery.&summary=One%20of%20the%20most%20common%20financial%20applications%20of%20Xignite%20on-demand%20market%20data%20is%20portfolio%20management%20software.%20%20"

title="LinkedIn"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/linkedin.png"

title="LinkedIn" alt="LinkedIn" class="sociable-hovers"

/>

href="http://digg.com/submit?phase=2&url=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F&title=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples&bodytext=One%20of%20the%20most%20common%20financial%20applications%20of%20Xignite%20on-demand%20market%20data%20is%20portfolio%20management%20software.%20%20"

title="Digg"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/digg.png"

title="Digg" alt="Digg" class="sociable-hovers" />

href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F&title=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples"

title="StumbleUpon"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/stumbleupon.png"

title="StumbleUpon" alt="StumbleUpon" class="sociable-hovers"

/>

href="http://technorati.com/faves?add=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F"

title="Technorati"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/technorati.png"

title="Technorati" alt="Technorati" class="sociable-hovers"

/>

href="http://twitter.com/home/?status=tip%20@Techmeme%20http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F%20Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples"

title="Suggest to Techmeme via Twitter"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/techmeme.png"

title="Suggest to Techmeme via Twitter" alt="Suggest to Techmeme

via Twitter" class="sociable-hovers" /> rel="nofollow" target="_blank"

href="http://delicious.com/post?url=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F&title=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples&notes=One%20of%20the%20most%20common%20financial%20applications%20of%20Xignite%20on-demand%20market%20data%20is%20portfolio%20management%20software.%20%20"

title="del.icio.us"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/delicious.png"

title="del.icio.us" alt="del.icio.us" class="sociable-hovers"

/>

href="http://www.google.com/bookmarks/mark?op=edit&bkmk=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F&title=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples&annotation=One%20of%20the%20most%20common%20financial%20applications%20of%20Xignite%20on-demand%20market%20data%20is%20portfolio%20management%20software.%20%20"

title="Google Bookmarks"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/googlebookmark.png"

title="Google Bookmarks" alt="Google Bookmarks"

class="sociable-hovers" />

target="_blank"

href="https://favorites.live.com/quickadd.aspx?marklet=1&url=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F&title=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples"

title="Live"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/live.png"

title="Live" alt="Live" class="sociable-hovers" />

href="http://www.friendfeed.com/share?title=Portfolio%20Management%20Software%20-%20Xignite%20Hit%20Calculation%20Examples&link=http%3A%2F%2Fxignite.web-services-blog.com%2F2011%2F02%2Fportfolio-management-software-xignite-hit-calculation-examples%2F"

title="FriendFeed"> src="http://xignite.web-services-blog.com/wp-content/plugins/sociable/images/friendfeed.png"

title="FriendFeed" alt="FriendFeed" class="sociable-hovers"

/>

src="http://feeds.feedburner.com/~r/Xignite/~4/dyRi6QRVHEg"

height="1" width="1" />

  • Copyright © Automated Trader Ltd 2013 - The Gateway to Algorithmic and Automated Trading

click here to return to the top of the page