如何在R中使用FIFO(先进先出)方法计算库存值?

时间:2019-11-01 20:19:42

标签: r

我有多个库存,并跟踪进出的货物(数量)。

我需要使用FIFO方法计算库存值(考虑利润)。

  Inventory       Time Type Price Volume            
1         A 2015-07-15  BUY  7.50      4            
2         A 2015-07-20  BUY  7.69      2            
3         A 2015-07-21  BUY  7.40      1            
4         A 2015-07-24  BUY  7.26      2            
5         A 2015-07-30 SELL  7.35      8            
6         A 2015-07-31  BUY  7.92      2            
7         B 2015-09-15  BUY  8.50      3            
8         B 2015-09-21  BUY  8.20      5            
9         B 2015-09-28 SELL  9.25      6            

例如:

2015年7月30日的销售(8个单位)的FIFO成本为:

4 x 7.5 + 2 x 7.69 +1 x 7.4 +1 x 7.26 = 60.04

因此,利润(亏损):

8 * 7.35 – 60.04 = -1.24

交易后留在库存A中的货物价值: 1 x 7.26 + 2 x 7.92 = 23.1

调整亏损后的库存值:23.1 +(-1.24)= 21.86

如何使用R分别计算每个库存的投资组合价值?

示例表的代码:

df1 <- data.frame(Inventory = c("A", "A", "A", "A", "A", "A", "B", "B", "B"),
                             Time = c("2015-07-15", "2015-07-20", "2015-07-21", "2015-07-24", "2015-07-30", "2015-07-31", "2015-09-15", "2015-09-21", "2015-09-28"),
                             Type = c("BUY", "BUY", "BUY", "BUY", "SELL", "BUY", "BUY", "BUY", "SELL"),
                             Price = c(7.5, 7.69, 7.4, 7.26, 7.35, 7.92, 8.5, 8.2, 9.25),
                             Volume = c(4, 2, 1, 2, 8, 2, 3, 5, 6))

0 个答案:

没有答案