Trading System Lab


A large selection of Order Management Systems (OMS) and Execution Management Systems (EMS) are available to the professional trader today. Many of these platforms provide for algorithmic trading interfaces using C, C#, JAVA or other languages. Typically, price or other data is processed through mathematical routines producing trading signals. These signals are executed upon via the EMS with orders tracked by the OMS. Since actual market fills may or may not match the desired positions, there should be state information available to the OMS so that orders may be modified based on differences between what the strategy shows as the current market position and what the actual market position is within the market.  Market position differences may exist for numerous reasons including busted trades, unfilled or partially filled orders, bad data, feed failures, etc. It is important that the EMS accurately trades the market in accordance with signals generated and managed by the OMS.

Trading System Lab and the Genetic Program

Trading System Lab (TSL) produces trading systems through a very fast algorithm known as a Genetic Program. The output of this algorithm is a structure of code that may be implemented in a variety of ways and on a variety of platforms.

Trading System Lab can interface with any trading platform that meets some simple criteria. First historical data must be available in both design mode and trading mode to populate the price and preprocessing arrays. Second, customization of price processing must be possible either through direct native language code or an API. This accomplishes the first requirement of designing and trading a TSL generated trading system.

The EMS/OMS must be capable of accepting TSL evolved code. This can be accomplished by accepting one of a variety of directly evolved or translated languages including C, JAVA, Assembler, C# or VB. This evolved code will operate on the preprocessed data accomplished over the available required historical data. The output of the TSL evolved code is a trading signal.

Trading signals may take several forms including stops, limits, market orders or combination signals. Multiple entry or exit signals may be created within the signal producing modules or money management routines may be evolved allowing for dynamic position sizing to occur based on optimum money management schemes evolved during the design process.

TSL provides a flexible method to implement TSL evolved trading strategies in most OMS/EMS platforms providing high and low frequency auto-execution capabilities.