1.numpy.diff
可以用来计算简单收益率,np.diff取得是差值
用来取序列中的差值
2.np.where
numpy.where(condition[, x, y])¶
符合condition输出x,不符合输出y.
例子:
arr1=np.array([2,4,6,12])
arr2=np.array([6,3,7,1])
np.where(arr1>arr2,arr1,arr2)
外援小知识:
最主要的好处是可加性。利用对数的可加性,如果某股从t1 到t2以及t2到t3的log return分别为r1和r2, 那么从t1到t3的log return为r1+r2. 这个非常自然且方便的规则,对于simple relative return却是不成立的,比如初始投资1元,第1年和第2年的年化回报率分别为5%,那么这两年总共的回报率并非5%,而是10.25%。反之,假如第1年涨5%,第二年跌5%,那么投资也不会回到原点,而会是亏损25个基点。这给分折带来许多不变,而log return没有这样的问题。
本质上log return是复利期趋向无限时的期限收益率,许多情况下,log return的性质给计算和建模带来了巨大的方便。