This is an implementation (in the Rust programming language) of an agent-based simulation of simple toy models for financial markets behavior similar to what is described in the paper Self-referential behaviour, overreaction and conventions in financial markets by Matthieu Wyart and Jean-Philippe Bouchaud.
The premise is that an asset is traded in a market by agents. This asset is represented by it's return series
Agents are also given a "learning" oportunity at each tick, by observing the results in the series and re-calibrating their internal decision engine.