计算不同类型行的加权平均值

时间:2021-01-30 22:02:03

标签: excel

我想在 excel 中跟踪我的加密货币的每枚硬币的加权平均价格。 但我不知道我的桌子最好的方法是什么,看起来像这样:

| Type | Total Price | Price Per Coin | Coins     |
|------|-------------|----------------|-----------|
| Buy  | 250         | 7.80           | 32,051282 |
| Buy  | 300         | 7.42           | 40,431266 |
| Sell | 270         | 7.61           | 35,479632 |

要计算加权平均值,可以使用以下公式:

SUMPRODUCT([Price Per Coin], [Coins])/SUM([Coins])

但就我而言,该表还包含 Sell 行,我不希望在计算代币 Buy 价格的加权平均值时使用这些行。如何从公式中排除它们?

我尝试了类似的东西:

SUMPRODUCT([Price Per Coin], [Coins])/SUMIF([Type], "==Buy", [Coins])

但这并不正确(我得到的结果是每枚硬币超过 15 美元,这是没有意义的......)。

我如何进一步计算我的交易赚了/亏了多少?

2 个答案:

答案 0 :(得分:1)

如果您有 O365:

=LET(x,FILTER(coinTbl,coinTbl[Type]="Buy"),SUMPRODUCT(INDEX(x,0,3),INDEX(x,0,4))/SUM(INDEX(x,0,4)))

=> 7.588

如果您没有 O365,这应该可以工作:

=SUMPRODUCT(coinTbl[Price Per Coin]*(coinTbl[Type]="Buy"),coinTbl[Coins]*(coinTbl[Type]="Buy"))/SUMIF(coinTbl[Type],"Buy",coinTbl[Coins])

您的第二个问题可能值得单独讨论,并讨论您的意思以及您希望如何计算已确认、未确认、先进先出、平均成本或其他方法的损益。

以及为什么您显然在价格和硬币列中使用不同的小数指标。

答案 1 :(得分:0)

数据透视表可以让你过滤掉 SELL 行并立即计算 total_price 的总和,硬币的总和

要获得适当的加权平均值,您可以参考数据透视表总计或遵循本指南(我只是在 google 上搜索了 excel 加权平均数据透视表)

https://www.extendoffice.com/documents/excel/4816-excel-pivot-table-weighted-average.html

虽然我很好奇,因为使用您提供的数据看起来硬币的剩余余额只有 37 而不是 72

在我看来,您至少需要添加更多列来存储 Coin_balance 以跟踪每个 Buy 行的剩余未售出硬币

相关问题