Refinitiv Data Library for TypeScript

Overview

Summary

A Surfaces.FX allows to retrieve Fx data within a specific session.

Example of usage

import { IPA } from '@refinitiv-data/data';

const session = /* session creation is omitted */

(async () => {
    try {
        await session.open();

        // single Fx full definition
        const definition = IPA.Surfaces.Fx.Definition({
            fxCrossCode: 'EURUSD',
            surfaceTag: 'FxVol-EURUSD',
            surfaceLayout: {
                format: IPA.Surfaces.Fx.LayoutFormat.Matrix,
            },
            surfaceParameters: {
                xAxis: IPA.Surfaces.Fx.AxisUnit.Date,
                yAxis: IPA.Surfaces.Fx.AxisUnit.Strike,
                calculationDate: '2018-08-20T00:00:00Z',
                returnAtm: true,
            },
        });

        const fxSurfaceResponse = await definition.getData(session);
        console.log('VolatilitySurfaces Fx data: ', fxSurfaceResponse.data.raw);

        // several Fx instruments in single definition (second parameter - short definition)
        const multiVSFx = IPA.Surfaces.Definition({
            definitions: [definition, IPA.Surfaces.Fx.Definition('EURUSD')],
        });
        const multiFxSurfaceResponse = await multiVSFx.getData(session);
        console.log('VolatilitySurfaces multiple Fx data: ', multiFxSurfaceResponse.data.raw);
    } catch (err) {
        console.log(err);
    } finally {
        session.close();
    }
})();