OneChronos
OneChronos
    • Expressive Bidding

    • Introduction
      • Expressive Bidding in a Nutshell
    • Getting Started
    • Expressive Bidding Guide
    • Quickstart Examples
    • Runnable Templates
    • Developer Reference
    • Expressive Bidding FAQ

Expressive Bidding in a Nutshell

One of the defining features of a Smart Market is the ability to express highly customizable bidding preferences over one or more securities. OneChronos offers direct and indirect users this capability through “Expressive Bidding” — an optional toolset for creating custom, confidential orders that can help VWAP, IS, Liquidity Seeking, and other trading algorithms:

  • Respond dynamically to unique liquidity
  • Receive customized fills
  • Improve fill consistency
  • Reduce or avoid unintended execution risks

Expressive Bidding also allows you to express flexibility, for example, across substitutable symbols or the amount of desired price improvement for a given quantity. By giving investors and traders the ability to express what they need and where they’re flexible, the potential for their orders to interact in the market and receive improved execution increases dramatically. Note that Expressive Bidding is currently enabled for "Pairs" only (i.e. Expressive Orders consisting of two symbols). For more information, please see our Form ATS-N.

A key building block of Expressive Bidding is bidder logic — code that allows you to describe your preferences and constraints using auction-time inputs such as imbalance, spread, price dislocation, passing volume, quote fade (NBBO consensus), and many other variables. Bidder logic can be used by brokers to enhance their algorithms and smart-routing strategies, or by indirect users to complement parent or child level strategies, and to seek portfolio-level efficiencies that aren’t feasible using conventional execution tools. Bidder logic can capture powerful trading behaviors in just a few lines of code:


Pair Spread Full Template

Trade two securities at mid or better, but only if the price spread between them at auction time is greater than some customizable amount; otherwise don't participate:

let spread = abs(mid(a) - mid(b));
 
/* Trade both at mid or better only if spread constraint is met */
[subject_to(const(spread) >= const(arg.bidder_data.spread),
  place_notional(mid(a) * qty(a) + mid(b) * qty(b)))
];
Before Getting Started - Context on Expressive Bidding

OneChronos auctions use optimization to seek optimal matches across all orders instead of matching orders one-by-one. The optimization aims to maximize Aggregate Price Improvement (see FAQ question here for more info) across all orders and symbols. Each auction looks for the configuration of “winning” orders and per-security clearing prices that will result in the most price improvement dollars cleared while honoring all filled order constraints. By using Expressive Bidding, you are effectively injecting your constraints into our optimizer as hard boundary constraints for your orders. Said another way, your order(s) are either filled with all constraints honored or not filled at all.

Most trading and execution strategies can benefit from and be implemented with simple Expressive Bids. Examples of some common types of constraints and goals include:
  • Pairs: set minimum / maximum price spreads, quantity ratios, dollar balance, and other relative properties (live in production)
  • Single securities: utility or indifference curves, dynamic peg pricing (e.g., mid +/-), price improvement seeking, market impact management (not currently live)
  • Multi-symbol: benchmark tracking, factor goals or limits, bundle pricing, long/short dollar neutrality, spreads, substitutes, complements, hedging (not currently live)
  • These objectives are achieved using “bidder logic” - confidential code that users submit once and can activate using a FIX tag applied on their Limit Orders.

    Please speak with your broker on how they might incorporate Expressive Bidding for general use or on a customized basis to complement their trading algorithms or smart routing.If your firm is accustomed to computer-driven trading or execution, using Expressive Bidding directly will likely feel familiar to your existing development process. Expressive Bids are written in ReasonML, OCaml, or simple domain-specific languages supported by OneChronos.You can construct tailored bidder logic or work with your broker to use Expressive Bidding orders you send to them for potential execution at OneChronos.

    Smart Markets are designed to improve overall market quality, so you can benefit from Expressive Bidding without using it yourself. For example, when other participants express substitutability across securities, it expands matching opportunities both for themselves and for conventional contra orders in any of those securities. Expressive Bids can also simultaneously hedge new positions in a single transaction, so those providing liquidity may be comfortable doing so in larger sizes while still managing risk, resulting in potentially larger contra orders with unique characteristics.OneChronos optimizes for mutually beneficial outcomes across all orders and participants, regardless of order type used. So any user can benefit from the intrinsic properties of a periodic auction, further price improvement achievable, reduced impact, truly unique liquidity interaction points, and unlocking mutually beneficial trades that would likely otherwise not occur.

  • Construct bidder logic tailored to your execution objectives. Start from scratch or jump off any of our templates. Always feel free to reach out to info@onechronos.com for assistance.
  • Submit your bidder logic code to OneChronos via API or the Portal (not currently live - stay tuned for more info), or by working directly with OneChronos staff. Your code is effective starting the morning of T+1, pending completion of required UAT testing (if applicable). Upon submission, OneChronos immediately confirms the validation of your code and provides you a reference hash to apply as a FIX tag on your orders.
  • Invoke your bidder logic by sending Limit orders to your executing broker(s) with OneChronos as the destination, including the Bidder Logic reference hash in the designated FIX tag.
  • Take a look at the Getting Started page if you’re ready to take the next step, or reach out to your broker to see how they might incorporate Expressive Bidding into their algorithms or on a customized basis. Always feel free to reach out to us at info@onechronos.com for more information and for help with Expressive Bidding.