Nov 22, 2022 6 MIN

Introduction to the Attribution Toolkit

In the last months students from the RMIT University of Australia designed a Portfolio Attribution toolkit that will become available in the next major release of the OpenBB Terminal which will go out on the 29th of November.

blog hero

In an earlier blogpost on the 18th of October, we introduced that we worked together with students from the RMIT University in Australia. These students have been hard at work as part of one of their courses to work on a well-established open source project, they picked OpenBB. In the last months they designed a Portfolio Attribution toolkit that will become available in the next major release of the OpenBB Terminal which will go out on the 29th of November. Find a sneak peek down below.

Within this blogpost we asked the students what they thought about their first contribution to an open source project.

What is the background of the team?

We are a team of data scientists studying at RMIT University in Melbourne, Australia. We all share an interest in the financial markets and quantitative analytics. Being first time open-source contributors, this collaboration with OpenBB was a great opportunity to apply and hone our skills in a way that would benefit the wider investment community.

How did you hear about OpenBB?

We first heard about OpenBB through RMIT. We were provided with an assignment brief which listed a series of data sources to use, one of which was the OpenBB Terminal.

When and why did you decide that building on top of OpenBB would be a good thing?

After some initial research into OpenBB, we were pleasantly surprised by both the breadth and depth of analysis available through the platform. We agreed that working with the OpenBB Terminal would allow for us to develop innovative solutions and held the most exciting prospects.

The decision to build directly on top of the terminal, however, was from a suggestion by OpenBB's Product Manager, Jeroen Bouma, who reached out to us after we posted a query on Discord about working with the OpenBB platform for an assignment.

When and why did you decide to make an attribution toolkit?

We bounced a number of potential solutions between OpenBB and RMIT before settling on the attribution toolkit. The idea originally came from Jeroen who highlighted the need for the feature as well as suggestions on how to approach the solution. Whilst it took a little while to wrap our heads around the concept, once we understood the value add, the team was understandably excited and keen to get the project underway.

What are your views on open-source products?

Open-source products are a great way to get connected with others from around the globe with common interests and to contribute to the wider development community. They are a great way to learn from other developers, solidify knowledge though applying skills and to challenge oneself, in an accessible, no-cost way.

What was your experience interacting with OpenBB codebase?

Interacting with the codebase was relatively straight forward and simple. The codebase adheres to good coding practices and SOLID principles, and is well documented, allowing for smooth integration of our attribution toolkit.

When we came across difficulties due to gaps in our knowledge, we were supported each step of the way by the OpenBB Discord community and staff.

What did you learn along the way?

The domain of this project helped immerse all of us into the world of financial terminology and knowledge, including even those who had no prior financial experience.

Ultimately though, it can be said that the real skill gained from this project was the teamwork experience, conducting the project almost entirely remotely, and using industry Agile methodologies and applications to maximise our efficiency.

The principle of iterative improvements came in very useful, as we had to navigate through a winding journey to match up the product, we wanted to build with what the stakeholder(s) wanted.

Due to the collaborative nature of open-source products, we were able to learn about following a code structure and style as well as integrating new code into an existing codebase, through Git forks and branches.

Would you recommend others to contribute to the project?

We would highly recommend others to contribute to the OpenBB platform, we found it to be a fun and friendly project to engage with. The support we received was excellent, response times were very timely, due to the active Discord community and the dedication of their staff. The entire OpenBB network made us feel welcomed and our additions valued.

When it came time to submit the pull request, something we were all new to, we received a lot of help from Jeroen and the OpenBB team that allowed us to successfully complete the pull request and ultimately have our toolkit added to the OpenBB platform.

How can people reach out to you in case they want to know more?

The Attribution Toolkit Team was made up of:

Denzel Tan - LinkedIn

Denzel is a data scientist particularly interested in Sports Analytics and Betting. He currently works in the Gaming Industry, overseeing Slot Machines and Sports Betting. In his free time, you can find him learning marketing, watching UFC, and making GymToks.

Louise Platts - LinkedIn

Louise is an aspiring software developer, with a keen interest in cloud computing and its applications. Contributing to OpenBB allowed her to understand the importance of code quality and extensibility.

Samuel Macintyre - LinkedIn

Sam is an experienced data engineer, aspiring quant, and practical philosopher. His career interests lie in the applications of data science in buy-side asset management. Contributing to OpenBB allowed him to further develop his programming skills, domain knowledge and understanding of open-source contribution.

Alex Hallson - LinkedIn

Alex is looking forward to furthering his experience within the world of data science and is interested in the field of natural language processing.

Explore the OpenBB Ecosystem

Visit the OpenBB Hub

We use cookies

This website uses cookies to meausure and improve your user experience.