API Documentation

Category Description

Price, time, size and exchange of opening trade reports.

Category Identification

pNxCoreMessage->coreData.Category.pnxStringCategory->Atom 22
pNxCoreMessage->coreData.Category.pnxStringCategory->String OpeningTradeReports

Update Time and Frequency

Approximate Time Info
00:00 AM Information from previous session
Constant Updates Constant updates throughout the day

Category Fields | 8

Index FieldName FieldType C Code Info
0 Price NxCFT_PRICE pnxFields[0].data.nxPrice Opening trade price on first exchange
1 Size NxCFT_32BIT pnxFields[1].data.i32Bit Opening trade size on first exchange
2 Time NxCFT_TIME pnxFields[2].data.nxTime Opening trade time on first exchange
3 Exg NxCFT_STRING_IDX pnxFields[3].data.stringTableItem First exchange, from table table_NxST_EXCHANGE.html
4 Price2 NxCFT_PRICE pnxFields[4].data.nxPrice Opening trade price on second exchange
5 Size2 NxCFT_32BIT pnxFields[5].data.i32Bit Opening trade size on second exchange
6 Time2 NxCFT_TIME pnxFields[6].data.nxTime Opening trade time on second exchange
7 Exg2 NxCFT_STRING_IDX pnxFields[7].data.stringTableItem Second exchange, from table table_NxST_EXCHANGE.html

Code Sample from CategoryDumper project:

void onNxCoreCategory_22(const NxCoreMessage *pNxCoreMsg)
{
     NxCategoryField *pField;
			 
     // Print the category num and the Symbol
     PrintSymbol(pNxCoreMsg); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[0];
     if (pField->Set)
         printf("Price: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[1];
     if (pField->Set)			 
         printf("Size: %d \n",pField->data.i32Bit); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[2];		 
     if (pField->Set)
         printf("Time: %02d:%02d:%02d \n",
                pField->data.nxTime.Hour,
                pField->data.nxTime.Minute,
                pField->data.nxTime.Second); 			 
 			 
     // See table_NxST_EXCHANGE.html for exchange codes 			  			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[3];		 
     if (pField->Set)
         printf("Exg:  Table - %d  Exchange - %d\n",
                pField->data.stringTableItem.ixTable,
                pField->data.stringTableItem.idString); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[4];
     if (pField->Set)
         printf("Price2: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[5];
     if (pField->Set)			 
         printf("Size2: %d \n",pField->data.i32Bit); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[6];		 
     if (pField->Set)
         printf("Time2: %02d:%02d:%02d \n",
                pField->data.nxTime.Hour,
                pField->data.nxTime.Minute,
                pField->data.nxTime.Second); 			 
 			 
     // See table_NxST_EXCHANGE.html for exchange codes 			  			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[7];		 
     if (pField->Set)
         printf("Exg2:  Table - %d  Exchange - %d\n",
                pField->data.stringTableItem.ixTable,
                pField->data.stringTableItem.idString);
}