Agent Based Models provide an in silico lab, where we can:
1. Capture our understanding of systems.
2. Test that understanding of the systems for coherence and comprehensiveness.
3. See how theory at the individual level creates aggregate patterns.
4. Validate that theory against real data at the aggregate and individual scale.
5. Make predictions about the system.
6. Test "what if?" scenarios to inform planning.
For a model to be adequate, it has to be ‘true’ in the sense that it represents a plausible candidate for the true data-generating process of the phenomenon of interest. Think of there being a real-world data generating process and a model data-generating process. The latter must be simpler than the former, and its ‘goodness’ is to be evaluated by comparing simulated outputs and real-world observations.
Our ABM environment offers the ability to re-create the data generating process, producing synthetic market data that is indistinguishable from a given real-world time series. This has the significant advantage of parameter adjustment which enables users to construct any potential scenario they choose. By introducing multiple potential market dynamics, firms can ensure their algos function under many types of stressed scenarios and are performant in the broadest range of eventualities.
The individual ‘agents’ inside the simulation are themselves autonomous trading algorithms, and the micro-level interactions of these entities, as they take trading decisions and submit orders to a venue, are what produces the synthetic market data. An execution algo can be inserted into this agent-based framework while the simulation is running, not only showing how it reacts to other algorithms but also simulating the emergent behavior of the market in response to such trades.