How we built it
We built Market Worlds in Python, using libraries including NumPy, pandas, PyVista and Matplotlib. A small script scrapes stock data from Yahoo Finance, which we then preprocess to calculate volatility using standard financial formulas. Finally, we use multidimensional scaling (MDS) to measure how similar each stock is to the others and position them accordingly.
Challenges we ran into
This was our first time working as a group, and version control caused frequent merge conflicts that slowed us down. We overcame this through practice and by sharing knowledge across the team. Working in Python also meant juggling many modules for different parts of the code, which got confusing at times but pushed us towards better project structure. Finally, performance bottlenecks led us to explore faster approaches, such as compiling with Numba and precomputing values; we ultimately went with precomputation.
Accomplishments that we're proud of
Our noise calculation, and turning financial data into an engaging visual world.
What we learned
How to use version control effectively and collaborate as a team and the effectiveness of AI in modern software development.
What's next for Market Worlds
Improving performance, potentially by refactoring into a faster language. After that, we plan to turn the cube world fully into a sphere.