Vision Portfolio Management Application Classes

Overview

The core Vision system comes with a set of classes already defined. These classes include an initial set of methods which can be modified and extended by the user. Vision's built-in class hierarchy is discussed in detail in the general Vision documentation. The Portfolio Management Application Layer defines classes, protocol, and starter applications that address the needs of the portfolio management function. This layer is entirely implemented using the Vision language. You can therefore modify, extend, and reorganize the structures to meet the specific needs of your organization.

The Portfolio Management Application Layer includes the following classes:

  Object
     |
     DataRecord
     |  |
     |  |-- DivRecord
     |  |
     |  |-- PriceRecord
     |
     Entity
     |  |
     |  |-- Account
     |  |      |
     |  |      |-- AggAccount
     |  |      |
     |  |      |-- CompositeAccount
     |  |      |
     |  |      |-- IndexAccount
     |  |      |
     |  |      |-- Portfolio
     |  |
     |  |-- Classification
     |  |      |
     |  |      |-- AssetCategory
     |  |      |
     |  |      |-- Country
     |  |      |
     |  |      |-- Industry
     |  |      |
     |  |      |-- Sector
     |  |      |
     |  |      |-- SecurityType
     |  |
     |  |-- Company
     |  |
     |  |-- Currency
     |  |
     |  |-- Security
     |  |
     |  |-- Universe
     |
     LinkRecord
        |
        |-- CompositeAccount Component
        |
        |-- Holding

A number of optional classes are provided as part of the Portfolio Management Application Layer. These classes can be installed as is or modified as needed, depending on your requirements. Many of the Headstart Applications use data defined for these classes. Optional classes include:

  Object
     |
     DataRecord
     |  |
     |  |-- AnalystEstimate
     |  |
     |  |-- EconomicData
     |  |
     |  |-- FundamentalData
     |         |
     |         |-- FundamentalDataA
     |         |
     |         |-- FundamentalDataM
     |         |
     |         |-- FundamentalDataQ
     |
     Entity
        |
        |-- Analyst
        |
        |-- Classification
        |
        |-- RangeClassification
              |
              |--  MCapGroup
              |
              |--  PBGroup
              |
              |--  PEGroup


The Company Class

The instances of the class Company represent the individual corporate entities for which you track information. Information maintained for a company typically includes country, industry, and fundamental data such as sales and earnings.

The document, The Company and Security Classes, describes the class Company and related classes.


The Security Class

The instances of the class Security represent the individual securities issued by a corporation, government, or other entity. A variety of security types exist including common and preferred stock, convertible and non-convertible bonds, and options. A company may issue one or more securities. A security is associated with no more than one company. Data maintained for a security typically includes price, dividend, and shares or amount outstanding information. Accounts hold specific amounts of one or more individual securities.

The document, The Company and Security Classes, describes the class Security and related classes.


The PriceRecord and DivRecord Classes

The classes PriceRecord and DivRecord are used to store pricing and dividend information over time. Price and dividend records are normally accessed via messages defined at Security. Data maintained in a price record includes the trading volume and the high, low, and closing prices. Data maintained in a dividend record includes the dividend amount and the payment date.

The document, The Company and Security Classes, describes these classes in more details.


The Account Class

The class Account is a super class of the classes Portfolio, AggAccount, IndexAccount, and CompositeAccount. A Portfolio is defined as an account whose holdings are created via a feed from an internal portfolio accounting system. An AggAccount is defined as an account whose holdings are created by combining the holdings for a list of component portfolios. An IndexAccount is defined as an account whose holdings are created starting with a universe of securities. A CompositeAccount is defined as an account whose holdings are created as a weighted combination of other accounts.

The document, The Account Classes, describes the class Account and related classes.


The Holding Class

The class Holding is used to represent a specific security held in an account as of a specific point in time. Holdings are rarely referenced directly. Instead they are accessed via a particular security or account. Data maintained for a holding typically includes shares held and total market value.

The document, The Account Classes, describes the Holding class.


General Application Classes

All Vision installations include a basic hierarchy of classes defined for organizing application classes. These abstract classes include:

  • Entity
  • DataRecord
  • LinkRecord
  • Bridge
  • DataFeed
  • DBEntity

Most applications will interact with the database via Entity instances. The other classes are used to store data or manage navigations from an entity to other parts of the database. General application classes are described in more detail in the document Core Application Classes.

The classes Classification, Currency and Universe are Entity subclasses that are useful in a wide range of applications. These classes are included as a standard component of all Vision databases.

Related Topics