Бета-расчет для склада + ограниченный период времени + на скользящей основе - PullRequest
0 голосов
/ 09 января 2019

Я попытался найти существующий вопрос с ответом, но безуспешно.

В R, скажем, у меня есть эти данные set(abc):

     Date    Stock    Index      Stock_AR      Index_AR
1    1999-01-04  23.5000  5189.68            NA            NA
2    1999-01-05  23.7500  5239.99  1.063830e-02  9.694239e-03
3    1999-01-06  22.6250  5362.27 -4.736842e-02  2.333592e-02
4    1999-01-07  22.3000  5356.14 -1.436464e-02 -1.143173e-03
5    1999-01-08  22.8500  5401.23  2.466368e-02  8.418376e-03
6    1999-01-11  23.1250  5322.69  1.203501e-02 -1.454113e-02
7    1999-01-12  23.2750  5250.80  6.486486e-03 -1.350633e-02
8    1999-01-13  22.6250  5005.36 -2.792696e-02 -4.674335e-02
9    1999-01-14  22.5000  5018.86 -5.524862e-03  2.697109e-03
10   1999-01-15  21.0000  4885.62 -6.666667e-02 -2.654786e-02

Stock_AR и Index_AR - расчетные фактические дневные доходы. Дата форматируется как дата. Все остальные числовые.

Теперь я хотел бы рассчитать бета:

(covariance(Stock_AR & Index_AR) / variance (Index_AR))

Но я хотел бы делать это по мере поступления в течение ограниченного периода времени (например, всегда последние четыре дня, включая текущий день).

Я пытался:

lm(Stock_AR ~ Index_AR, data.frame(abc))

Но это дает мне бета-версию для полного набора данных (который в действительности имеет больше точек данных, чем всего за две недели).

Я использовал rollapply для других вычислений (например, сумма или среднее), но не смог применить их к этой проблеме. Даже после прочтения этого поста :

Любая помощь высоко ценится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...