Altair® Panopticon


Kx kdb+tick

The Kx kdb+tick input data source allows connection to a Kx kdb+ ticker plant on a real-time streaming basis.

Specifically, it allows Panopticon to subscribe to Kx kdb+tick through the definition of Service, Table, Symbol, or directly through Functional Subscription.


1.     Select KDB+ Tick from the Data Sources pane. The KDB+ Tick Settings pane and the retrieved KDB+ Tick source are displayed.


2.     Enter the Name of the Kx kdb+ Tick data source, then click .

3.     Enter the following properties:




Kx kdb+tick host address.


Kx kdb+tick host port. Default is 5010.

TLS Enabled

Ensure to check if you have started q with TLS only.

User Id

The user Id that will be used to connect to Kx kdb+tick.


The password that will be used to connect to Kx kdb+tick.



Host, Port, User Id, and Password can be parameterized.



4.     Select either Subscription Type:

·         Service

Enter the following properties:

¨        Subscription Name (e.g., .u.sub)


Instead of entering the table and symbol to subscribe against in the Table and Symbol text boxes, you can specify the full subscription syntax in the Subscription Name text box. For example:


To subscribe to the trade table and AAPL, AIG, and DOW symbols, enter this in the Subscription Name text box:




¨        Table to subscribe against (e.g., trade)


·         You may use just a back tick for the table name, intending to subscribe to all available tables.

·         When a table name is not entered in the Table text box, then the Symbol text box is disabled meaning it will not be used while doing subscription.



¨        Symbol to subscribe against (e.g., AAPL)


Multiple symbols should be separated by a comma.



·         Functional Subscription

Enter the functional subscription that needs to be issued (e.g., .u.sub[`trade;`])

5.     Click Fetch Schema to retrieve the schema of the configured subscription.

This also populates the Id Column with the set of columns, of arbitrary type, that can be concatenated to form a unique row identifier.

6.     Check Constrain subscription to matching symbols to select the column which contains specific symbols. Otherwise, the filtering against these symbols will not take place.


The Constrain subscription to matching symbols only lists sym fields. Therefore, if you select a non sym type in the Id Column, it is not recommended to select the default value [Id Column] in the Constrain subscription to matching symbols drop-down list.



7.     Activate or deactivate Initialize with historic data. If unchecked, the data source will only be populated with streaming updates that are subscribed against. If checked, the data source is first initialized against a store of data, after which subscribed streaming updates are then applied.

8.     Enter the following information:

·         Host

·         Port

·         User Id

·         Password

·         Query

These entries can be parameterized.

9.     Check Deferred Sync Query box to allow the Kxkdb+tick data source to support synchronous and asynchronous reads. The advantage of using this option is that there is no queue on the Kx kdb+tick server side, queries are farmed out to slaves and returned to asynchronous instead.

The {Query} parameter is used as a place holder for the target query that is defined in the Query builder.

10.   Date/Time values of output data and Date/Time inputs, where supported, is by default unchanged.

You can opt to define the Show in Timezone and Source Timezone settings.

11.   Select the Flatten List Limit.

This allows retrieval of the first ‘n’ items in the list and produce new columns in the output schema with a dot notation.

For example, if there are two nested fields (BidPrices and OfferPrices) and the flatten list limit selected is five, then the output schema will be:

BidPrices.1, BidPrices.2, BidPrices.3, BidPrices.4, BidPrices.5, OfferPrices.1, OfferPrices.2, OfferPrices.3, OfferPrices.4, OfferPrices.5

If there are less than five items in the list, then the values will be null.



Currently, this feature works for the Service subscription type. Also, it only flattens numeric columns.



18.   For this section:

Refer to Define Real-Time Settings for more information.

12.   Set the row limit of the data set.

13.   Tap the Preview Selected Data Source slider to turn it on.

14.   Click  to display the data preview.