It’s been almost four years since the first public version of MesoSim was released.
During this time, MesoSim has continued to evolve - we’ve added tools to analyze strategy performance (Tearsheets, Event Log Analytics via DataVoyager, Risk Graphs in PositionMonitor), extended the Strategy Definition with three new Conditional Adjustments, introduced Reg-T and Portfolio Margin, and expanded Data Coverage with more tradable instruments. Many other smaller improvements are listed in the release notes.
Throughout these ongoing developments, our goal has been to minimize disruption by maintaining backward compatibility. As active traders ourselves, we understand the frustration that comes from unstable results or lack of reproducibility. We’re proud to say we achieved that goal: even the earliest backtests still run today without manual intervention.
Over time, we’ve learned how users use (and mis-use) our tools and identified the main design pitfalls and usability footguns. Most of these have been resolved, but a few issues required deeper, behavioral changes that would alter how strategy plans are processed – and therefore how results are generated. We decided to group these design corrections into a single major release to minimize the migration burden for our users.
Some of these design improvements include:
-
Job Definition structure:
Originally tailored for backtesting, but with MesoLive we now support live trading. Structural updates are required to better support both:-
Dedicated
Backtestsection defining backtest parameters -
A generic
Settingssection that applies to both Simulator and Live Trading -
Support for Leg Groups to manage live, complex orders
-
-
Strategy Definition updates:
-
The
StrikeSelectorwas too eager - we added which were rarely used: IV, Theta, Vega. -
The
Statementselector didn’t have an intuitive name -
The
Indicatorsection superseded by External Data, which provides a more flexible and powerful integration with external indicator sources
-
-
Variable refinements:
-
Account-related variables (
acc_*) saw limited use and became less relevant after introducing MesoLive -
Timing variables (
DIT,DTE) lacked sufficient resolution - they used integer days, limiting precision
-
A major feature we’ve long wanted to add is the Option Valuation Model used in our Risk Graph. This became the key release driver for MesoSim v3.0. To expose it accurately, we needed to resolve the DTE and DIT precision issues. Since these changes are inherently backward-incompatible, we decided to implement all other known design corrections in the same release - ensuring that customers can migrate their jobs almost entirely automatically.
The end result isn’t just a cleaner design - it’s a more capable platform.
Key highlights include:
-
Option Valuation Model (Black-Scholes-Merton) to compute theoretical option prices and Greeks for any position or leg at any point in time from the ScriptEngine
-
Solver for the valuation model to identify high/low risk points and root crossings for Greeks or PnL
-
Timing Model to target key calendar events and exploiting seasonal patterns in options trading
-
Fully integrated documentation to streamline strategy development
-
Improved performance through reduced event size and .NET 10 framework updates
-
Automated migration tool to simplify the upgrade process from earlier versions
Stay tuned for the next release and let us know what else you’d like to see in MesoSIm in the comments!