Package velox.api.layer1.data
Class InstrumentInfo
java.lang.Object
velox.api.layer1.data.InstrumentCoreInfo
velox.api.layer1.data.InstrumentInfo
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
InstrumentInfoCrypto
Information about the instrument
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic class -
Field Summary
FieldsModifier and TypeFieldDescriptionfinal longDelay in nanoseconds for the data of this instrument.final intfinal StringFull instrument name on the platforms where it's available, null otherwisefinal booleanIf this flag is set to true, then all add-ons, except those marked withUnrestrictedDataannotation, will be blocked from receiving data from this instrumentfinal booleanAllows bookmap to distinguish crypto instruments from other types.final booleanTrue if data provided for instrument is full depth datafinal booleanIf this flag is set to true, then this instrument supports NBBO data, and it is possible to create NBBO indicator for the instrumentfinal doubleSimilar to "tick value" in its meaning, with the only difference of being per price unit instead of per tick (can be computed as tick value divided bypips)final doubleAlso known as min tick, tick size or minimal price increment.final StringUsed to distinguish local history with special modes on the per instrument basis (i.e.final StringUsed to correctly handle "generic" instrument substitution.final doubleUsed when size granularity is less than 1 (for most providers it's always 1, so you can ignore this field if only those are targeted).static final longDelay value for thedataDelayfield, if the delay is currently unknown, but it is known that the data is delayed.Fields inherited from class velox.api.layer1.data.InstrumentCoreInfo
exchange, symbol, type -
Constructor Summary
ConstructorsModifierConstructorDescriptionInstrumentInfo(String symbol, String exchange, String type, double pips, double multiplier, String fullName, boolean isFullDepth) Deprecated.InstrumentInfo(String symbol, String exchange, String type, double pips, double multiplier, String fullName, boolean isFullDepth, double sizeMultiplier) Deprecated.useInstrumentInfo.BuilderinsteadInstrumentInfo(String symbol, String exchange, String type, double pips, double multiplier, String fullName, boolean isFullDepth, double sizeMultiplier, boolean isCrypto) Deprecated.useInstrumentInfo.BuilderinsteadprotectedInstrumentInfo(InstrumentInfo.BuilderBase<?> builder) -
Method Summary
Methods inherited from class velox.api.layer1.data.InstrumentCoreInfo
equals, hashCode, normalize
-
Field Details
-
UNKNOWN_DELAY
public static final long UNKNOWN_DELAYDelay value for thedataDelayfield, if the delay is currently unknown, but it is known that the data is delayed. Used to inform the Bookmap about some data delay.- See Also:
-
pips
public final double pipsAlso known as min tick, tick size or minimal price increment. This allows bookmap to translate level numbers to price that is shown to the user and vice versa -
multiplier
public final double multiplierSimilar to "tick value" in its meaning, with the only difference of being per price unit instead of per tick (can be computed as tick value divided bypips)Specifically, this field tells bookmap the following: "how many dollars (or other currency units) will my P&L change if I have position of 1 and price moves 1 dollar (or other price unit) up"
If you (as a data provider) send anInstrumentInfowithmultiplierset toDouble.NaN, it will be interpreted as an indication that data for the instrument is not yet available. In this case, the instrument is treated as a "placeholder", and it is expected that a validInstrumentInfowith a proper multiplier will be sent as soon as the data becomes available.
Internally, Bookmap will wait until all placeholders are replaced with valid instruments before restoring the instrument tab order as previously configured by the user.
Note: You should not rely on this internal behavior, as it may change in future versions. It is recommended to send a complete and validInstrumentInfowith a proper multiplier as early as possible, and only once per subscription request. -
fullName
Full instrument name on the platforms where it's available, null otherwise -
isFullDepth
public final boolean isFullDepthTrue if data provided for instrument is full depth data -
sizeMultiplier
public final double sizeMultiplierUsed when size granularity is less than 1 (for most providers it's always 1, so you can ignore this field if only those are targeted). This is only a visual thing, as all updates should still be performed in integer units. It was introduced mostly because of cryptocurrencies - since sizes are no longer integer values, you can premultiply all sizes by certain value and specify it in this field. E.g. 1000 will make bookmap display size of 1 as 0.001. -
isCrypto
public final boolean isCryptoAllows bookmap to distinguish crypto instruments from other types. If true - this instrument is a cryptocurrency or is based on cryptocurrencies in some way -
recordingTag
Used to distinguish local history with special modes on the per instrument basis (i.e. local history with delayed data vs live data) Provider should set this field to specify special mode of this instrument,"DELAYED" for example
Note: it is recommended to not set this field for LIVE instruments for backward compatibility of historical servers, i.e. so the historical server returned "live" data to the user with the old client -
isApiProtected
public final boolean isApiProtectedIf this flag is set to true, then all add-ons, except those marked withUnrestrictedDataannotation, will be blocked from receiving data from this instrument -
isNbboSupported
public final boolean isNbboSupportedIf this flag is set to true, then this instrument supports NBBO data, and it is possible to create NBBO indicator for the instrument -
dataDelay
public final long dataDelayDelay in nanoseconds for the data of this instrument. If delay is currently unknown, but it is known that the data is delayed, then you should set this field toUNKNOWN_DELAY, to inform the Bookmap that the data is delayed (so the Bookmap can apply some restrictions for delayed data instruments). -
requestedSymbol
Used to correctly handle "generic" instrument substitution. If your provider wants to subscribe to the instrument with a different symbol than you received in subscription request (for example you received "ES" and want to subscribe to "ESH4"), then you should set this field to the symbol which you received in request. -
defaultLotSize
public final int defaultLotSize
-
-
Constructor Details
-
InstrumentInfo
@Deprecated public InstrumentInfo(String symbol, String exchange, String type, double pips, double multiplier, String fullName, boolean isFullDepth, double sizeMultiplier, boolean isCrypto) Deprecated.useInstrumentInfo.Builderinstead -
InstrumentInfo
@Deprecated public InstrumentInfo(String symbol, String exchange, String type, double pips, double multiplier, String fullName, boolean isFullDepth, double sizeMultiplier) Deprecated.useInstrumentInfo.BuilderinsteadSimilar toInstrumentInfo(String, String, String, double, double, String, boolean, double, boolean), assumesisCryptofalse -
InstrumentInfo
@Deprecated public InstrumentInfo(String symbol, String exchange, String type, double pips, double multiplier, String fullName, boolean isFullDepth) Deprecated.useInstrumentInfo.Builderinstead -
InstrumentInfo
-
-
Method Details
-
toBuilder
- Overrides:
toBuilderin classInstrumentCoreInfo
-
toString
- Overrides:
toStringin classInstrumentCoreInfo
-
InstrumentInfo.Builderinstead