Compute exposure shares from baseline NPV
Source:R/run_trisk_on_simple_portfolio.R
add_exposure_share_from_npv.RdAllocates exposure_value_usd to assets using each asset baseline NPV share.
It mirrors the Python logic: compute run-level shares, average exposure share after
dropping run_id, then re-scale so each original portfolio row keeps its total
exposure.