InstrumentMarket

InstrumentMarket is the entity that represents an Instrument in a specific Market. It is the entity for which all trading activity is undertaken and at which level all the market data is collected for distribution.

Metadata

  • Base Table Class: Static
  • Default Size: 1000

Fields

NameTypeSize (bytes)Description
IdInteger (signed)8The unique identifier of this InstrumentMarket.
StatusSet of Status4
ShortNameString24The short text identifier of this InstrumentMarket.
MarketForeign key to Market8A Market is the entity used to provide the mechanism by which a set of Instruments can be traded using a common set of parameters and rules. Each Instrument_ may belong to one or more Market_ enabling the Instrument_ to be traded simultaneously using different rules and matching algorithms
InstrumentForeign key to Instrument8An Instrument is the entity that represents something to be traded in MarketGrid. In order for an Instrument to trade it must be listed on a Market_ to produce an InstrumentMarket_. Each Instrument may be traded simultaneously on one or more Markets, each such instance being an InstrumentMarket_.
InstrumentGroupForeign key to InstrumentGroup8An InstrumentGroup is used to group Instrument_ instances into logical sets, such as Equities or Currencies, to facilitate the setting of common parameters and rules across each InstrumentGroup.
InstrumentTypeOne of InstrumentType1
ExternalAccountProviderForeign key to ExternalAccountProvider8
SectorForeign key to Sector8Sectors are the primary mechanism for the economic classification of the Instruments that are modelled in the system. A Sector is a collection of Instruments that usually share a common underlying economic characteristic that makes grouping them convenient for a number of purposes.
ExternalFKInteger (unsigned)8FK for this record in external system that generated it
StatusReasonOne of StatusReason1
SessionForeign key to Session8The Sessions that define the matching algorithms that may be used for Products are maintained in this table.
OrderTypeSet of OrderType4
LotSizeInteger (unsigned)4An InstrumentMarket may trade in lots, where a lot is a fixed number of units of the InstrumentMarket. LotSize defines the number of units per lot for an InstrumentMarket. If an InstrumentMarket trades in single units, the LotSize is 1. Prices are always on a per-lot basis. This value determines the LotSize for the instances of this InstrumentMarket.
HiddenMaxRatioInteger (signed)8For hidden quantity orders, the maximum ratio of the total quantity of an order to the hidden quantity. For example, if HiddenMaxRatio is 10 then an order with a total quantity of 10,000 lots may not have a hidden quantity less than 1,000 lots.
PriceStepSetForeign key to PriceStepSet8Defines the valid price steps for the InstrumentMarket. This Trading Rule is a reference to a PriceStepSet instance that defines the steps that apply at each price level for the InstrumentMarket.
QuantityStepSetForeign key to QuantityStepSet8Defines the valid quantity steps for the InstrumentMarket. This Trading Rule is a reference to a QuantityStepSet instance that defines the steps that apply at each price level for the InstrumentMarket.
PriceDecimalsInteger (unsigned)1The number of decimal places that should be used when interpreting prices for this InstrumentMarket. Prices within MarketGrid are stored and communicated as integers with fixed numbers of decimals. This field specifies how many digits are to the right of the decimal point. For example, a price of 10350 with PriceDecimals set to 2 means 103.50.
QuantityDecimalsInteger (unsigned)1The number of decimal places that should be used when interpreting quantities for this InstrumentMarket. Quantities within MarketGrid are stored and communicated as integers with fixed numbers of decimals. This field specifies how many digits are to the right of the decimal point. For example, a quantity of 12345 with QuantityDecimals set to 3 means 12.345.
ValueDecimalsInteger (unsigned)1The number of decimal places that should be used when interpreting the value of this InstrumentMarket. Values within MarketGrid are stored and communicated as integers with fixed numbers of decimals. This field specifies how many digits are to the right of the decimal point. For example, a value of 1150000 with ValueDecimals of 2 means 11,500.00.
ValueRoundingOne of RoundingMethod1
FeeRoundingOne of RoundingMethod1
MinQuantityInteger (signed)8The minimum quantity permitted for this InstrumentMarket.
MaxQuantityInteger (signed)8The maximum quantity permitted for this InstrumentMarket.
MinValueInteger (signed)8
MaxValueInteger (signed)8
ScaleInteger (signed)8A scaling factor for distribution of the traded Value today for this Market through the API. Value will be scaled (divided by) this field, if it is non-zero.
RefPriceInteger (signed)8This is the reference price for this InstrumentMarket. It is used to anchor the trading range for the InstrumentMarket.
LastPriceInteger (signed)8The last price at which this InstrumentMarket traded.
LastPriceDateInteger (signed)4The data on which the InstrumentMarket traded (or 0 if it has not traded).
ClosePriceInteger (signed)8
ClosePriceDateInteger (signed)4Represents a date as an integer in YYYYMMDD format.
HistHighInteger (signed)8The highest traded price ever recorded for this InstrumentMarket. This is only updated when the engine is shut down (or cycled).
HistHighDateInteger (signed)4The date on which the highest price was traded (or 0 if it has not traded).
HistLowInteger (signed)8The lowest traded price ever recorded for this InstrumentMarket. This is only updated when the engine is shut down (or cycled).
HistLowDateInteger (signed)4The date on which the lowest price was traded (or 0 if it has not traded).
NameString48The long text identifier of this InstrumentMarket.
DateInteger (signed)4The effective trading date for the InstrumentMarket.
DayOfWeekOne of DayOfWeek1
WorkingStatusSet of Status4
InheritanceSet of InstrumentMarketInheritance1Controls the inheritance behaviour for this InstrumentMarket.
CalendarForeign key to Calendar8
FeeBasisOne of FeeBasis1
FeeBuyInteger (signed)8
FeeSellInteger (signed)8
MinFeePerOrderBuyInteger (signed)8
MinFeePerOrderSellInteger (signed)8
DurationInteger (unsigned)4
MinPriceInteger (signed)8
MaxPriceInteger (signed)8
PriceZeroAllowedInteger (unsigned)1
PriceNegativeAllowedInteger (unsigned)1
FeeTypeOne of FeeType1
FeeMakerInteger (signed)8
FeeTakerInteger (signed)8
MinFeePerOrderMakerInteger (signed)8
MinFeePerOrderTakerInteger (signed)8
MaxFeePerTradeBuyInteger (signed)8
MaxFeePerTradeSellInteger (signed)8
MaxFeePerTradeMakerInteger (signed)8
MaxFeePerTradeTakerInteger (signed)8
MatchingPriorityTypeOne of MatchingPriorityType1If set to 1, indicates that for this InstrumentMarket, Market Maker orders will be placed at head of each order book (by price).
HiddenMinValueInteger (signed)8
CurrencyForeign key to Instrument8An Instrument is the entity that represents something to be traded in MarketGrid. In order for an Instrument to trade it must be listed on a Market_ to produce an InstrumentMarket_. Each Instrument may be traded simultaneously on one or more Markets, each such instance being an InstrumentMarket_.
SettlementCurrencyForeign key to Instrument8An Instrument is the entity that represents something to be traded in MarketGrid. In order for an Instrument to trade it must be listed on a Market_ to produce an InstrumentMarket_. Each Instrument may be traded simultaneously on one or more Markets, each such instance being an InstrumentMarket_.
ExternalSettlementAccountProviderForeign key to ExternalAccountProvider8This is a reference to the ExternalAccountProvider table. It is keyed by the ExternalSettlementAccountProvider column in this table to the Id column in the ExternalAccountProvider table.
OrderOverrideSet of OrderOverride4Controls which fields (such as Currency etc.) may be over-ridden in an Order for this InstrumentMarket.
OrderPriceLimitUpLTPInteger (signed)8
OrderPriceLimitUpRefInteger (signed)8
OrderPriceLimitDownLTPInteger (signed)8
OrderPriceLimitDownRefInteger (signed)8
CircuitBreakerUpLTPInteger (signed)8
CircuitBreakerUpRefInteger (signed)8
CircuitBreakerDownLTPInteger (signed)8
CircuitBreakerDownRefInteger (signed)8
MinOrderPriceInteger (signed)8
MaxOrderPriceInteger (signed)8
MinOrderPriceLTPInteger (signed)8
MinOrderPriceRefInteger (signed)8
MaxOrderPriceLTPInteger (signed)8
MaxOrderPriceRefInteger (signed)8
Level1LastInteger (signed)8Saved last price for when Matching Engine is shut down
Level1ChangeInteger (signed)8Saved price change for when Matching Engine is shut down
Level1PercentChangeInteger (signed)8Saved percent price change for when Matching Engine is shut down
Level1HighInteger (signed)8Saved all-time high price for when Matching Engine is shut down
Level1LowInteger (signed)8Saved all-time low price for when Matching Engine is shut down
Level1VolumeInteger (signed)8Saved volume for when Matching Engine is shut down
Level1ValueInteger (signed)8Saved value for when Matching Engine is shut down
SortIndexInteger (unsigned)2The position in which this InstrumentMarket should appear in the UI.
ValuesValue array (Level1_Values)408 (51@8)
ProjectTypeForeign key to ProjectType8Used to create a Virtual InstrumentMarket for XCHG Level3 display on Voluntary Market.
CountryForeign key to Country8Used to create a Virtual InstrumentMarket for XCHG Level3 display on Voluntary Market.
AuctionTypeSet of AuctionType1An enum set that can be used to determine the type of CCMX Auction that this InstrumentMarket is for (if any).
SharesFullyDilutedInteger (signed)8
UpdateNumberInteger (unsigned)8A number that records every change that happens to a record. It is primarily used to avoid write after read problems when an intermediate write has changed the originally read record.
OwnerUserForeign key to User8The Id of the User that owns this InstrumentMarket.
OwnerGroupForeign key to Group8The Id of the Group that owns this InstrumentMarket.
OwnerFirmForeign key to Firm8The Id of the Firm that owns this InstrumentMarket.
CreateUserForeign key to User8The Id of the User that created this InstrumentMarket.
CreateTimestampInteger (unsigned)8The time at which this InstrumentMarket was created.
UpdateUserForeign key to User8The Id of the User that last updated this InstrumentMarket.
UpdateTimestampInteger (unsigned)8The time at which this InstrumentMarket was last updated.

Foreign Keys

The following diagram shows the tables that have a foreign key link to the InstrumentMarket table. All Table nodes can be clicked to take you to that table's definition page.

graph LR;
	Auction-->|InstrumentMarket|InstrumentMarket
	click Auction "/marketgrid/developer/model/tables/Auction"
	Fee-->|InstrumentMarket|InstrumentMarket
	click Fee "/marketgrid/developer/model/tables/Fee"
	OrderBook-->|InstrumentMarket|InstrumentMarket
	click OrderBook "/marketgrid/developer/model/tables/OrderBook"
	Order-->|InstrumentMarket|InstrumentMarket
	click Order "/marketgrid/developer/model/tables/Order"
	OrderNotional-->|InstrumentMarket|InstrumentMarket
	click OrderNotional "/marketgrid/developer/model/tables/OrderNotional"
	Trade-->|InstrumentMarket|InstrumentMarket
	click Trade "/marketgrid/developer/model/tables/Trade"