SubscriptionParams specifies details to manage instrument subscriptions.
More...
#include <B2BITS_IceImpactInstruments.h>
SubscriptionParams specifies details to manage instrument subscriptions.
IceImpact::SubscriptionParams::SubscriptionParams |
( |
| ) |
|
|
inline |
Subscription Mask to be used when subscribeToAllInstrumentsXXX is enabled this mask is overriden by the subscription parameter passed to subscribeToAllInstruments()
Int64 IceImpact::SubscriptionParams::defaultUserCookie |
user Cookie to be passed to onBBO/onMessage callbacks when subscribeToAllInstruments is enabled Default value can be overridden by subscribeToAllInstruments calls
bool IceImpact::SubscriptionParams::highlyConcurrentBBOFanout_PriceLevel |
Deliver instrument updates to user callbacks in highly concurrent manner, splitting event flows into multiple threads whenever possible. One incoming UDP packet can cause user callbacks invoked in multiple threads. This helps to decrease the average latency in case of mass subscription, but will increase the latency when subscribing to smaller number of instruments. This mode works when PerformanceParameters::performanceProfile is set to LowLatency (this is the default setting) provided there's enough number of cpu cores to activate this feature. This setting controls the BBO flow splitting behavior on TOP5 and TOB channels. Caution: enabling the feature results in onMessageFlowReset and one of the instrument specific onBBO, onMessage, onInstrumentReset callbacks to be potentially called concurrently
- See Also
- spreadEventFlows_PriceLevel Default value: false
bool IceImpact::SubscriptionParams::highlyConcurrentMessageFanout_FOD |
- See Also
- spreadEventFlows_PriceLevel This setting controls the flow splitting behavior on Full Order Depth (FOD) channels. Note: messages related to the same instrument are delivered sequentially to the same thread (not concurrently). Caution: enabling the feature results in onMessageFlowReset and one of the instrument specific onMessage, onInstrumentReset callbacks to be potentially called concurrently Default value: false
bool IceImpact::SubscriptionParams::highlyConcurrentMessageFanout_PriceLevel |
- See Also
- spreadEventFlows_PriceLevel This setting controls the message flow splitting behavior on Full Order Depth (FOD) channels. Note: messages related to the same instrument are delivered sequentially to the same thread (not concurrently). Caution: enabling the feature results in onMessageFlowReset and one of the instrument specific onBBO, onMessage, onInstrumentReset callbacks to be potentially called concurrently Default value: false
bool IceImpact::SubscriptionParams::subscribeToAllInstrumentsFOD |
Subscribe to all instruments including new product definitions that appear intra-day defaultSubscriptionMask, defaultUserCookie values are applied to each instrument when subscribed or the same parameters passed to subscribeToAllInstruments() are used respectively This affects all FOD channels.
bool IceImpact::SubscriptionParams::subscribeToAllInstrumentsTOB |
Subscribe to all instruments including new product definitions that appear intra-day defaultSubscriptionMask, defaultUserCookie values are applied to each instrument when subscribed or the same parameters passed to subscribeToAllInstruments() are used respectively This affects all TOB channels (Options).
bool IceImpact::SubscriptionParams::subscribeToAllInstrumentsTOP5 |
Subscribe to all instruments including new product definitions that appear intra-day defaultSubscriptionMask, defaultUserCookie values are applied to each instrument when subscribed or the same parameters passed to subscribeToAllInstruments() are used respectively This affects all TOP5 channels.
bool IceImpact::SubscriptionParams::tickerPlantMode |
Keep all known instruments' BBO updated regardless if instrument was subscribed or not.
bool IceImpact::SubscriptionParams::useBBOConflation |
Conflate BBO updates. If a newer BBO update available it will supercede an older one at the moment of delivery. This helps to keep the user appication up-to-date at times when it becomes slower to consume the events.