Performance Module:Fund Module

From ExtractValue Wiki

Jump to: navigation, search

The Fund Module of the Performance Module relates to functions applicable to pooled investments, including mutual funds, hedge funds, CPOs and others.

Contents

Inputs & Outputs

Product, Order, and Portfolio

Description Value Type Technical Name Product Input Product Output Portfolio Input Portfolio Output Order Input Order Output
Inception Date Date/time inception_time X X
Beginning Value Currency beginning_value X X
Initial outstanding shares Integer initial_outstanding_shares X X
Attributed user User X X
Account number Integer & Text user_fund_account_number X X
Total Invested Currency total_deposits X
Total Withdrawn Currency total_withdrawn X
Net Liquid Value Currency net_liquid_value X X
Net Liquid profit or loss Currency net_liquid_pl X X
Open position profit or loss Currency open_position_pl X X
Net Realized Value Currency net_realized_value X X
Net Realized profit or loss Currency net_realized_pl X X
Performance fee Percentage or Integer performance_fee X X
Management fee Percentage or Integer management_fee X X
Net fees Percentage or Integer net_fee X X
Fee assessment interval Daily, Monthly, Quarterly, Annually fee_assessment_interval X
Gross Liquid profit or loss Currency gross_liquid_pl X X
Gross Realized profit or loss Currency gross_realized_pl X X
Outstanding shares Currency outstanding_shares X X
Share value Currency share_value X X

Transactions

Description Value Type Technical Name
Addition or withdrawal Addition or Withdrawal addition_or_withdrawal
By value or by shares Value or Shares value_or_shares
Desired date of addition Date desired_date_of_addition
Desired shares to add Integer desired_shares_to_add
Desired value to add Currency desired_value_to_add

Calculations

Calculation of Share Value

  1. Failed to parse (Can't write to or create math temp directory): NetRealizedValue(t)=NetLiquidValue_t + OpenPositionPl
  1. Failed to parse (Can't write to or create math temp directory): OutstandingShares(t)=InitialOutstandingShares + \sum_{t=0}^{n \to \infty} DesiredSharestoAdd_t
  1. Failed to parse (Can't write to or create math temp directory): ShareValue(t)=NetRealizedValue_t / OutstandingShares_t


Calculation of Management Fee

  1. Failed to parse (Can't write to or create math temp directory): GrossRealizedValue(t) = GrossLiquidValue_t + OpenPositionPl
  1. Failed to parse (Can't write to or create math temp directory): ManagementFee(t-FeeAssessmentInterval \to t) = (GrossRealizedValue_t - GrossRealizedValue_{t-FeeAssessmentInterval}) * ManagementFee


Note: Must calculate fees for early withdrawals also

Calculation of Incentive Fee

Failed to parse (Can't write to or create math temp directory): IncentiveFee(t-FeeAssessmentInterval \to t) = (GrossRealizedValue_t - GrossRealizedValue_{t-FeeAssessmentInterval} - ManagementFee(t-FeeAssessmentInterval \to t))*IncentiveFee


Real World Example

  1. Admin inputs all the Order history for each User, from the initial Transaction (of opening an account and buying shares) to all subsequent Transactions.
    1. If all of the Users have up-to-date and correct information, a Failed to parse (Can't write to or create math temp directory): product_shares
should be accurate and complete.  Thus, outstanding shares is known.
  1. Admin updates Product performance fields. This may happen in irregular intervals, but generally this should happen daily. Thus, gross realized value is known.
  2. The share value is determined by Failed to parse (Can't write to or create math temp directory): share_value(product)=OutstandingShares(product)/GrossRealizedValue(product)
  1. Each Portfolio can have its performance calculated based on Failed to parse (Can't write to or create math temp directory): ShareValue(Portfolio)*OustandingShares(Portfolio)


Category Tree

Personal tools