The Product

The project focused on developing an automated autonomous trading system comprising three key components: Trading Agents (TAs), a Dealmaker, and an Arbiter. This system was designed to utilize multiple trading strategies, including both pre-determined heuristic strategies and real-time generative AI strategies. The primary objective was to create a software framework with autonomous trading agents that work towards predefined targets by buying and selling valuable items, with values expressed in prices. This resulted in a software foundation capable of addressing real-world problems such as task scheduling, while also serving as a valuable tool for demonstrations and educational activities. The system's main components include: 1. Trading Agents (TAs): Each TA operates with a currency budget and an inventory of items. TAs employ either heuristic or AI-driven trading strategies to achieve their targets. 2. Dealmaker: This component is responsible for matching buy and sell offers created by the TAs. 3. Arbiter: Acting as a referee, the Arbiter ensures the validity of all moves and determines when to end the game based on specific conditions. This innovative system provides a versatile platform for exploring autonomous trading dynamics and strategy optimization in various contexts.


The Customer

The client for this project is Leiden University, represented by Richard van Dijk. Richard van Dijk is employed at LIACS, as a research software engineer. We have had weekly meeting with our client, every Friday. Every meeting had a duration of roughly one hour. Thanks to Richard's great experience in the field, he has been a tremendous help in the development of the software. Especially in the conceptualisation of the problem, the Scrum process, and project managing techniques. He was very involved in the project and always ready to provide feedback, therefore he felt more like a team member than a client.

  • "If we integrate it with AI, we don't have to write our own strategies."
  • "How do you even write a test for an AI strategy?"
  • "Why do ALL requirements have to be written in user stories, that doesn't make any sense!"
  • "buy offer from TA 0 for 10 I will buy apples for 1 euro per I will buy apple"
The Team

Our team consisted of three Computer Science & Mathematics students, one Computer Science student, and two Computer Science & Economics students. We split the workload according to the individual strengths. This resulted one team of four members, responsible for the back-end development, and another team of two members, responsible for the scrum process, reporting and development of the front-end.


The Technologies