MiFID II Guide for the TT Platform

MIFID II Algorithmic Trading

MIFID II Algorithmic Trading

Introduction

Trading Technologies provides numerous automated trading tools across TT. Some of our automated trading tools have many different inputs, parameters and variations customers can use to tweak or modify the strategies behavior to suite their needs. Our goal is to simplify the list of tools that would need to be registered, which simply means the testing for each “Algo” can extensively cover the entire range of functionality. The following is the list of automated trading tools provided by Trading Technologies:

  • ADL: Users can develop their own custom algos using ADL, TT’s visual programming language consisting of drag-and-drop building blocks. If permissioned by an administrator users can deploy their custom algos to an Algo Server for execution.
  • Aggregator: Aggregator provides users the ability to create synthetic instruments that combine the markets of two or more instruments. Users can trade trade aggregated instruments that route orders to one or more exchange-listed instruments based on various parameters and rules as configured by the user.
  • Autospreader: Autospreader automates the legging of spreads between two or more instruments. Users define a synthetic spread, and Autospreader quotes in one or more legs of the spread based on the market in the other leg’s). If a quote is filled, Autospreader sends hedge orders in an attempt to leg into a spread at the desired price.
  • Autotrader: Autotrader is a market making algo that automatically places orders for an instrument based on parameters, formulas and values linked from Excel and optionally manages positions accumulated while running the algo.
  • Liquidate: Liquidate is a feature in TT that allows a user, with a single action, to cancel all existing orders for an instrument and then send an offsetting order for the same instrument to flatten an open position in that instrument.
  • Auto-liquidate: Auto-liquidate is an setting that a risk administrator can apply to an account. If applied to an account and the account’s credit loss on the day exceeds a specified percentage of allowable daily credit, Auto-liquidate will cancel all working orders in the account and send orders to flatten all open positions.
  • Sniper: The Sniper algo allows you to hide your intent to buy or sell at a given price until a desired quantity is available at that price.
  • Synthetic Order Types: TT provides a number of synthetic order types that are configured by the user and managed on a co-located server. Users specify an order quantity for an instrument and configure parameters for the parent synthetic order. The parameter values instruct the server how and when to send child orders into the market to fill the total quantity of the parent order. On TT, the synthetic order types are also known as SSE order types. 
  • Position Transfer: Position Transfer prevents traders within a trading group or firm from trading with one another by canceling both orders that may otherwise cross, creating synthetic fills for each order as if they did match with one another and submitting new orders when one of the orders is only partially filled as the result of the Position Transfer
 

Algo Oversight Counsel

Trading Technologies has created an Algo Oversight Counsel (AOC) to refine, monitor and communicate efforts to support MiFID II compliance within our algorithmic trading tools and execution platforms. Comprised of leadership in the areas of Product Development, Engineering, Quality Assurance and Product Documentation, the AOC advises the operation and refinement of the following:

  • Trading Technologies’s processes and toolsets within the software development lifecycle to assure that newly developed algorithmic trading tools as well as enhancements made to existing tools both support MiFID II compliance.
  • Tools to allow administrators and designated users to monitor algorithmic trading activity within TT to identify and resolve and problematic algo behavior.

Software Development Lifecycle and Operations

Trading Technologies has a formalized software development, testing and deployment process. The product development team consists of product managers, project managers and software engineers. Within the software engineering group at Trading Technologies, there is a dedicated Software Quality Engineering (SQE) team which is focused entirely on the testing of all TT software.

Requirements set forth in MiFID II inform the execution of Trading Technologies's software development lifecycle in the development of new algorithmic trading tools, the enhancement and repair of existing trading tools as well as oversight of their operation. In particular, Trading Technologies's development process includes record keeping, authorization and oversight in manner consistent with MiFID II requirements and subjects all proposed new features and enhancements to a rigorous testing process during development and monitors the operation of the development following deployment.

Record Keeping, Authorization and Oversight

Trading Technologies maintains a record of material changes to their algorithmic trading tools which includes the nature of the change, who approved the change, when the change was made, and by whom. To manage these changes, Trading Technologies does the following:

  • Uses an issue management system to document requirements, design, and testing as well as track changes to their software.  The issues are linked directly to the source code to provide traceability between requirements and changes. 
  • Uses a change management system to facilitate the change approval process for all normal and emergency changes to their customer facing environments.
  • Keeps test repositories, which retain historical test results for automated and manual test suites. These results are kept for at least one year but often longer.

Algo Development Testing

The Algo Oversight Council (AOC) specifically approves the development of any new algos and any changes to existing algos. The AOC also oversees the testing approach and reviews the test plans for all algos.  For TT, Trading Technologies maintains separate testing environments, one designed to mirror a typical customer deployment and one designed to mirror TT.  

TT's Software Quality Engineering (SQE) group conducts a battery of manual and automated tests, and conducts standard regression tests for all algos. Regression tests span all permutations of order submission, modification, and deletion at various stages throughout an order’s lifecycle.  Specific tests include:

  • Cancel
  • Cancel/Replace
  • Change
  • Increase/Decrease Quantity
  • Increase/Decrease Price
  • Delete Full order
  • Delete after partial fill and/or modification

Applicable tests are performed separately, targeting parent orders directly, then targeting child orders directly. TT validates accuracy of order and price detail, Fill, P&L, and Position data within these use cases.

Customers have the ability to test new releases of algos in a simulation environment prior to authorizing access by their users. Company administrators have granular control over which users have access to any of the algos. 

Client Notification of Material Changes to Algorithmic Trading Tools

Trading Technologies will communicate to customers any material changes to algorithmic trading tools that it provides as follows:

  • Post capacity testing and TT approval, the respective Algorithm Compliance Officer (ACO) at client investment firms will be notified of a pending release.
  • The ACO will be provided both with a confirmation of TT testing for capacity and resilience (where applicable) and a segregated non-production live environment in which to test and satisfy their own MiFID II compliance.
  • The Customer Success account manager will liaise directly with the ACO to notify of updates including ad hoc circulars and product documentation releases available by email, our website, training videos and application notifications on the GUI.
  • If issues arise that impact TT customers, TT sends email advisories to notify them of the issue and any subsequent updates on the issue.