An unofficial insider's guide to learning BQL on BQuant
TL:DR An insight into the design of the user journey for learning the Bloomberg Query Language on BQuant, Bloomberg's quantitative analysis platform
In case you still haven't heard (where have you been?), BQL is the Bloomberg Query Language, an API that enables users to retrieve and analyze normalized, curated, and point-in-time Bloomberg data. With BQL, you can easily perform custom calculations directly in the Bloomberg Cloud and streamline arithmetic and statistical operations, filtering, grouping, scoring, and dates-based analysis. Synthesizing large amounts of data and extracting the exact information needed can be done through easy-to-learn syntax.
Whilst it's not the solution for every problem (if you need real time streaming Bloomberg data to drive a third party app, Server API might better suit your needs), the three big benefits of linked data, custom factor creation, and server-side data manipulation are undeniable to many.
For the past six years, I led our team working with clients across the DACH region (Germany, Austria, Switzerland), introducing and teaching them how to use BQL, initially in Excel and then in Python. I kickstarted a monthly newsletter called the BQL Spotlight, which showcased workflow templates in Excel and garnered over 20,000+ readers (and still available on Bloomberg today). I coordinated and contributed to the core BQL reference documentation on BQLX<GO> such as BQL for Fixed Income/ESG/Funds in Excel and ran user workshops, presented webinars and wrote articles on the topic for the Bloomberg Markets magazine.
A very lovely familiar sight
Over the years, we realised a few things...
As a result of realizing 1 and 2, we learned that our clients are at various stages in their journey to using BQL and we can work with them to help them get there. When they do, they delight in writing queries and exploring new horizons.
A visual depiction of how it feels when you start to understand BQL
So how do we address this?
Over the period of a year, I initiated and coordinated our team's work to design a learning path for users to learn BQL in BQuant. It looked like this:
Introduction: A user must first understand the benefits of learning BQL for their everyday analysis to see the value of investing their time and energy to learn something new. A FI PM must see that they are able to screen their portfolio for the biggest movers in seconds vs half an hour. An Equity analyst must see how to generate new ideas in Chinese nanotech according to their own criteria in moments rather than a laboured process on terminal.
Beginner: Once they find their reason, the user must learn BQL from the basic stepping stones with material that's relevant to them. A fixed income user needs to learn about manipulating spread, yield and payment ranks. An equity user needs to understand how to break down analyst revisions and broker estimates. There's no point confusing the two.
Advanced: With the basic steps in hand, they are then able to continue on to learn advanced concepts such as grouping, ungrouping(!), rolling correlation and string manipulation to get what you need. Suddenly you're able to generate issuance analysis and dissect your data by ranking, deciles, sector relative percentiles.
Apply/Workflows: Now with a strong toolkit in hand, the user can combine these skills with Python widgets and Pandas to design their own apps for interactive analysis.
A colleague commented: is this a depiction of your day working from home? Sometimes...
Recommended by LinkedIn
The team and I started small. Mainly together with my colleague Ryo Nishizuka, I wrote the BQuant Basics series of webinars which showcased key workflows that BQL enables across different asset classes. These were well received and served as the cornerstones for Introduction. Next, we translated a training course for Fixed Income BQL from Excel into Python and taught this internally, recording and editing for many hours. We launched the course in Germany and tweaked the material following feedback.
Over the course of a year, we wrote the following documentation:
a) A curated guide to BQL functions in Python with examples rooted in finance
b) Step by step guides from beginners and advanced for Fixed Income, Equity, Funds, ESG and Macroeconomics.
With momentum behind us, I recruited some keen beans to help (shout out to Vikram Pappachan who wrote most of BQNT Equity and Anna Shkuratova who helped to write BQNT ESG with me).
BQNT ESG, as of April 2022
Working with our developer advocate, Wes Heginbotham, and our engineering group, we made this material available for anyone with access to the BQuant platform. Firstly, by adding these projects to the starting index of a user's starter projects. Secondly, by allowing any user to open these projects by simply running a command on their Bloomberg Terminal such as BQNT FI<GO>, BQNT EQUITIES<GO>, BQNT FUNDS<GO>, BQNT ECO<GO> or BQNT ESG<GO>.
Every BQuant user's main repository for BQL Resources - try one of the shortcuts!
Finally, I coordinated a global workgroup (including Ryan Jazayeri in New York and Yves Tran in Singapore) to collect all of the key demo applications across the world and curate the best in class into these projects. We designed brochures in pdfs for each asset class to make it easy for our relationship teams to communicate the benefits of BQL in BQuant to our users across the world, and promoted it in training sessions around the world.
BQL for Portfolio SFDR alignment, Score analysis and other ESG workflows on show
Looking back, this was hundreds, if not thousands, of lines of code. The work is by no means perfect - I'm not a trained documentation writer, professional programmer, nor was I the product owner for either BQL or BQuant. Nevertheless, what it is, is a consistent and comprehensive piece of work, that is designed to give a user a way to learn and reference the intricacies of a brand new language. It is the condensing of over half a decades' experience and the culmination of a multi-year labour of love, writing in the middle of the night, to give users a way to learn from those before them to leverage the latest in technologies for their financial analysis. Since then:
Check out BQNT Workflows, a new dashboard to highlight featured workflows using BQL and BQuant
If you've come this far, hopefully you've learned a thing or two about where to go to learn BQL in BQuant. This was an untold story that I felt deserved its moment of recognition. For further information, please speak to your friendly Bloomberg relationship team or BQuant specialist team.