Valuation and risk, run automatically, inside your own systems
Send positions and market data; get back values, sensitivities, scenarios and VaR, with the inputs that produced them and a log of the run. As JSON for your own systems, PDF and Excel reports, and interactive dashboards. On your own server, or hosted by us.
Your portfolio stays under NDA. We return the output and reports, for you to compare with your current source.
Between the spreadsheet and the platform
A book of hundreds to a few thousand OTC positions is more than a spreadsheet should carry for good, and smaller than the scale enterprise systems are built and priced for.
| Approach | Built for | Not built for |
|---|---|---|
| Spreadsheets | Flexibility, transparency and quick change | A controlled, repeatable process at volume, independent of the one person who built it |
| Terminal pricing tools | Market-standard pricing of one trade, at the point of trade | Valuing the whole book every day, with a record, as a source for the firm rather than for one user |
| Valuation services | Independent prices, daily or intraday, licensed for the firm | Your own market data and assumptions; VaR and stress come at extra cost |
| Enterprise platforms | Broad coverage and a bank's full front-to-back operation | A book of this size, and the project and team it takes to deploy one |
| Building in house | Complete control over models and workflow | Firms without a quant team to build and maintain it |
What a book this size needs, and what the API gives it
Value, exposures and risk. Fair value per position and per leg. Exposures, DV01 and key-rate DV01. Scenarios, stress and VaR. From one run, on one set of curves.
A controlled process. The same run, every time. Every input and parameter comes back with the results. Every skipped position is reported with its reason. A log is kept with the results.
Running in weeks, not quarters. A trial comes first, on your own data, set up with you in a first meeting: we run it for you, or you run it yourself, on your server or ours. Production is a deployment on your server or ours, not a project. If one of your banks isn't supported yet by the mappers, we add it in one to two months.
A cost that fits the book. Priced for a book of that size, and licensed on its own. Tested against your current source before you commit.
How a run works
Two ways in, with the same results.
Through the web API. Your own system sends positions and market data, as JSON or CSV, and asks for the results it needs. The calculation runs whenever positions, market data or settings change.
Through the folder tool, with no code. Put positions and market data files in a folder you choose, set the date, currency and conventions, and press Calculate. Results and reports come back to the folder. Use it to evaluate before you integrate, or to run in earnest.
In
- Positions, from your own system or from Position Mapper and Confirmation Mapper
- Market data from your own provider, or curves of your own
- Scenarios you define, if you want them
Out
- Values and sensitivities for every position, and summaries already totalled
- The curves, rates and volatility surfaces the run was priced on
- Valuation and risk reports, PDF and Excel
- A log: counts at every step, every skipped position and why
What this removes
- An analyst driving each run
- A terminal licence
- A platform to stand up
- Market data bundled with the calculation
- A second purchase for the risk measures
- Code to write before you begin
How to call it
For developers.
- A REST API, with one set of endpoints for each asset class: FX derivatives, interest rate derivatives, inflation derivatives, bonds and equity.
- Create a portfolio with its positions and market data, as JSON or as CSV files. You get back an ID for every later call.
- Ask for what you need: positions with values and sensitivities, summaries by currency and instrument, the curves and rates used, the calculation log, and the reports.
- Interactive documentation (Swagger) lists every endpoint, field and value, and lets you send requests from the browser.
- Runs on your server as a service or in a Docker container, or on ours.
| Call | What it does |
|---|---|
POST /fxd-portfolio | Create an FX portfolio from JSON |
POST /fxd-portfolio/from-csv | Create it from CSV files: positions, market data and, if you like, scenarios |
GET /fxd-portfolio/{uid}/positions | Positions with values and sensitivities, as JSON or CSV |
GET /fxd-portfolio/{uid}/summaries/risk | Exposure, DV01 and key-rate DV01 by currency and instrument |
GET /fxd-portfolio/{uid}/logs | The calculation log, as text, JSON or CSV |
GET /reports/valuation?fxd={uid}&format=xlsx | The valuation report, as PDF or Excel |
The same pattern holds for /ird-portfolio, /ind-portfolio,
/bonds-portfolio and /equity-portfolio.
Example: value an FX forward
POST /fxd-portfolio
Content-Type: application/json
{
"ValuationCCY": "ILS",
"ValueDate": "2026-03-30",
"SpotDate": "2026-03-31",
"MarketDataSource": "LSEG",
"Positions": [
{
"Id": "P002",
"Base": "EUR",
"Counter": "USD",
"Type": "Forward",
"Notional": 500000,
"Strike": 1.1,
"ExpiryDate": "2026-09-30",
"DeliveryDate": "2026-10-02"
}
]
}
201 Created
{ "Uid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890" }
GET /fxd-portfolio/a1b2c3d4-e5f6-7890-abcd-ef1234567890/positions
[
{
"Id": "P002",
"Type": "Forward",
"ValueBase": [ ],
"ValueCounter": [ ],
"ValueHome": [ ],
"BaseLegDV01Home": [ ],
"CounterLegDV01Home": [ ],
"Status": "[ ]"
}
]
What comes back
Position level. One row per position: its value and sensitivities, and the inputs that produced them, traceable to what you sent.
Summary level. Grouped by currency and instrument, already totalled, and reconciling to the position rows. Nothing to aggregate downstream.
The market data used. The curves, spot rates and volatility surfaces the run was priced on, returned with the results, so any figure can be reproduced.
The run itself. Counts at every step, every skipped position and why, and the parameters the run used.
Nothing happens silently
[10:52:19] Starting portfolio recalculation, 54 positions, value date 26/03/2026
[10:52:19] INPUT: MarketDataSource = LSEG, Interpolation = Linear
[10:52:19] SpotRate step completed: 729 spot rates calculated
[10:52:19] InterestRate step completed: 250 interest rates calculated
[10:52:19] Position 10001 AUD/USD Forward: 10/10 steps, 0 failed
[10:52:22] Position 10047 USD/ZAR VanillaOption: 4/10 steps, 1 failed
[10:52:22] ERR ImpliedVol: no volatility surface for USDZAR
[10:52:22] ERR LookupSpot: no spot rate for USD/PLN
[10:52:22] Completed: 45 valued, 9 skipped, results written
- Every run is counted. Positions read, valued and skipped. The output reconciles to what you sent.
- Every skip has a reason. A missing surface, an unavailable spot rate, an unmapped index: named, not summarised.
- Nothing is estimated. Where an input is missing, the position is reported, not priced on an assumption.
- The parameters come back. Valuation date, currency, data source and interpolation are returned with the results.
For the people who read the numbers
Valuation and risk reports, PDF or Excel. Portfolio total by asset class; value by currency pair and instrument; exposure and DV01 by currency; the key-rate ladder; positions skipped and why. Amounts in full, thousands or millions, with your firm's name and logo on the masthead and sign-off blocks, ready to file. In Excel, every figure is a number you can total.
Interactive dashboards. Filter, group and total; value and risk side by side; export the view you built. A clear view of the book for investment managers, with no spreadsheet to assemble.
JSON for your own systems. Every result can go straight into your risk, accounting or reporting systems.
Your market data, not ours
Bloomberg and LSEG files are read as exported. Or use curves of your own: internal quotations, curves fitted from your bond prices, the volatility your committee approved. Or mix the two, chosen curve by curve and changed between runs. Nothing is bundled with the calculation, so you keep the data contract you have, and the assumptions behind every number.
Coverage
The same instruments and models as GIAnalyzer:
Bonds · FX derivatives · interest rate derivatives · inflation derivatives · equity derivatives · curves and rates · scenarios, stress, historical VaR and expected shortfall
Depth where a mid-sized book needs it: custom amortization on each leg, cross-currency swaps in all four leg combinations, inflation swaps split into nominal and inflation legs, FX barriers, KIKO and TARF.
Not covered today: credit and commodity derivatives. Need an instrument that isn't listed? Tell us.
Where it runs
On your own server. Inside your own network. Positions never leave it, and no data is sent to us. The usual choice for banks.
Or hosted by us. For firms that would rather not run it themselves: no server to provide, nothing to maintain. Only your own users can reach your portfolios.
What it needs. A server you control, or nothing at all. No desktop installation, no Excel, no terminal licence.
Either way, the deployment changes where it runs, not what it produces: the same version, the same results.
In use
| Institution | What it produces |
|---|---|
| An insurance company | Scenario analysis, DV01 and duration across bond and swap portfolios, reported to the investment committee, moving to the API |
| An investment house | OTC valuations, replacing a bought valuation service, moving to the API |
| [A hedge fund] | [Valuation and risk across an OTC portfolio, with both mappers in production] |
More examples, on the Company page →
Licensing
Licensed on its own, or with any other Gamma Impact product. By deployment: on your own server, or hosted by us. [Term and what a licence covers.] No prices on the site: we quote for your book.
A demonstration comes first, then a trial on your own data, set up with you: on your server or ours, run by us or by you.
Start with your own data
- Book a live demonstration, in person or on Zoom: on a sample portfolio, or on your own under NDA.
- We run it and return the output and reports.
- You compare them with your current source.
Also: GIAnalyzer, the same instruments and models in Excel, with more functions. Position Mapper and Confirmation Mapper, to get the deal terms from your banks' files.
