Why CF_CURR does not return currency when asking same instrument via different types of identifier?

When I ask for CF_CURR via TICKER and ISIN, I get USD for ticker but NaN for ISIN.

identifiers = ['US03076C1062', 'AMP']

data, error = ek.get_data(identifiers, fields=['CF_CURR'])

Output:

Instrument CF_CURR

0 US03076C1062 None

1 AMP USD

Is this desired behaviour that I have to first convert all identifiers to RIC (even other data can be obtained via ISIN)?

Best Answer

  • Jirapongse
    Jirapongse ✭✭✭✭✭
    Answer ✓

    @mzeman

    From my testing, it works with other fundamental fields, such as TR.CurrEnterpriseValueEV.

    image

    I assume that it doesn't work with CF_CURR because CF_CURR is in the Real-Time category.

    image

    Typically, we use RICs to subscribe to real-time data. If you check the raw output, you will see that it returns 'The record could not be found' for the instrument 'US03076C1062'.

    {'columnHeadersCount': 1,
     'data': [['US03076C1062', 28429632678.7, None],
      ['AMP', 28429632678.7, 'USD']],
     'error': [{'code': 251658243,
       'col': 2,
       'message': "'The record could not be found' for the instrument 'US03076C1062'",
       'row': 0}],
     'headerOrientation': 'horizontal',
     'headers': [[{'displayName': 'Instrument'},
       {'displayName': 'Current EV', 'field': 'TR.CURRENTERPRISEVALUEEV'},
       {'displayName': 'CF_CURR', 'field': 'CF_CURR'}]],
     'rowHeadersCount': 1,
     'totalColumnsCount': 3,
     'totalRowsCount': 3}

Answers