API Documentation

Category Description

Year end close, dividends, capital gain and distribution information, etc.

Category Identification

pNxCoreMessage->coreData.Category.pnxStringCategory->Atom 11
pNxCoreMessage->coreData.Category.pnxStringCategory->String MutualFundFundamental

Update Time and Frequency

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

Category Fields | 15

Index FieldName FieldType C Code Info
0 YearEndClose NxCFT_PRICE pnxFields[0].data.nxPrice Close prices on last trading day of last year
1 Dividend NxCFT_PRICE pnxFields[1].data.nxPrice Dividend
2 StockSplitDividend NxCFT_PRICE pnxFields[2].data.nxPrice Stock split dividend
3 RecordDate NxCFT_DATE pnxFields[3].data.nxDate Record date
4 PaymentDate NxCFT_DATE pnxFields[4].data.nxDate Payment date
5 ShortTermCapitalGains NxCFT_PRICE pnxFields[5].data.nxPrice Short-term capital gains
6 LongTermCapitalGains NxCFT_PRICE pnxFields[6].data.nxPrice Long-term capital gains
7 OtherCapitalGains NxCFT_PRICE pnxFields[7].data.nxPrice Other capital gains
8 UnallocatedDistributions NxCFT_PRICE pnxFields[8].data.nxPrice Unallocated distributions
9 AccruedInterest NxCFT_PRICE pnxFields[9].data.nxPrice Accrued interest
10 IncomeDistribution NxCFT_PRICE pnxFields[10].data.nxPrice Income distribution
11 CapitalDistribution NxCFT_PRICE pnxFields[11].data.nxPrice Capital distribution
12 ParValue NxCFT_PRICE pnxFields[12].data.nxPrice Par value
13 SecuritySubtype NxCFT_32BIT pnxFields[13].data.i32Bit Security subtype
14 EstLongTermReturn NxCFT_PRICE pnxFields[14].data.nxPrice Estimated long-term return

Code Sample from CategoryDumper project:

void onNxCoreCategory_11(const NxCoreMessage *pNxCoreMsg)
{
     NxCategoryField *pField;
			 
     // Print the category num and the Symbol
     PrintSymbol(pNxCoreMsg); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[0];
     if (pField->Set)
         printf("Year End Close: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[1];
     if (pField->Set)
         printf("Dividend: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[2];
     if (pField->Set)
         printf("Stock Split Dividend: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[3];		 
     if (pField->Set)
         printf("Record Date: %02d/%02d/%d \n",
                pField->data.nxDate.Month,
                pField->data.nxDate.Day,
                pField->data.nxDate.Year); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[4];		 
     if (pField->Set)
         printf("Payment Date: %02d/%02d/%d \n",
                pField->data.nxDate.Month,
                pField->data.nxDate.Day,
                pField->data.nxDate.Year); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[5];
     if (pField->Set)
         printf("ShortTermCapitalGains: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[6];
     if (pField->Set)
         printf("LongTermCapitalGains: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[7];
     if (pField->Set)
         printf("OtherCapitalGains: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[8];
     if (pField->Set)
         printf("UnallocateDistributions: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[9];
     if (pField->Set)
         printf("Accrued Interest: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[10];
     if (pField->Set)
         printf("Income Distribution: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[11];
     if (pField->Set)
         printf("Capital Distribution: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[12];
     if (pField->Set)
         printf("Par Value: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType)); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[13];
     if (pField->Set)			 
         printf("Security Subtype: %d \n",pField->data.i32Bit); 			 
 			 
     pField=&pNxCoreMsg->coreData.Category.pnxFields[14];
     if (pField->Set)
         printf("EstLongTermReturn: %0.4f \n",
                pfNxCorePriceToDouble(pField->data.nxPrice.Price,
                                      pField->data.nxPrice.PriceType));
}