Cost of Capital Calculation Functions
Contents
Cost of Capital Calculation Functions¶
calcfunctions
ccc.calcfunctions¶
- ccc.calcfunctions.dbsl(Y, b, bonus, r)[source]¶
Makes the calculation for the declining balance with a switch to straight line (DBSL) method of depreciation.
\[z = \frac{\beta}{\beta+r}\left[1-e^{-(\beta+r)Y^{*}}\right]+ \frac{e^{-\beta Y^{*}}}{(Y-Y^{*})r} \left[e^{-rY^{*}}-e^{-rY}\right]\]- Parameters
Y (array_like) – asset life in years
b (array_like) – scale of declining balance (e.g., b=2 means double declining balance)
bonus (array_like) – rate of bonus depreciation
r (scalar) – discount rate
- Returns
- net present value of depreciation deductions for
$1 of investment
- Return type
z (array_like)
- ccc.calcfunctions.econ(delta, bonus, r, pi)[source]¶
Makes the calculation for the NPV of depreciation deductions using economic depreciation rates.
\[z = \frac{\delta}{(\delta + r - \pi)}\]- Parameters
delta (array_like) – rate of economic depreciation
bonus (array_like) – rate of bonus depreciation
r (scalar) – discount rate
pi (scalar) – inflation rate
- Returns
- net present value of depreciation deductions for
$1 of investment
- Return type
z (array_like)
- ccc.calcfunctions.eq_coc(delta, z, w, u, inv_tax_credit, pi, r)[source]¶
Compute the cost of capital
\[\rho = \frac{(r-\pi+\delta)}{1-u}(1-uz)+w-\delta\]- Parameters
delta (array_like) – rate of economic depreciation
z (array_like) – net present value of depreciation deductions for $1 of investment
w (scalar) – property tax rate
u (scalar) – statutory marginal tax rate for the first layer of income taxes
inv_tax_credit (scalar) – investment tax credit rate
pi (scalar) – inflation rate
r (scalar) – discount rate
- Returns
the cost of capital
- Return type
rho (array_like)
- ccc.calcfunctions.eq_coc_inventory(u, phi, Y_v, pi, r)[source]¶
Compute the cost of capital for inventories
\[\rho = \phi \rho_{FIFO} + (1-\phi)\rho_{LIFO}\]- Parameters
u (scalar) – statutory marginal tax rate for the first layer of income taxes
phi (scalar) – fraction of inventories that use FIFO accounting
Y_v (scalar) – average number of year inventories are held
pi (scalar) – inflation rate
r (scalar) – discount rate
- Returns
cost of capital for inventories
- Return type
rho (scalar)
- ccc.calcfunctions.eq_eatr(rho, metr, p, u)[source]¶
Compute the effective average tax rate (EATR).
\[eatr = \left(\frac{p - rho}{p}\right)u + \left(\frac{\rho}{p}\right)metr\]- Parameters
rho (array_like) – cost of capital
metr (array_like) – marginal effective tax rate
p (scalar) – profit rate
u (scalar) – statutory marginal tax rate for the first layer of income taxes
- Returns
EATR
- Return type
eatr (array_like)
- ccc.calcfunctions.eq_metr(rho, r_prime, pi)[source]¶
Compute the marginal effective tax rate (METR)
\[metr = \frac{\rho - (r^{'}-\pi)}{\rho}\]- Parameters
rho (array_like) – cost of capital
r_prime (array_like) – after-tax rate of return
pi (scalar) – inflation rate
- Returns
METR
- Return type
metr (array_like)
- ccc.calcfunctions.eq_mettr(rho, s)[source]¶
Compute the marginal effective total tax rate (METTR)
\[mettr = \frac{\rho - s}{\rho}\]- Parameters
rho (array_like) – cost of capital
s (array_like) – after-tax return on savings
- Returns
METTR
- Return type
mettr (array_like)
- ccc.calcfunctions.eq_tax_wedge(rho, s)[source]¶
Compute the tax wedge
\[wedge = \rho - s\]- Parameters
rho (array_like) – cost of capital
s (array_like) – after-tax return on savings
- Returns
tax wedge
- Return type
wedge (array_like)
- ccc.calcfunctions.eq_ucc(rho, delta)[source]¶
Compute the user cost of capital
\[ucc = \rho + \delta\]- Parameters
rho (array_like) – cost of capital
delta (array_like) – rate of economic depreciation
- Returns
the user cost of capital
- Return type
ucc (array_like)
- ccc.calcfunctions.npv_tax_depr(df, r, pi, land_expensing)[source]¶
Depending on the method of depreciation, makes calls to either the straight line or declining balance calculations.
- Parameters
df (Pandas DataFrame) – assets by type and tax treatment
r (scalar) – discount rate
pi (scalar) – inflation rate
land_expensing (scalar) – rate of expensing on land
- Returns
- NPV of depreciation deductions for all asset
types and tax treatments
- Return type
z (Pandas series)
- ccc.calcfunctions.sl(Y, bonus, r)[source]¶
Makes the calculation for straight line (SL) method of depreciation.
\[z = \frac{1 - e^{-rY}}{Yr}\]- Parameters
Y (array_like) – asset life in years
bonus (array_like) – rate of bonus depreciation
r (scalar) – discount rate
- Returns
- net present value of depreciation deductions for
$1 of investment
- Return type
z (array_like)
- ccc.calcfunctions.update_depr_methods(df, p, dp)[source]¶
Updates depreciation methods per changes from defaults that are specified by user.
- Parameters
df (Pandas DataFrame) – assets by type and tax treatment
p (CCC Specifications object) – CCC parameters
dp (CCC DepreciationParams object) – asset-specific depreciation parameters
- Returns
- assets by type and tax treatment with
updated tax depreciation methods
- Return type
df (Pandas DataFrame)