American-transaction costs 1.0.0.0
American option pricer under proportional transaction costs
|
Virtual base class for path-independent European and American options. More...
#include <treeproduct.h>
Public Member Functions | |
virtual coefficient | current_price (const PiecewiseLinear ¤t, const Portfolio &holdings=Portfolio(0, 0)) const =0 |
coefficient | expiry () const |
virtual PiecewiseLinear | final_hedge (const Spot &spot) const =0 |
virtual PiecewiseLinear | interim_hedge (const coefficient t, const Spot &spot, const PiecewiseLinear &future_hedge) const =0 |
Portfolio | next_portfolio (const coefficient t, const Spot &spot, const PiecewiseLinear &future_hedge, const Portfolio ¤t_portfolio) const |
TreeProduct (const coefficient expiry) |
Virtual base class for path-independent European and American options.
TreeProduct::TreeProduct | ( | const coefficient | expiry | ) | [inline] |
virtual coefficient TreeProduct::current_price | ( | const PiecewiseLinear & | current, |
const Portfolio & | holdings = Portfolio(0, 0) |
||
) | const [pure virtual] |
Computes current price of option, given the holdings of the investor
current | Lower boundary of set of hedging portfolios |
holdings | Current holdings of investor |
Implemented in TreeProductAmericanBuyer, TreeProductAmericanSeller, TreeProductEuropeanBuyer, and TreeProductEuropeanSeller.
coefficient TreeProduct::expiry | ( | ) | const [inline] |
Expiry time.
virtual PiecewiseLinear TreeProduct::final_hedge | ( | const Spot & | spot | ) | const [pure virtual] |
Finds set of portfolios that hedges the option at its expiry time.
spot | Price of underlying asset |
Implemented in TreeProductAmericanBuyer, TreeProductAmericanBuyerOptional, TreeProductAmericanSeller, TreeProductAmericanSellerOptional, TreeProductEuropeanBuyerOptional, TreeProductEuropeanSeller, and TreeProductEuropeanSellerOptional.
virtual PiecewiseLinear TreeProduct::interim_hedge | ( | const coefficient | t, |
const Spot & | spot, | ||
const PiecewiseLinear & | future_hedge | ||
) | const [pure virtual] |
Finds set of portfolios that hedges the payoff of the option at time t and in the future
t | Time |
spot | Price of underlying asset |
future_hedge | Piecewise linear function whose epigraph consist of portfolios that hedge the option at all future time steps |
Implemented in TreeProductAmericanBuyer, TreeProductAmericanSeller, and TreeProductEuropean.
Portfolio TreeProduct::next_portfolio | ( | const coefficient | t, |
const Spot & | spot, | ||
const PiecewiseLinear & | future_hedge, | ||
const Portfolio & | current_portfolio | ||
) | const [inline] |
Given a portfolio that hedges at the current time, computes a portfolio into which the trader can enter that hedges at all future times
t | Time |
spot | Price of underlying asset |
future_hedge | Piecewise linear function whose epigraph consist of portfolios that hedge the option at all future time steps |
current_portfolio | Current portfolio. Must correspond to a point in the epigraph of interim_hedge(t, spot, future_hedge) (this is not checked). |