Premise
I built this model on the premise that transcript-only analysis discards signal. The linguistic tone of an earnings call has been shown to predict abnormal returns and post-earnings announcement drift, and none of that survives being reduced to text.
Language is easy to optimise. Tone is not. Management can rehearse the words; the delivery is harder to control.
Approach
The system layers FinBERT sentiment over vocal stress features extracted with Wav2Vec2 and Librosa, scoring management confidence against the same timeline as the transcript.
What it produces is a tone-to-text divergence score: the places where the words and the delivery disagree. Alongside that it tracks narrative shifts across quarters and compares a company against its peers.
Role
I was the sole software engineer on a four-person team. I designed the system architecture and wrote most of the implementation; my teammates covered the economics and financial analysis.
Result
The divergence scores correlated with cumulative abnormal returns across the companies tested, and the tool was deployed as a live application.
Presented nationally against 28 university teams: 3rd in the UK in the CFA Institute AI Investment Challenge, with the work published by the CFA Society.





