Portfolio
Table of Contents
Description
Financial meaning
Portfolio refers to a collection of financial assets. Portfolios are held directly by investors and/or managed by financial professionals. Effective portfolio management involves diversification, asset allocation, and regular performance monitoring to optimize returns and manage risks.
Platform abstraction
Portfolio in Finmars platform is a container for financial assets (cash (currency) & instruments) allocation. Portfolio also is used in:
- performance calculation with its registers grouped in bundles
- portfolio as a fund
- reconciliation using special portfolio type and portfolio reconcile group.
Examples
User code | Portfolio Type | Name | Short name | Public name | Notes | First Transaction Date | First Cash Flow Date | Accounts | Transaction types | Responsibles | Counterparties |
obl01 |
Manual | Bonds | Bonds | Bonds | - | 2022-12-01 | 2022-12-01 |
User code
: workspace unique identifier of the portfolio with source prefix as it's multi-source entityPortfolio Type
: configuration-defined criterion for reconciliationName
: full nameShort name
: short name, showed in other relationsPublic name
: public view name for users without accessNotes
: custom description for portfolioFirst Transaction Date
: date of the first transaction in the portfolio (changes by the logic described below)First Cash Flow Date
: date of the first transaction in the portfolio for base transaction class == Cash-Inflow or Cash-Outflow (changes by the logic described below)Accounts
: (not strict, informative) selected accounts that can be used for this portfolioTransaction types
: (not strict, informative)selected transaction types that can be used for this portfolioResponsibles
: (not strict, informative)selected responsibles that can be used for this portfolioCounterparties
: (not strict, informative)selected counterparties that can be used for this portfolio
Portfolio has 2 attributes First Transaction Date
and First Cash Flow Date
which are used for performance calculations with workflow and performance report and the logic for them is defined below:
Logic for defining First Transaction Date & First Cash Flow Date based on complex transactions:
-
Portfolio entity has 2 properties:
-
first_transcation_date (name = First transaction date, value = null)
-
first_cash_flow_date (name = First cash flow date, value = null)
-
-
For complex transaction CRUD operations For each base transaction in the complex transaction:
-
if Book
-
if base transaction class == Cash-Inflow or Cash-Outflow
-
if trade_date < first_cash_flow_date
-
first_cash_flow_date = trade_date
-
-
-
if trade_date < first_transcation_date
-
first_transcation_date = trade_date
-
-
-
if Rebook !!!
-
if base transaction class == Cash-Inflow or Cash-Outflow
-
if new trade_date < first_cash_flow_date
-
first_cash_flow_date = trade_date
-
-
else
-
if old trade_date == first_cash_flow_date
-
first_cash_flow_date = find new first_cash_flow_date
-
-
-
-
if new trade_date < first_transcation_date
-
first_transcation_date = trade_date
-
-
else
-
if old trade_date == first_transcation_date
-
first_transcation_date = find new first_transcation_date
-
-
-
-
if Delete
-
if base transaction class == Cash-Inflow or Cash-Outflow
-
if trade_date == first_cash_flow_date
-
if true first_cash_flow_date = find new first_cash_flow_date
-
-
-
if trade_date == first_transcation_date
-
if true first_transcation_date = find new first_transcation_date
-
-
-
Cookbook
CRUD
Operations within platform.
Use Cases
What for it's used.
F.A.Q.
Frequently asked questions.
API documentation
Link to API documentation.