Data Queries

IQ queries are carried out against a finite set of data sources. Each data source has a scope requirement which must be assigned to the client application through Passport. Each data source has it’s own key fields which can be used to filter the results. And each data source has it’s own result columns.

Scopes

A client application must be authorised to access the different channels of data available. This is done by the use of Scopes. Scopes are allocated to a client application in Passport. When an access token is created with the correct parameters then it will contain the list of allocated Scopes. The scopes targetting IQ are the following:

Scope Channel
Zenith/Market Information available from the market which is general in nature.
Zenith/News Information published as news headlines and news articles.
Zenith/Trading Order and trading information which is specific to a user.
Zenith/OrderPad Ability to interact with the order system

Data Sources

Table Name Usage Required Scope
Account List of brokerage accounts Zenith/Trading
Balance List of available cash balances Zenith/Trading
ChartHistory Retrieves a daily history of a symbols price Zenith/Market
Depth Shows depth on a symbol by individual orders Zenith/Market
DepthLevel Shows depth on a Symbol summarised by price level Zenith/Market
Holding List of current stock holdings Zenith/Trading
Market Attributes pertaining to the Markets available in IQ Zenith/Market
News Retrieve a list of available news articles Zenith/News
NewsSources Retrieves a list of available news sources Zenith/News
Order Complete list of recent orders across their various states Zenith/Trading
OrderStatus List of statuses for each recent order Zenith/Trading
Transaction List of separate transactions for each recent order Zenith/Trading
Security Market attributes for symbols available in IQ Zenith/Market
Symbol Meta data on symbols available through IQ Zenith/Market
Trade Course of trades for available symbols Zenith/Market
TradingState Examine the state of the Markets available in IQ Zenith/Market
NewOrderRequest Submitting a request to place a NEW order Zenith/OrderPad
NewOrderVerify Verification that a request to place a NEW order passes system checks Zenith/OrderPad
AmendOrderRequest Submitting a request to place a order AMEND Zenith/OrderPad
AmendOrderVerify Verification that a request to place an AMEND order passes system checks Zenith/OrderPad
CancelOrderRequest Submitting a request to place a CANCEL order Zenith/OrderPad
CatalogueTable List all the data sources available to IQ
CatalogueField List all the data source fields available to IQ

Key Fields

Only certain fields are available in the WHERE clause for filtering the result set.

Table Name Key Fields
Account Account (String)
Balance Account (String), Currency (String)
ChartHistory Code (String), SymbolCode (String), Interval (TimeSpan), HistoryAmount (Integer), FromDate (DateTime), ToDate (DateTime)
Depth Code (String), SymbolCode (String)
DepthLevel Code (String), SymbolCode (String)
Holding Account (String), Exchange (String), Code (String)
Market Code (String), SymbolCode (String)
News SymbolCodes (String), Count (Integer), Headline (String), ID (String), Date (DateTime)
NewsSources None
Order Account (String), OrderID (String)
OrderStatus Account (String), Code (String), Provider (String)
Transaction Account (String), Count (Integer), TradeDate (DateTime), Exchange (String), TradingMarket (String), Symbol (String), OrderID (String)
Security Code (String), SymbolCode (String)
Symbol Code (String), SymbolCode (String), Name (String), Exchange (String)
Trade Code (String), SymbolCode (String), HistoryAmount (Integer), ID (Big Integer), DataDate (DateTime)
TradingState Code (String), SymbolCode (String)
NewOrderRequest INSERT only
NewOrderVerify INSERT only
AmendOrderRequest INSERT only
AmendOrderVerify INSERT only
CancelOrderRequest INSERT only
CatalogueTable None
CatalogueField None