Cryptocurrency market simulation
A dynamic simulation of the cryptocurrency market, featuring agents entering the market over time with objectives focused on either mining or trading. An agent's actions at any given moment are influenced by various factors, including its individual tendency to follow market trends, the level of interest in the currency, and external events. Some agents, for example, are likely to sell when the price starts to drop, to avoid selling too late. Others are likely to follow the decision made by the majority of other agents, or maybe they base their decision on real-world events like a market crash of another cryptocurrency.
My work
• Implemented the blockchain mechanism in Java
• Constructed the main loop of the simulation, the trading of the currency in a decentralized way
• Implemented the decision making of agents and their custom behavior types
What I learned
• How to work with cryptographic hash functions (e.g. SHA-256)
• Theoretical knowledge about blockchains, ledgers, and the merkle tree data structure
• Improved on my skills on managing concurrent access to shared resources in Java