NPV of a FX Spot trade


How does OG deal with spot FX trades when I request an NPV? At first glance, in Strata, they seem to be treated as a 2d forward trade? So for an FxSingle trade how does one differentiate between a spot and forward? I would expect the “NPV” of a spot trade to be the foreign leg notional converted at the domestic currency spot rate?


An instance of FxSingle simply consists of the amount in each currency and the date of payment. Its up to you to choose the date of payment. This is then converted to a ResolvedFxSingle that consists of two Payment instances, one in each currency. Pricing occurs in DiscountingFxSingleProductPricer with the PV being the sum of the PV of each payment.

In summary, its up to you to set the date to forward or spot.