Profiteer Engine
The “Axonetric LLC: Profiteer Engine” is a sophisticated and feature-rich job that allows users to automatically seek out and execute on edge-based opportunities, based upon different configurable strategies. The engine can operate in both liquidity-taking (ie, “removal trades”) and liquidity-making modes.
For each instrument(s) mapping, the user can specify detailed independent settings, including delta range, leg-expiration filters, strategy, mode, side, auto-hedging behavior, desired quantity, min/max order quantity, etc. Specifications are conveniently organized and edited through a grid view graphical control and rows can be activated and deactivated with the click of a checkbox.
The “Side” parameter in each row can be set as: “Buy”, “Buy Gamma”, “Buy Vega”, “Sell”, “Sell Gamma”, “Sell Vega”, “Buy and/or Sell”, “Close Out Position Only”, “Buy To Close”, or “Sell To Close”. Another user-defined setting, “Minimum Quantity Filtering”, allows for all derivative theoreticals to be computed against an underlying side that is widened by one tick when the size showing is too small (less than a threshold quantity). This reduces hedge mismatches and the impact of gaming activities. The “Profiteer Engine” has many high-performance optimizations built in for the greatest profitability and the lowest possible scan times in high-volume, many-instrument contexts. For example, changes in the underlying bid or ask are directly applied to their options and strategies via a lightning-fast 2nd-order Taylor series approximation that bypasses any cache-lookup delays.
While the liquidity-taking mode will execute IOC or FOK orders against the book, the liquidity-making mode will dynamically insert short-duration limit orders directly into detected trading bursts that meet edge criteria and a windowed minimum traded quantity. All parameters relevant to the liquidity-making mode (also known as “Dynamic Participation”) are also user-configurable, including “Trigger Traded Quantity”, “Quantity Accumulating Time Window”, “Limit Order Max Duration”, “Max Concurrent Orders”, etc.
The job tracks “in-play” quantities separately from executed quantities so that the user’s total “Desired Qty” will never be overshot regardless of how many orders are live concurrently. Any activated row will automatically deactivate after filling the user’s “Desired Qty”. The “Profiteer Engine” is also interoperable with, and takes advantage of, other algos in the Axonetric LLC suite (interoperability is optional and not required). For example, when the “Volatility Manager” job detects adverse or abnormal market conditions, it produces a signal that the “Profiteer Engine” watches for. Any active strategies operating on the affected symbol(s) will be automatically and instantly deactivated. As another example, hedging responsibilities can be assigned directly to the “Axonetric LLC: Auto-Hedger” job.
Please contact the developer at kevin@axonetric.com with any questions you might have regarding technicalities, client use cases, etc.
All of the variables below can be configured or modified at runtime. This gives users the power to modify their job behavior throughout the day without having to make code changes.
| Name | Type | Default | Description |
|---|---|---|---|
| hedgeBehaviorOverride | int | 0 | 0=Use per-row settings, 1=No auto-hedging, 2=Auto-hedge via Freeway, 3=Auto-hedge via Metro |
| closeOutOptionBehavior | int | 1 | 0=Separately neutralize calls/puts at strike, 1=Jointly neutralize calls/puts at strike |
| immediateOrderType | int | 0 | 0=IOC, 1=FOK |
| gammaSideThreshold | double | 0.0 | minimum absolute value for buying/selling gamma |
| vegaSideThreshold | double | 0.0 | minimum absolute value for buying/selling vega |
| dynPartQtyTimeWindowInSecs | int | 20 | 1-20 rolling time window over which traded qty is accumulated |
| dynPartMaxOrderDurationInMs | int | 5000 | orders will be automatically cancelled after this interval |
| dynPartMaxSimultaneousOrders | int | 4 | in total, for this job instance |
| disableNoOverlapConstraint | int | 1 | 0=Constraint is enabled, 1=Constraint is disabled |
| disablePositiveEdgeOnlyConstraint | int | 0 | 0=Constraint is enabled, 1=Constraint is disabled |
| listMatchingInstsOnActivations | int | 1 | 0=Do not list, 1=List in log |
| checkVolsOnActivations | int | 2 | 0=Do not check, 1=Check and abort, 2=Check and exclude |
| testInstId | string | will overrride the instrument string for all rows | |
| specialMode | int | 0 | 0=Normal, 1=AF-compatibility |
| verbosity | int | 2 | log detail level: 0=Minimal, 1=Basic, 2=Full |
| excludeInstrsWithText | string | optional comma-delimited list of search strings to exclude (case-sensitive) | |
| rowStateAfterRestart | int | 0 | 0=Deactivate all rows, 1=Reactivate previously active rows, 2=Reactivate all rows |
Remember that in Metro NOW, dashboards and widgets can be utilized in both OnRamp and Metro clients.
Related Resources
Insights from the Capital Markets Innovation Summit | New York 2026
Preparing for Intelligent, Continuous, and Fragmented Markets On September 10, Exegy hosted the Capital Markets Innovation Summit in New York, where leaders from across the industry discussed how artificial intelligence,…
Exegy and MarketsIO Announce Strategic Partnership to Deliver Modern Enterprise Market Data Infrastructure
The partnership offers a de-risked, readily achievable path to modern market data infrastructure across the latency spectrum. St. Louis / London / New York / Chicago – September 10, 2026…
Market Data Fragmentation and the 24/5 Trading Era
What’s Actually Changed Institutional trading isn’t expanding along one line anymore. New asset classes, new geographies, and 24/5 trading hours are all showing up at once. The result? Market data…

