I have to try this to make sure it works, but wouldn’t it work?
{{{ [has:index[expense]getindex[expense]sum[]] }}}
EDIT: ARG, I misread the OP. All expenses in one data tiddler, that’s very different from what I was thinking (i.e. “expense” as a single data item for each of many data tiddlers.)
EDIT Deux: {{{ [[List of expenses]indexes[]] :map[[List of expenses]getindex<currentTiddler>] +[sum[]] }}}
Yeah, I enjoy this stuff a little too much …