Main Page | Namespace List | Class Hierarchy | Class List | File List | Class Members | File Members

Portfolio Class Reference

#include <PortFolio.h>

List of all members.

Public Member Functions

 Portfolio (char *name, Currency currency)
 Default Constructor : just initialization of size.

 ~Portfolio (void)
char * getName ()
 Return name of the portfolio.

Currency getCurrency ()
 Return currency of the portfolio.

char * getCurrencyAsString ()
 Return currency of the portfolio as a string.

void addOptionStrategy (OptionStrategy *optionStrategy)
 Add one option to the Portfolio.

void addRainbowOption (RainbowOption *rainbowOption, Real quantity)
 Add one rainbow option to the Portfolio.

void addExoticOption (Exotics *exoticOption, Real quantity)
 Add one exotic option to the Portfolio.

void addVanillaSwap (VanillaSwap *vanillaSwap, Real quantity)
 Add one vanilla swap to the Portfolio.

void addVarianceSwap (VarianceSwap *varSwap, Real quantity)
 Add one variance swap to the Portfolio.

void addBond (bond *oneBond, Real quantity)
 Add one bond to the Portfolio.

void addAsset (asset *oneAsset, Real quantity)
 Add one asset to the Portfolio.

Real getPrice ()
 Return Price of the whole Portfolio.

Real returnSensibilityToRate ()
 Return sensibility to interest rate.

Real returnSensibilityToVol ()
 Return sensibility to volatility.

Real returnSensibilityToTime ()
 Return sensibility to time.


Private Attributes

char * _name
Currency _currency
OptionStrategy _optionStrategy
valarray< RainbowOption * > _rainbowOptions
valarray< Exotics * > _exoticsOptions
valarray< VanillaSwap * > _vanSwaps
valarray< VarianceSwap * > _varSwaps
valarray< bond * > _bonds
valarray< asset * > _assets
valarray< Real_quantityRainbowOptions
valarray< Real_quantityExoticsOptions
valarray< Real_quantityVanSwaps
valarray< Real_quantityVarSwaps
valarray< Real_quantityBonds
valarray< Real_quantityAssets
Natural _nbRainbowOptions
Natural _nbExoticsOptions
Natural _nbVanSwaps
Natural _nbVarSwaps
Natural _nbBonds
Natural _nbAssets


Detailed Description

Author:
Simon

Definition at line 24 of file PortFolio.h.


Constructor & Destructor Documentation

Portfolio::Portfolio char *  name,
Currency  currency
 

Default Constructor : just initialization of size.

Parameters:
name: Name of the portfolio
currency: Currency of the portfolio

Definition at line 3 of file PortFolio.cpp.

References _assets, _bonds, _nbAssets, _nbBonds, _nbRainbowOptions, _nbVanSwaps, _nbVarSwaps, _optionStrategy, _rainbowOptions, _vanSwaps, _varSwaps, MAX_SIZE, and MAX_SIZE_NAME.

Portfolio::~Portfolio void   ) 
 

Definition at line 21 of file PortFolio.cpp.


Member Function Documentation

void Portfolio::addAsset asset oneAsset,
Real  quantity
 

Add one asset to the Portfolio.

Definition at line 85 of file PortFolio.cpp.

References _assets, _nbAssets, _quantityAssets, and Real.

void Portfolio::addBond bond oneBond,
Real  quantity
 

Add one bond to the Portfolio.

Definition at line 79 of file PortFolio.cpp.

References _bonds, _nbBonds, _quantityBonds, and Real.

void Portfolio::addExoticOption Exotics exoticOption,
Real  quantity
 

Add one exotic option to the Portfolio.

Definition at line 61 of file PortFolio.cpp.

References _exoticsOptions, _nbExoticsOptions, _quantityExoticsOptions, and Real.

void Portfolio::addOptionStrategy OptionStrategy optionStrategy  ) 
 

Add one option to the Portfolio.

Definition at line 51 of file PortFolio.cpp.

References _optionStrategy.

void Portfolio::addRainbowOption RainbowOption rainbowOption,
Real  quantity
 

Add one rainbow option to the Portfolio.

Definition at line 55 of file PortFolio.cpp.

References _nbRainbowOptions, _quantityRainbowOptions, _rainbowOptions, and Real.

void Portfolio::addVanillaSwap VanillaSwap vanillaSwap,
Real  quantity
 

Add one vanilla swap to the Portfolio.

Definition at line 67 of file PortFolio.cpp.

References _nbVanSwaps, _quantityVanSwaps, _vanSwaps, and Real.

void Portfolio::addVarianceSwap VarianceSwap varSwap,
Real  quantity
 

Add one variance swap to the Portfolio.

Definition at line 73 of file PortFolio.cpp.

References _nbVarSwaps, _quantityVarSwaps, _varSwaps, and Real.

Currency Portfolio::getCurrency  ) 
 

Return currency of the portfolio.

Definition at line 29 of file PortFolio.cpp.

References Currency.

char * Portfolio::getCurrencyAsString  ) 
 

Return currency of the portfolio as a string.

Definition at line 33 of file PortFolio.cpp.

References CAD, EUR, MAX_SIZE_NAME, and USD.

char * Portfolio::getName  ) 
 

Return name of the portfolio.

Definition at line 25 of file PortFolio.cpp.

Real Portfolio::getPrice  ) 
 

Return Price of the whole Portfolio.

Definition at line 91 of file PortFolio.cpp.

References _assets, _bonds, _exoticsOptions, _nbAssets, _nbBonds, _nbExoticsOptions, _nbRainbowOptions, _nbVanSwaps, _nbVarSwaps, _optionStrategy, _rainbowOptions, _vanSwaps, _varSwaps, Integer, Real, and OptionStrategy::returnPrice().

