Table of Contents


Category Description

OTCBB Closing Report

Category Identification

pNxCoreMessage->coreData.Category.pnxStringCategory->Atom 51
pNxCoreMessage->coreData.Category.pnxStringCategory->String OTCBB_ClosingReport

Update Time and Frequency

Approximate Time Info
00:00 AM Minimal information from previous session
Market close Updates after market close

Category Fields | 12

Index FieldName FieldType C Code Info
0 Flags NxCFT_32BIT pnxFields[0].data.i32Bit Flags
1 Open NxCFT_PRICE pnxFields[1].data.nxPrice Open price
2 High NxCFT_PRICE pnxFields[2].data.nxPrice High price
3 Low NxCFT_PRICE pnxFields[3].data.nxPrice Low price
4 Last NxCFT_PRICE pnxFields[4].data.nxPrice Last trade price
5 NetChange NxCFT_PRICE pnxFields[5].data.nxPrice Net change
6 Volume NxCFT_64BIT pnxFields[6].data.i64Bit Volume
7 Bid NxCFT_PRICE pnxFields[7].data.nxPrice Bid price
8 Ask NxCFT_PRICE pnxFields[8].data.nxPrice Ask price
9 LastExg NxCFT_STRING_IDX pnxFields[9].data.stringTableItem Last trade exchange, from table table_NxST_EXCHANGE.html
10 BidExg NxCFT_STRING_IDX pnxFields[10].data.stringTableItem Bid exchange, from table table_NxST_EXCHANGE.html
11 AskExg NxCFT_STRING_IDX pnxFields[11].data.stringTableItem Ask Exchange, from table table_NxST_EXCHANGE.html

Code Sample from CategoryDumper project:

void onNxCoreCategory_51(const NxCoreMessage *pNxCoreMsg)
{
     NxCategoryField *pField;
			 
     // Print the category num and the Symbol
     PrintSymbol(pNxCoreMsg);
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[0];
     if (pField->Set)			 
         printf("Flags: %d \n",pField->data.i32Bit);
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[1];
     if (pField->Set)
         printf("Open: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType));
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[2];
     if (pField->Set)
         printf("High: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType));
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[3];
     if (pField->Set)
         printf("Low: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType));
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[4];
     if (pField->Set)
         printf("Last: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType));
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[5];
     if (pField->Set)
         printf("Netchange: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType));
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[6];
     if (pField->Set)			 
         printf("Volume: %I64d \n",pField->data.i64Bit);
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[7];
     if (pField->Set)
         printf("Bid: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType));
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[8];
     if (pField->Set)
         printf("Ask: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType));
 			 
     // See table_NxST_EXCHANGE.html for exchange codes
     pField=&pNxCoreMsg->coreData.Category.pnxFields[9];		 
     if (pField->Set)
         printf("Last Exg:  Table - %d  Exchange - %d\n",
                pField->data.stringTableItem.ixTable,
                pField->data.stringTableItem.idString);
 			 
     // See table_NxST_EXCHANGE.html for exchange codes
     pField=&pNxCoreMsg->coreData.Category.pnxFields[10];		 
     if (pField->Set)
         printf("Bid Exg:  Table - %d  Exchange - %d\n",
                pField->data.stringTableItem.ixTable,
                pField->data.stringTableItem.idString);
 			 
     // See table_NxST_EXCHANGE.html for exchange codes
     pField=&pNxCoreMsg->coreData.Category.pnxFields[11];		 
     if (pField->Set)
         printf("Ask Exg:  Table - %d  Exchange - %d\n",
                pField->data.stringTableItem.ixTable,
                pField->data.stringTableItem.idString);
}