Created
June 15, 2015 14:13
-
-
Save StuartGordonReid/f01f479c783dd40cc21e to your computer and use it in GitHub Desktop.
Model Parameters Class
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class ModelParameters: | |
""" | |
Encapsulates model parameters | |
""" | |
def __init__(self, | |
all_s0, all_time, all_delta, all_sigma, gbm_mu, | |
jumps_lamda=0.0, jumps_sigma=0.0, jumps_mu=0.0, | |
cir_a=0.0, cir_mu=0.0, all_r0=0.0, cir_rho=0.0, | |
ou_a=0.0, ou_mu=0.0, | |
heston_a=0.0, heston_mu=0.0, heston_vol0=0.0): | |
# This is the starting asset value | |
self.all_s0 = all_s0 | |
# This is the amount of time to simulate for | |
self.all_time = all_time | |
# This is the delta, the rate of time e.g. 1/252 = daily, 1/12 = monthly | |
self.all_delta = all_delta | |
# This is the volatility of the stochastic processes | |
self.all_sigma = all_sigma | |
# This is the annual drift factor for geometric brownian motion | |
self.gbm_mu = gbm_mu | |
# This is the probability of a jump happening at each point in time | |
self.lamda = jumps_lamda | |
# This is the volatility of the jump size | |
self.jumps_sigma = jumps_sigma | |
# This is the average jump size | |
self.jumps_mu = jumps_mu | |
# This is the rate of mean reversion for Cox Ingersoll Ross | |
self.cir_a = cir_a | |
# This is the long run average interest rate for Cox Ingersoll Ross | |
self.cir_mu = cir_mu | |
# This is the starting interest rate value | |
self.all_r0 = all_r0 | |
# This is the correlation between the wiener processes of the Heston model | |
self.cir_rho = cir_rho | |
# This is the rate of mean reversion for Ornstein Uhlenbeck | |
self.ou_a = ou_a | |
# This is the long run average interest rate for Ornstein Uhlenbeck | |
self.ou_mu = ou_mu | |
# This is the rate of mean reversion for volatility in the Heston model | |
self.heston_a = heston_a | |
# This is the long run average volatility for the Heston model | |
self.heston_mu = heston_mu | |
# This is the starting volatility value for the Heston model | |
self.heston_vol0 = heston_vol0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment