What is a Security/Position/Account?
A Security is defined as an instrument/contract with a unique key (Cusip/CustID combination). We store one set of security information per day, per unique key. Intraday information will be overridden by later portfolio uploads or security refreshes with the same Cusip/CustID.
Cusip, Cust ID
201615DR9, 3200A
201615DR9, 3200B
201615DR9, 3300
Cusip, Cust ID
201615DR9,
201615DR9,
Figure 4 a valid sec master with 3 unique bonds
Figure 3 an Invalid sec master you will never see, note the duplicate security. These two securities are collapsed into one.
A Position is the amount you hold for each Security in an Account on a given date. For each day in a given account you can only have one position per bond. From a database’s point of view, a position is defined by an account (portkey), security (secid), amount (orig face) and position date (positiondate). So you can look at this as a list of your current day holdings of a security. We can also store this data at the lot level if you wish.
An Account is a group of Positions. Accounts are basic unit for access control and for setting up (calculations) jobs. For reporting purposes, an account is no different than any other attribute, from which you can group a report, or even create multi-level grouping.
Portfolio, Date, Cusip, Orig Face
ABC, 8/1/2012, 025932AB0, 1350000
ABC, 8/1/2012, 201615DR9, 3200000
Figure 1 shows 2 positions in account ABC on 8/1/2012