Is there an override for calendar dates names or descriptions?

Viewed 264

I'm trying to use Bloomberg API to get holiday information about a ticker, the request below produces the dates correctly but I would also like to include the name of the holiday

Could there be an override that will also include the name of the date as on "New Year"

ReferenceDataRequest = {
    securities[] = {
        LQ45 Index
    }
    fields[] = {
        CALENDAR_HOLIDAYS
    }
    overrides[] = {
        overrides = {
            fieldId = "SETTLEMENT_CALENDAR_CODE"
            value = "JA"
        }
        overrides = {
            fieldId = "CALENDAR_START_DATE"
            value = "20190101"
        }
        overrides = {
            fieldId = "CALENDAR_END_DATE"
            value = "20191231"
        }
    }
    tableOverrides[] = {
    }
}

the c# code I am using was suggested on another question that I can no longer find, and it is:

            Request request = this._service.CreateRequest("ReferenceDataRequest");
            Element securities = request.GetElement(BloombergConstants.SECURITIES);
            securities.AppendValue(ticker);
            Element fields = request.GetElement(BloombergConstants.FIELDS);
            fields.AppendValue("CALENDAR_HOLIDAYS");

            //Element overridefields = request.GetElement(BloombergConstants.OVERRIDES);
            Element overrides = request.GetElement(BloombergConstants.OVERRIDES);
            Element override1 = overrides.AppendElement();
            override1.SetElement(BloombergConstants.FIELDID, "SETTLEMENT_CALENDAR_CODE");
            override1.SetElement(BloombergConstants.VALUE, calendarCode);
            override1 = overrides.AppendElement();
            override1.SetElement(BloombergConstants.FIELDID , "CALENDAR_START_DATE");
            override1.SetElement(BloombergConstants.VALUE, startDate.ToString("yyyyMMdd"));
            Element override2 = overrides.AppendElement();
            override2.SetElement(BloombergConstants.FIELDID, "CALENDAR_END_DATE");
            override2.SetElement(BloombergConstants.VALUE, endDate.ToString("yyyyMMdd"));
2 Answers

Unfortunately it looks like there is no override code to add this behaviour. This is a bit non intuitive, but if you search for the relevant code CALENDAR_HOLIDAYS you actually receive information on the code CALENDAR_NON_SETTLEMENT_DATES (possibly this was renamed and aliased to this at some point?)

fieldInfoRequest = {
        id[] = {
            "CALENDAR_HOLIDAYS"
        }
    }

fieldResponse = {
        fieldData[] = {
            fieldData = {
                id = "ZS090"
                fieldInfo = {
                    mnemonic = "CALENDAR_NON_SETTLEMENT_DATES"
                    description = "Calendar Non-Settlement Dates"
                    datatype = String
                    categoryName[] = {
                    }
                    property[] = {
                    }
                    overrides[] = {
                        "ZS089", "ZS087", "ZS088"
                    }
                    ftype = BulkFormat
                }
            }
        }
    }

These overrides correspond to

   id                  mnemonic
ZS087  SETTLEMENT_CALENDAR_CODE
ZS088       CALENDAR_START_DATE
ZS089         CALENDAR_END_DATE

Non of which adds functionality to return a description of the holiday the date corresponds to.

Related