Category Description
Open/Resume price indications for stocks halted or delayed at open containing high/low price range.
Category Identification
pNxCoreMessage->coreData.Category.pnxStringCategory->Atom | 64 |
pNxCoreMessage->coreData.Category.pnxStringCategory->String | PriceIndication |
Update Time and Frequency
Approximate Time | Info |
---|---|
Occasional Updates | Occasional updates throughout the day |
Category Fields | 4
Index | FieldName | FieldType | C Code | Info |
---|---|---|---|---|
0 | Type | NxCFT_STRING_IDX | pnxFields[0].data.stringTableItem | Flags such as Normal, Range, etc, from table table_NxST_OPENINDICATIONTYPE.html |
1 | High | NxCFT_PRICE | pnxFields[1].data.nxPrice | The high of the range of indicated prices |
2 | Low | NxCFT_PRICE | pnxFields[2].data.nxPrice | The low of the range of indicated prices |
3 | LastTrade | NxCFT_PRICE | pnxFields[3].data.nxPrice | Last trade, if known |
Code Sample from CategoryDumper project:
void onNxCoreCategory_64(const NxCoreMessage *pNxCoreMsg) { NxCategoryField *pField; // Print the category num and the Symbol PrintSymbol(pNxCoreMsg); pField=&pNxCoreMsg->coreData.Category.pnxFields[0]; if (pField->Set) { printf("Type: Table - %d Reason - ", pField->data.stringTableItem.ixTable); // See table_NxST_OPENINDICATIONTYPE.html switch(pField->data.stringTableItem.idString) { case 0:printf("Clear \n");break; case 1:printf("Normal \n");break; case 2:printf("New \n");break; case 3:printf("Correcting \n");break; case 4:printf("Cancel \n");break; case 5:printf("Range \n");break; } } pField=&pNxCoreMsg->coreData.Category.pnxFields[1]; if (pField->Set) printf("High: %0.4f \n", pfNxCorePriceToDouble(pField->data.nxPrice.Price, p Field->data.nxPrice.PriceType)); pField=&pNxCoreMsg->coreData.Category.pnxFields[2]; if (pField->Set) printf("Low: %0.4f \n", pfNxCorePriceToDouble(pField->data.nxPrice.Price, pField->data.nxPrice.PriceType)); pField=&pNxCoreMsg->coreData.Category.pnxFields[3]; if (pField->Set) printf("Last Trade: %0.4f \n", pfNxCorePriceToDouble(pField->data.nxPrice.Price, pField->data.nxPrice.PriceType)); }