---
title: Milestone - Account/Portfolio Views
description: finfolio investment portfolio management software
---

[![FinFolio | Portfolio Management Software](https://www.finfolio.com/hs-fs/hubfs/finfolio-3a.png?width=145&name=finfolio-3a.png)](http://finfolio.com/)

# FinFolio | Portfolio Management Software Blog

## Milestone - Account/Portfolio Views

by [Matt Abar](https://www.finfolio.com/blog/author/matt-abar), on Apr 2, 2008 7:34:00 AM

Our strategy for feature implementation is to take the hardest features, and those most likely to change our database/object structure, and implement those first. We recently discovered that the Portfolio/Account views were going to be difficult to implement, so we put cost accounting on hold. This is a long post because the concept is very tricky and positively impacts many areas of the software.

There are two separate "views" of the data in FinFolio, one to represent the legal system-of-record data (Account view) and one to mirror the firm's view of the client positions (Portfolio view). This lets us maintain the integrity of the system-of-record data and preserve the layout for data imports, while allowing advisors to specify a completely different reporting structure that can be used for modeling and printing client reports.

This should give advisors complete flexibility in mapping accounts, but remove complexity at report printing time. As I've been talking to advisors, I've heard several stories about having to re-print quarterly reports because you selected an incorrect option before clicking Print. With the Portfolio/Account structure you can set it once when the account is imported and keep the same structure for the life of the account.

The *Account* view (Client-Account-Position) represents the legal relationships and should match exactly the custodial system of record. This view is used for imports and data troubleshooting. Your back-office and data reconciliation team will primarily look at the data this way. The account object is multi-dimensional, meaning Accounts can own other accounts, although Trusts are the only type of account we've found so far that actually does this. The Account view is automatically setup when you import your data from the custodians.

The *Portfolio* view (Household-Portfolio-Position) represents your firm's treatment and structure of the client data. This is the view you will use for reporting, modeling/rebalancing and (probably) billing. The front-office team, management, and your clients will use this view. The portfolio object is multi-dimensional, meaning Portfolios may own other Portfolios. This must be created manually by your operations team, but won't need to be changed unless new accounts are opened for your client. You can map account positions into Portfolios at the individual asset/position or account levels.

The tricky part of this wasn't mapping out two separate views. It was creating a denormalized link from the bottom leaf (Positions) up to the upper leaves (Households/Clients/Positions/Accounts) so that current values and positions can be displayed in real time on screens and lists. It became obvious through the process, that the Transaction concept should be used to describe *all* relationships between the various entities. This led naturally to an extremely cool concept that will be pervasive throughout FinFolio--time sensitivity.

**Example 1 - Time Sensitive Ownership**

Say I open an account at Schwab at the beginning of April, and purchase 100 shares of Microsoft within that account. The data structure looks like this:

*Matt (owns 100% on 4/1 of) Schwab Account (owns 100 shares on 4/1 of) MSFT.*

The ownership position into Microsoft and my "ownership" position in the Schwab Account itself are both established through Transactions, which are time sensitive. If I add my wife as a joint account holder next month, then she will be added through an account ownership transaction on 5/1, which keeps intact the integrity of the ownership progression. Matt's data structure will then look like this:

*Matt (owns 100% on 4/1 of) Schwab Account (owns 100 shares on 4/1 of) MSFT.  
Matt (owns 50% on 5/1 of) Schwab Account (owns 100 shares on 4/1 of) MSFT.*

If I print a list of Matt's accounts on 4/1, the report will list the entire value of my Schwab account. If I print the same list on 5/1, it will only attribute to me half the value of my Schwab account. The same "time sensitive transaction" concept will be applied to households and portfolios, allowing you to tweak your ownership structures from quarter to quarter, without changing how historical reports look.

We haven't started on modeling/rebalancing yet, but we will run target models through the same ownership structure, eliminating the problem of mid-period model changes and tweaking target class percentages within the model.

**Example 2 - Separate Accounts (or Multiple Accounts Into One Portfolio)**

John Smith has a corporate account, and a Morgan Stanley separate account composed of three sub-accounts custodied at Morgan Stanley. His wife also has a Fidelity Individual Account.

**Account View**

Client: Smith Consulting  
+ Account - Smith Consulting Fidelity Business Account  
Client: John Smith  
+ Account - John Smith Morgan Stanley Aggressive  
+ Account - John Smith Morgan Stanley Moderate  
+ Account - John Smith Morgan Stanley Savings  
+ Account - John Smith IRA  
Client: Sally Smith  
+ Account - Sally Smith Fidelity Individual

**Portfolio View**

Household: John and Sally Smith  
+ Portfolio: Business  
+ Fidelity Business Account  
+ Portfolio: Growth  
+ Portfolio: Morgan Stanley Separate Account  
+ John Smith Morgan Stanley Aggressive  
+ John Smith Morgan Stanley Moderate  
+ John Smith Morgan Stanley Savings  
+ Sally Smith Fidelity Individual

When you download separate accounts (or annuities), you don't get a master account downloaded. So you don't have anything on your system to tie your separate accounts together and separate them from your Individual or IRA accounts. You can set up a multi-tiered portfolio structure with a master portfolio to hold the accounts. Then you can insert the separate account portfolio into yet another parent portfolio (Portfolio: Growth). Alternately, you could simply list the subaccounts without grouping them under a master account.

Like this:

+ Portfolio: Growth  
+ John Smith Morgan Stanley Aggressive  
+ John Smith Morgan Stanley Moderate  
+ John Smith Morgan Stanley Savings  
+ Sally Smith Fidelity Individual

**Example 3 - One Account Into Multiple Portfolios**

Karl Client has one Individual account. You want to treat this as two portfolios, one that you manage and one that you invest in high-risk technology stocks.

**Account View**

Client: Karl Client  
+ Account - Karl Client Individual

**Portfolio View**

Household - Karl Client  
+ Portfolio: Managed (Rebalance Model: Balanced 1)  
+ American Funds Growth  
+ American Funds International  
+ American Funds Fixed Income  
+ Portfolio: High-Risk (Rebalance Model: None)  
+ Google  
+ Microsoft

You attach a rebalancing model to the Managed portfolio but not to the High-risk portfolio, which is traded periodically at your whim. You can treat the client's assets as two separate portfolios even though they are located in the same legal account.

**Example 4 - Account Transfers**

Ira Investor has a Fidelity IRA which was closed and transferred to Schwab.

**Account View**

Client: Ira Investor  
+ Account - Ira Investor Fidelity IRA (closed)  
+ Account - Ira Investor Schwab IRA

**Portfolio View**

Household: Ira Investor  
+ Portfolio: Retirement  
+ Ira Investor Fidelity IRA (closed)  
+ Ira Investor Schwab IRA

The Fidelity IRA was closed and transferred to Schwab. There is a transfer out in the Fidelity account and multiple transfer ins into the Schwab account, one for each open tax lot. In most systems, you would report each account separately in the quarter the transfer occurred. The rates of return and account history wouldn't carry over to the new account. With FinFolio, you map both IRAs into the same portfolio so, when you report on the portfolio, there appears to be no break in the data or calculation numbers. Only on the transaction ledger report would you see the transfer transactions. Because we are abstracting the reporting view away from the real-world custodian, it appears is as if there was no transfer.

**Example 5 - Holding Corporation**

You have a client, Joe, who manages certain investments through a holding corporation owned jointly with his brother. You set the holding corporation up separately and establish an ownership position into it by purchasing shares in the holding corporation for Joe. The holding corporation is valued periodically, when Joe (or you) declare a price. This price is not automatically calculated from the underlying stocks within the corporation because, like all other corporations, the holding corp is worth more than the sum of its parts.

**Account View**

Client: Joe  
+ Account - Schwab IRA  
+ Account - Fidelity Individual  
+ Direct Ownership - Holding Corporation  
Client: Holding Corporation  
+ Account - Schwab Corporate Account  
+ Account - Fidelity Corporate Account

**Portfolio View**

Household: Joe  
+ Portfolio: Retirement  
+ Account - Schwab IRA  
+ Portfolio: Investment  
+ Account - Fidelity Individual  
+ Account - Schwab Corporate Account  
+ Account - Fidelity Corporate Account

For reporting purposes, you create a Retirement and Investment portfolio. Joe wants to see all the underlying investments from his holding corp in the Investment portfolio, so you add them individually into his Investment account. This will cause their direct values to show up on the reports instead of the periodic valuation struck at the Holding Corporation level as a price.

An alternative way to set up Joe's portfolios is this:

Household: Joe  
+ Portfolio: Retirement  
+ Account - Schwab IRA  
+ Portfolio: Investment  
+ Account - Fidelity Individual  
+ Account - Holding Corporation

This is more technically correct and will only show Joe's ownership position in the Holding Corp, using whatever price was struck at the end of the period. It will not show the accounts/securities that are within the holding corp.

Topics: [Development](https://www.finfolio.com/blog/topic/development)

- [Tweet](https://twitter.com/share)

### About FinFolio

FinFolio makes portfolio management software for investment advisors. We have embraced an expanded definition of portfolio management that includes reporting, rebalancing, trading, billing, a mobile-ready client portal and all other elements of your back office, integrated into a single portfolio management software suite.

### Subscribe to Email Updates

### Recent Posts

### Posts by Topic

- [Development (22)](https://www.finfolio.com/blog/topic/development)
- [Integration (6)](https://www.finfolio.com/blog/topic/integration)
- [Product (6)](https://www.finfolio.com/blog/topic/product)
- [Hiring (2)](https://www.finfolio.com/blog/topic/hiring)
- [13F (1)](https://www.finfolio.com/blog/topic/13f)
- [Automation (1)](https://www.finfolio.com/blog/topic/automation)
- [XML (1)](https://www.finfolio.com/blog/topic/xml)

[see all](https://www.finfolio.com/blog/milestone-account/portfolio-views#)

### Blog Archive

- [April 2008 (3)](https://www.finfolio.com/blog/archive/2008/04)
- [February 2008 (2)](https://www.finfolio.com/blog/archive/2008/02)
- [June 2008 (2)](https://www.finfolio.com/blog/archive/2008/06)
- [July 2008 (2)](https://www.finfolio.com/blog/archive/2008/07)
- [September 2015 (2)](https://www.finfolio.com/blog/archive/2015/09)
- [September 2017 (2)](https://www.finfolio.com/blog/archive/2017/09)
- [January 2008 (1)](https://www.finfolio.com/blog/archive/2008/01)
- [May 2008 (1)](https://www.finfolio.com/blog/archive/2008/05)
- [July 2014 (1)](https://www.finfolio.com/blog/archive/2014/07)
- [June 2015 (1)](https://www.finfolio.com/blog/archive/2015/06)
- [August 2015 (1)](https://www.finfolio.com/blog/archive/2015/08)
- [December 2015 (1)](https://www.finfolio.com/blog/archive/2015/12)
- [January 2016 (1)](https://www.finfolio.com/blog/archive/2016/01)
- [July 2016 (1)](https://www.finfolio.com/blog/archive/2016/07)
- [February 2017 (1)](https://www.finfolio.com/blog/archive/2017/02)
- [June 2017 (1)](https://www.finfolio.com/blog/archive/2017/06)
- [July 2017 (1)](https://www.finfolio.com/blog/archive/2017/07)
- [October 2017 (1)](https://www.finfolio.com/blog/archive/2017/10)
- [July 2018 (1)](https://www.finfolio.com/blog/archive/2018/07)
- [February 2019 (1)](https://www.finfolio.com/blog/archive/2019/02)
- [March 2019 (1)](https://www.finfolio.com/blog/archive/2019/03)
- [January 2021 (1)](https://www.finfolio.com/blog/archive/2021/01)
- [February 2022 (1)](https://www.finfolio.com/blog/archive/2022/02)
- [March 2022 (1)](https://www.finfolio.com/blog/archive/2022/03)
- [April 2022 (1)](https://www.finfolio.com/blog/archive/2022/04)
- [May 2022 (1)](https://www.finfolio.com/blog/archive/2022/05)
- [August 2022 (1)](https://www.finfolio.com/blog/archive/2022/08)
- [July 2023 (1)](https://www.finfolio.com/blog/archive/2023/07)
- [September 2023 (1)](https://www.finfolio.com/blog/archive/2023/09)
- [April 2024 (1)](https://www.finfolio.com/blog/archive/2024/04)

[see all](https://www.finfolio.com/blog/milestone-account/portfolio-views#)

Wealth management simplified

[![Schedule Demo](https://hubspot-no-cache-na2-prod.s3.amazonaws.com/cta/default/543464/b9de1cd2-9563-40b3-891a-8c0f098fbf48.png)](https://hubspot-cta-redirect-na2-prod.s3.amazonaws.com/cta/redirect/543464/b9de1cd2-9563-40b3-891a-8c0f098fbf48)

### About FinFolio

FinFolio​ makes **portfolio management software** for investment advisors and professional wealth managers.  
 

### Connect With Us

<http://finfolio.hs-sites.com/blog/rss.xml><https://twitter.com/FinFolio>

### From Our Blog

### Get Updates

### Contact

FinFolio  
3000 Lawrence Street, Suite 6  
Denver, CO 80205  
[(720) 206-0660](tel://720-206-0660)  
[sales@finfolio.com](mailto:sales@finfolio.com)

[PRIVACY](https://docs.google.com/document/d/1Ddfo2Qo0Fej5n5PdUtAKdqeTMNvSDhIUZfVTwYiRLNU/edit?usp=sharing)