R中的日志返回模拟不会产生预期结果

R中的日志返回模拟不会产生预期结果,r,return,simulation,finance,R,Return,Simulation,Finance,我目前正在尝试模拟R中的对数回报,并计算简单投资的预期损益。我的代码正在运行,但我在理解为什么预期利润不等于: (exp(annual_mean * (holding_period/253)) * investment) - investment 在我的例子中等于5350。但是,运行以下模拟总会产生约5580的利润: investment <- 1000000 holding_period <- 45 annual_mean <- 0.03 annual_sd <- 0

我目前正在尝试模拟R中的对数回报,并计算简单投资的预期损益。我的代码正在运行,但我在理解为什么预期利润不等于:

(exp(annual_mean * (holding_period/253)) * investment) - investment
在我的例子中等于5350。但是,运行以下模拟总会产生约5580的利润:

investment <- 1000000
holding_period <- 45
annual_mean <- 0.03
annual_sd <- 0.05
simulations <- 1000000

  # Create Matrix for log-returns
  Paths <- matrix(data = NA, nrow = holding_period, ncol = simulations); 

  # feed matrix with log-returns
  for (k in 1:simulations) 
  {
  Returns <- rnorm(holding_period, mean = annual_mean/253, 
  sd = annual_sd/sqrt(253));
  Paths[, k] <- investment * exp(cumsum(Returns));
  }

  # calculate EPnL
  EPnL <- mean(Paths[holding_period, ] - investment);
  print(EPnL)

投资我认为问题在于你使用的是
累积收益
——你对待收益的态度就像是利率相加,而不是相乘/复合。如果您稍微更改代码并改用
cumprod
,它似乎给出了正确的结果

# feed matrix with log-returns
for (k in 1:simulations) 
{
Returns <- rnorm(holding_period, mean = annual_mean/253, sd = annual_sd/sqrt(253))
Returns <- 1 + Returns
Paths[, k] <- investment * cumprod(Returns)
}

# calculate EPnL
EPnL <- mean(Paths[holding_period, ] - investment)
print(EPnL)
#带有日志返回的馈送矩阵
用于(k/1:模拟)
{

返回值我认为问题在于您使用的是
cumsum
-您将返回值视为利率的累加而不是乘法/复合。如果您稍微更改代码并使用
cumprod
,它似乎给出了正确的结果

# feed matrix with log-returns
for (k in 1:simulations) 
{
Returns <- rnorm(holding_period, mean = annual_mean/253, sd = annual_sd/sqrt(253))
Returns <- 1 + Returns
Paths[, k] <- investment * cumprod(Returns)
}

# calculate EPnL
EPnL <- mean(Paths[holding_period, ] - investment)
print(EPnL)
#带有日志返回的馈送矩阵
用于(k/1:模拟)
{

收益我终于找到了这个问题的答案。我完全忽略了这样一个事实:我将正态分布的收益与初始投资相乘,然后不断复利。
当乘法使收益保持正态分布时,指数函数将随机变量变换为对数正态分布。因此平均值等于exp(μ+σ^2/2)μ和σ^2等于相关正态分布的平均值和标准偏差。

我终于找到了这个问题的答案。我完全忽略了一个事实,即我通过将正态分布回报与初始投资相乘并不断复利来转换正态分布回报。
当乘法使收益保持正态分布时,指数函数将随机变量变换为对数正态分布。因此平均值等于exp(μ+σ^2/2)μ和σ^2等于相关正态分布的平均值和标准偏差。

谢谢你,丹!我也在想,并且考虑到我在不断地复合这是绝对有意义的。但是你可能知道,我如何预测我用cumsum得到的值?因为我意识到我实际上在做什么ing是在模拟股票价格而不是回报,我的投资只是初始价值……我担心我正在努力解决这个问题……如果你能找到答案,请告诉我!谢谢你,丹!我也在考虑这个问题,并且考虑到我不断地将其复合,这是绝对有意义的。但是你可能知道,我如何预测我所投资的价值与cumsum合作?因为我意识到我实际上在做的是模拟股票价格而不是回报,我的投资只是初始价值…我担心我正在与之斗争…如果你找到答案,请告诉我!