任何证券 i 的实际回报是在连续复利的基础上计算的。 现货供应已知回报遵循对数正态回报。 因此,股票收益是通过取自然给定证券 i 在第 t 天的股价除以第 t-1 天的股价的对数 (LN)。 市场指数回报的计算方式相同。
Sub Ret_Calc()
Dim D, W As Variant
S = 301
ActiveCell.Select
For j = 1 To S
D = Selection.Offset(1, -2).Value
W = Selection.Offset(0, -2).Value
If D = "N/A" Or W = "N/A" Then
Selection.Cells(1, 1).Value = ""
ActiveCell.Offset(i, 0).Select
Else: Selection.Cells(1, 1).Value = WorkshetFunction.Ln(W / S)
End
Next S
End Sub
最终效果:
此 Sub 设计目的是 ShRet 和 Rm 列下的第二行运行以生成实际回报 - 股价和市场指数值的实际回报。
在编写完主题后发现有报错,开始改进代码减少报错和无法运行的出现,但是还是会出现报错,请尝试修改一下让他正常运行
谢谢!
13行应该是 end if 吧
14行应该是 next j 吧