Real Portfolio::returnSensibilityToRate  ) 
 

Return sensibility to interest rate.

Definition at line 115 of file PortFolio.cpp.

References _assets, _bonds, _exoticsOptions, _nbAssets, _nbBonds, _nbExoticsOptions, _nbRainbowOptions, _nbVanSwaps, _nbVarSwaps, _optionStrategy, _rainbowOptions, _vanSwaps, _varSwaps, OptionStrategy::getGlobalRho(), Integer, and Real.

Real Portfolio::returnSensibilityToTime  ) 
 

Return sensibility to time.

Definition at line 154 of file PortFolio.cpp.

References _exoticsOptions, _nbExoticsOptions, _nbRainbowOptions, _nbVanSwaps, _nbVarSwaps, _optionStrategy, _rainbowOptions, _vanSwaps, _varSwaps, OptionStrategy::getGlobalTheta(), Integer, and Real.

Real Portfolio::returnSensibilityToVol  ) 
 

Return sensibility to volatility.

Definition at line 139 of file PortFolio.cpp.

References _exoticsOptions, _nbExoticsOptions, _nbRainbowOptions, _nbVarSwaps, _optionStrategy, _rainbowOptions, _varSwaps, OptionStrategy::getGlobalVega(), Integer, and Real.


Member Data Documentation

valarray<asset*> Portfolio::_assets [private]
 

Definition at line 88 of file PortFolio.h.

Referenced by addAsset(), getPrice(), Portfolio(), and returnSensibilityToRate().

valarray<bond*> Portfolio::_bonds [private]
 

Definition at line 87 of file PortFolio.h.

Referenced by addBond(), getPrice(), Portfolio(), and returnSensibilityToRate().

Currency Portfolio::_currency [private]
 

Definition at line 80 of file PortFolio.h.

valarray<Exotics*> Portfolio::_exoticsOptions [private]
 

Definition at line 84 of file PortFolio.h.

Referenced by addExoticOption(), getPrice(), returnSensibilityToRate(), returnSensibilityToTime(), and returnSensibilityToVol().

char* Portfolio::_name [private]
 

Definition at line 79 of file PortFolio.h.

Natural Portfolio::_nbAssets [private]
 

Definition at line 102 of file PortFolio.h.

Referenced by addAsset(), getPrice(), Portfolio(), and returnSensibilityToRate().

Natural Portfolio::_nbBonds [private]
 

Definition at line 101 of file PortFolio.h.

Referenced by addBond(), getPrice(), Portfolio(), and returnSensibilityToRate().

Natural Portfolio::_nbExoticsOptions [private]
 

Definition at line 98 of file PortFolio.h.

Referenced by addExoticOption(), getPrice(), returnSensibilityToRate(), returnSensibilityToTime(), and returnSensibilityToVol().

Natural Portfolio::_nbRainbowOptions [private]
 

Definition at line 97 of file PortFolio.h.

Referenced by addRainbowOption(), getPrice(), Portfolio(), returnSensibilityToRate(), returnSensibilityToTime(), and returnSensibilityToVol().

Natural Portfolio::_nbVanSwaps [private]
 

Definition at line 99 of file PortFolio.h.

Referenced by addVanillaSwap(), getPrice(), Portfolio(), returnSensibilityToRate(), and returnSensibilityToTime().

Natural Portfolio::_nbVarSwaps [private]
 

Definition at line 100 of file PortFolio.h.

Referenced by addVarianceSwap(), getPrice(), Portfolio(), returnSensibilityToRate(), returnSensibilityToTime(), and returnSensibilityToVol().

OptionStrategy Portfolio::_optionStrategy [private]
 

Definition at line 82 of file PortFolio.h.

Referenced by addOptionStrategy(), getPrice(), Portfolio(), returnSensibilityToRate(), returnSensibilityToTime(), and returnSensibilityToVol().

valarray<Real> Portfolio::_quantityAssets [private]
 

Definition at line 95 of file PortFolio.h.

Referenced by addAsset().

valarray<Real> Portfolio::_quantityBonds [private]
 

Definition at line 94 of file PortFolio.h.

Referenced by addBond().

valarray<Real> Portfolio::_quantityExoticsOptions [private]
 

Definition at line 91 of file PortFolio.h.

Referenced by addExoticOption().

valarray<Real> Portfolio::_quantityRainbowOptions [private]
 

Definition at line 90 of file PortFolio.h.

Referenced by addRainbowOption().

valarray<Real> Portfolio::_quantityVanSwaps [private]
 

Definition at line 92 of file PortFolio.h.

Referenced by addVanillaSwap().

valarray<Real> Portfolio::_quantityVarSwaps [private]
 

Definition at line 93 of file PortFolio.h.

Referenced by addVarianceSwap().

valarray<RainbowOption*> Portfolio::_rainbowOptions [private]
 

Definition at line 83 of file PortFolio.h.

Referenced by addRainbowOption(), getPrice(), Portfolio(), returnSensibilityToRate(), returnSensibilityToTime(), and returnSensibilityToVol().

valarray<VanillaSwap*> Portfolio::_vanSwaps [private]
 

Definition at line 85 of file PortFolio.h.

Referenced by addVanillaSwap(), getPrice(), Portfolio(), returnSensibilityToRate(), and returnSensibilityToTime().

valarray<VarianceSwap*> Portfolio::_varSwaps [private]
 

Definition at line 86 of file PortFolio.h.

Referenced by addVarianceSwap(), getPrice(), Portfolio(), returnSensibilityToRate(), returnSensibilityToTime(), and returnSensibilityToVol().


The documentation for this class was generated from the following files:
Note: Generated nightly - reload for latest version
Generated on Thu Dec 22 23:12:40 2005 for terreneuve by doxygen 1.3.6