我想按照Stata的先进先出原则,计算每个时间点的股票平均购买价格(pur_prc_avg
)。
date firm holding price pur_prc_avg
1 x 1000 3 3
2 x 1200 5 3.33
3 x 800 10 3.5
4 x 400 2 4
我想计算变量pur_prc_avg,即平均购买价格。
持有量为1000时,价格为3。
如果在第2天的持仓量为1200,则在3购买了1000,在5购买了200,因此pur_prc_avg =(1000 * 3 + 200 * 5)/1200=3.3。
在第3天,持有量减少到800,这意味着400卖出了,并且我们假设第一个在3购买的400被卖掉了,所以现在平均购买价格在3时是600(1000-400),在5时是200。因此pur_prc_avg = [(1000-400)* 3 + 200 * 5] /800=3.5。
在日期= 4,又售出了400个,再一次,我们假设售出的400个是在3的最开始购买的,现在pur_prc_avg = [(1000-400-400)* 3 + 200 * 5] / 400 = 4