Category Description
Futures Contract Information
Category Identification
| pNxCoreMessage->coreData.Category.pnxStringCategory->Atom | 80 |
| pNxCoreMessage->coreData.Category.pnxStringCategory->String | FuturesContract |
Update Time and Frequency
| Approximate Time | Info |
|---|---|
| 00:00 AM | Information from previous session |
| Weekly | This category is upated when the symbol first appears each week. Usually pre-market Sunday |
Category Fields | 16
| Index | FieldName | FieldType | C Code | Info |
|---|---|---|---|---|
| 0 | ExpirationDate | NxCFT_DATE | pnxFields[0].data.nxDate | Contract Expiration Date |
| 1 | LastDeliveryDate | NxCFT_DATE | pnxFields[1].data.nxDate | Last Delivery Date |
| 2 | CME SecDefID | NxCFT_32BIT | pnxFields[2].data.i32Bit | CME Security Definition Number |
| 3 | ActivationDate | NxCFT_DATE | pnxFields[3].data.nxDate | Activation Date for product (1) |
| 4 | ProductType | NxCFT_32BIT | pnxFields[4].data.i32Bit | 0 for Daily, 1 for Weekly or 2 for Monthly product (1) |
| 5 | UnderlyingProduct | NxCFT_STRING_IDX | pnxFields[5].data.stringTableItem | Indicates the product complex. From table NxST_UNDERLYINGPRODUCTCODE (1) |
| 6 | Currency | NxCFT_STRINGZ | pnxFields[6].data.StringZ | Identifies currency used for price (1) |
| 7 | SettleCurrency | NxCFT_STRINGZ | pnxFields[7].data.StringZ | Identifies currency used for settlement (1) |
| 8 | UnitOfMeasure | NxCFT_STRINGZ | pnxFields[8].data.StringZ | Unit of measure for the product's original contract size (1) |
| 9 | UnitOfMeasureQty | NxCFT_STRINGZ | pnxFields[9].data.StringZ | This field contains the contract size for each instrument (1) |
| 10 | DecayQty | NxCFT_32BIT | pnxFields[10].data.i32Bit | Quantity that a contract will decay daily by once the decay start date is reached (1) |
| 11 | DecayStartDate | NxCFT_DATE | pnxFields[11].data.nxDate | Date at which a decaying contract will begin to decay (1) |
| 12 | OrigContractSize | NxCFT_32BIT | pnxFields[12].data.i32Bit | Fixed contract value assigned to each product (1) |
| 13 | ContractMultiplier | NxCFT_32BIT | pnxFields[13].data.i32Bit | Number of deliverable units per instrument (1) |
| 14 | MultiplierUnit | NxCFT_32BIT | pnxFields[14].data.i32Bit | type of multiplier being applied to the product. 1 for multiplied by hour, or 2 for multiplied by day. (1) |
| 15 | FlowSchedule | NxCFT_32BIT | pnxFields[15].data.i32Bit | Specifies whether the contract is defined according to the Easter Peak, Eastern Off-Peak, Western Peak or Western Off-Peak. 0 for NERC Eastern Off-Peak, 1 for NERC Western Off-Peak, 2 for Calendar-All Days in month, 3 for NERC Eastern Peak, and 4 for NERC Western Peak (1) |
Code Sample from CategoryDumper project:
void onNxCoreCategory_80(const NxCoreMessage *pNxCoreMsg)
{
NxCategoryField *pField;
// Print the category num and the Symbol
PrintSymbol(pNxCoreMsg);
pField=&pNxCoreMsg->coreData.Category.pnxFields[0];
if (pField->Set)
printf("Expiration Date: %02d/%02d/%d \n",
pField->data.nxDate.Month,
pField->data.nxDate.Day,
pField->data.nxDate.Year);
pField=&pNxCoreMsg->coreData.Category.pnxFields[1];
if (pField->Set)
printf("Last Delivery Date: %02d/%02d/%d \n",
pField->data.nxDate.Month,
pField->data.nxDate.Day,
pField->data.nxDate.Year);
pField=&pNxCoreMsg->coreData.Category.pnxFields[2];
if (pField->Set)
printf("Security ID: %d\n",
pField->data.i32Bit);
}