Abstract:
Various systems and methods are described herein for product level risk checks. The product level risk checks are used to either allow or prevent a trading strategy to proceed. When a trading strategy is initiated, positions created by various contracts for the trading strategy are grouped based on their association with the same product. Then, an offsetting logic is applied at a contract level to offset at least some positions created for the same contract by various orders across the orders of the trading strategy.
Abstract:
Various systems and methods are provided for prioritized sending of transaction messages to an electronic exchange. According to one embodiment, a system determines a priority level for each transaction message based on a potential monetary reward or risk associated with sending or delaying the message. Once the priority levels are determined, the messages may be sent based on the priority levels. Additionally, each priority level may be associated with a predetermined threshold level. If a message threshold is reached, a new message corresponding to that priority level is queued until the message may be transmitted without exceeding the threshold limit.
Abstract:
Techniques for multicasting data to multiple clients are described. Each client stores an identifier indicating a data stream associated with, for example intended for, the client. A server receives the data streams, determines the identifier for each received data stream, transmits a mapping between the identifiers and respective multicast streams to the clients, and multicasts data of the received data streams in accordance with the mapping. By transmitting the mapping to the clients, and multicasting data of the received data streams in accordance with the mapping, each client may obtain data of the particular data stream with which they are associated.
Abstract:
System and method for dynamically managing message flow. According to the example embodiments, an intermediary network device or a client device dynamically manages the flow of messages received from an electronic exchange by analyzing the client device's capabilities, such as CPU utilization. Based on a percentage of total CPU utilization, the level of throttling is dynamically adjusted, such that if the percentage of CPU utilization, or load, increases, then throttling is increased from a lower level to a higher level. Similarly, if the percentage of CPU utilization decreases significantly enough, then throttling is decreased to a lower level.
Abstract:
Various systems and methods for trade order processing in an electronic trading environment are provided. The order processing includes initiating a first thread of instructions at a computing device to send a first trade order onto an electronic exchange. However, if one or more trade orders are identified during the process to send the first trade order, then the one or more orders are queued. When the first trade order is sent to the electronic exchange, then a second thread of instructions is initiated at the computing device to send the queued one or more trade orders (substantially together, if there is more than one) on to the electronic exchange.
Abstract:
System and method for dynamically managing message flow. According to the example embodiments, an intermediary network device or a client device dynamically manages the flow of messages received from an electronic exchange by analyzing the client device's capabilities, such as CPU utilization. Based on a percentage of total CPU utilization, the level of throttling is dynamically adjusted, such that if the percentage of CPU utilization, or load, increases, then throttling is increased from a lower level to a higher level. Similarly, if the percentage of CPU utilization decreases significantly enough, then throttling is decreased to a lower level.
Abstract:
Various systems and methods for presenting and interacting with electronic trading related information on a display screen of a computer system are provided. According to one or more embodiments, buttons are positioned and compressed along an axis, where each button corresponds to a function. A button can be selected through an action of a user input device. A button is removed from the region when a function corresponding to the button is no longer current and when the cursor is not positioned within the region. The remaining buttons, if any, in the region are compressed subsequent to removing the button from the region. A button is not removed from the region when the cursor is positioned within the region.
Abstract:
Various systems and methods are provided for prioritized sending of transaction messages to an electronic exchange. According to one embodiment, a system determines a priority level for each transaction message based on a potential monetary reward or risk associated with sending or delaying the message. Once the priority levels are determined, the messages may be sent based on the priority levels. Additionally, each priority level may be associated with a predetermined threshold level. If a message threshold is reached, a new message corresponding to that priority level is queued until the message may be transmitted without exceeding the threshold limit.
Abstract:
A quantity modifier and a price modifier are provided for a spread trading strategy having a desired spread price and a desired spread quantity. According to an example embodiment, a quantity modifier divides the desired spread quantity into a plurality of disclosed spread quantities. Once the disclosed quantities are determined, a plurality of disclosed spread orders having the disclosed spread quantities are sequentially submitted to the market until the full desired spread order quantity is executed or until a predefined condition is detected. A price modifier determines a price level for each disclosed spread quantity, such that each disclosed spread order may be submitted at a different price level.
Abstract:
Various systems and methods for presenting and interacting with electronic trading related information on a display screen of a computer system are provided. According to one or more embodiments, buttons are positioned and compressed along an axis, where each button corresponds to a function. A button can be selected through an action of a user input device. A button is removed from the region when a function corresponding to the button is no longer current and when the cursor is not positioned within the region. The remaining buttons, if any, in the region are compressed subsequent to removing the button from the region. A button is not removed from the region when the cursor is positioned within the region.