corporate-governance-and-asset-pricing
This solves a nonlinear stochastic singular control problem related to corporate governance
https://github.com/arashfahim/corporate-governance-and-asset-pricing
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (5.9%) to scientific vocabulary
Repository
This solves a nonlinear stochastic singular control problem related to corporate governance
Basic Info
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
A finite regime singular control problem in infinite horizon
This program aims to solve the singular control problem below
$$\sup\mathbb{E}\Big[\int0^\tau e^{-rt}\big(\mu-\rho{It}-dPt\big)+e^{-r\tau}X_\tau\Big]$$
where $dXt=\gamma Xt -dPt + \theta{It}dBt$, and the supremum is over all nondecreasing adapted processes $Pt$, possibly singular, and all adapted processes $It$ taking values in a finite set $[N]:=\lbrace1,...,N\rbrace$. There are $N$ possible values for the pair $(\thetai,\rhoi)$ which are ordered by $0<\theta1<\cdots<\thetaN$ $\mu>\rho1>\cdots>\rhoN=0$. The loser the level of noise, $\thetai$, is, the higher $\rhoi$ is. $\rho_i$ are considered a cost associated to level $i$.
This problem arises in the optimal case of the agency problem with monitoring in theoretical economics. The principal obseves te process $X$ and have freedom to choose $\thetai$ for $i\in [N]$. The small $\thetai$ is, the higher the level of monitoring is. While monitoring level $\thetai$ is applied, the principal pays a running cost at rate $\rhoi$. In the problem $\thetai=\lambda\sigmai$, where $1-\lambda$ is a proportional cost of stealing from the company by the agent. The higher $\lambda$ is, the lower the agent benefits from stealing.
Process $P_t$ is the cumulative payment made by principal to the agent.
The code first solves the variational HJB
$$0=\min\Big(\infi\lbrace-\frac{\theta^2i}{2}V^{\prime\prime}-\rho_i\rbrace-\gamma x V^{\prime} + r V - \mu, V^{\prime} + 1\Big)$$
by turing it into a systm of nonlinear ODEs.
$$\begin{cases} V^{\prime}=U\ U^{\prime}= H^{-1}(\gamma x U - r V + \mu)\ V(0)=0\ U(0)= u_0 \end{cases}$$
where $H(\Gamma)=\infi\lbrace-\frac{\theta^2i}{2}\Gamma-\rhoi\rbrace$. Then, we determine triplet $(x0,x1,x2)$ such that $V(x0)=\mu/r-\gamma/r x0$, $U(x1)+1=0$, and $U^{\prime}(x2)=0$. By iterating over $u0$, we converge towrad achieving $x0=x1=x2$. Upon achieving this goal, $V$ is the solution to the variational HJB and $U$ and $U^\prime$ are its first and second derivatives of $V$.
In each iteration of the code, the nonlinear system of ODEs is solved by from scipy import integrate .
After finding $V$ and $V^{\prime\prime}$, the optimal contract is described as below:
- Optimal monitoring strategy: $I(x)=argmini \lbrace -\frac{\theta^2i}{2} V^{\prime\prime}(x)-\rhoi\rbrace $, and, therefore, $\theta(x)=\lambda\sigma{I(x)}$ and $\rho(x)=\rho_{I(x)}$
- Optimal payment: $Pt$ is the local time of $dXt=\gamma Xt + \theta(Xt)dBt$ at point $x0$, described by $V(x0)=\mu/r-\gamma/r x0$, $V^{\prime}(x0)+1=0$, and $V^{\prime\prime}(x0)=0$.
Implementation of the contract
To implement the contract, principal create a cash reserve given by $Mt=\frac{Xt}{\lambda}$ and transfers a $\lambda$ portion of ownership of the company to the agent by issuing a non-transferable security that pays dividend when $Mt$ hits $m0=\frac{x0}{\lambda}$ at rate equal to the local time $\lambda^{-1}Pt$.
The value of the principal as a function of $M_t$ is given by
$$f(m):=\mathbb{E}\Big[\int0^\tau e^{-rt}\big(\mu-\rho(Mt)-dP_t\big)\Big]$$
where $\rho(m)=\rho(\lambda m)$, $\sigma(m)=\sigma(\lambda m)$, and $dMt=\gamma Mt dt -\lambda^{-1}dPt + \sigma(Mt)dB_t$
Price of the asset of the company
The value of the security, issued by the principal is given by
$$S(m)=\lambda^{-1}\mathbb{E}\Big[\int0^\tau e^{-rt} dPt\Big]$$
and satisfies the ODE
$$\begin{cases} -\frac{\sigma^2(m)}{2}S^{\prime\prime}-\gamma m S^{\prime} + r S=0\ S(0)=0\ S^\prime(m_0)= 1 \end{cases}$$
Credit worthiness of the company
The credit worthiness of the company can be measured by
$$\mathbb{E}[e^{-r\tau} ]$$
The function $T(m)=\mathbb{E}\Big[\int_0^\tau e^{-rt} dt\Big]=r^{-1}(1-\mathbb{E}[e^{-r\tau}])$, measurng survival of the company, satisfiess the ODE
$$\begin{cases} -\frac{\sigma^2(m)}{2}T^{\prime\prime}-\gamma m T^{\prime} + r T -1=0\ T(0)=0\ T^\prime(m_0)= 0 \end{cases}$$
Monitoring cost
The cost of monitoring is measured by
$$C(m)=\mathbb{E}\Big[\int0^\tau e^{-rt} \rho(Mt) dt\Big]$$
$$\begin{cases} -\frac{\sigma^2(m)}{2}C^{\prime\prime}-\gamma m C^{\prime} + r C -\rho(m)=0\ C(0)=0\ C^\prime(m_0)= 0 \end{cases}$$
An identity
While the program solves each of the above functions separately, it also passes the verification step that the identity below holds true.
$$f(m)=\mu T(m) - C(m) -\lambda S(m)$$
Solving the boundary value problems for $S$, $T$, and $C$
We use the package from scipy.integrate import solve_bvp to solve the ODEs above. Note that the ODEs are are linear but with discontinuous coefficients.
How to run the program:
To run the file, you need to run main.py. A UI window appears and you choose up to 6 sets of parameters. Then, you must click on the 'Save Parameters' and close the UI window. Then, the program runs to solve the problems and show verbose at each step of the solution. Finally, it plots the solutions. Note that the PA_plot.myfigures allows for ploting many combined functions such as $\lambda S(m)$, or $C(m)+\lambda S(m)$.
Finally, tikzplotlib yields tikz files that can be plotted in $\LaTeX$.
Owner
- Login: arashfahim
- Kind: user
- Repositories: 1
- Profile: https://github.com/arashfahim
Citation (CITATION.cff)
cff-version: 0.0.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Fahim"
given-names: "Arash"
orcid: "https://orcid.org/0000-0001-8028-2471"
- family-names: "Gervais"
given-names: "Simon"
- family-names: "Krishna"
given-names: "Vijay R"
title: "Corporate Governance and Asset Pricing"
version: "0.0.0"
url: "https://github.com/arashfahim/Corporate-Governance-and-Asset-Pricing"
GitHub Events
Total
- Push event: 3
Last Year
- Push event: 3