Extracting Data from a Contract Note with babylon-table
A worked example showing how babylon-table extracts tagged PDF tables from a contract-note-style Trade Statement and uses its DSL to convert formatted strings into clean transaction data.
Practical articles on financial data, financial documents, APIs, data extraction and the engineering behind Babylon.
A worked example showing how babylon-table extracts tagged PDF tables from a contract-note-style Trade Statement and uses its DSL to convert formatted strings into clean transaction data.
Why we open-sourced babylon-table: a small Java table library designed for financial data ingestion, immutable columns, dependency-free use, byte-level CSV parsing, streaming CSV import, and DSL-driven data transformation.
A small experiment with PDFBox showed that creating a clear, machine-readable contract note is not especially difficult, which makes email-only trade confirmations harder to understand.
A compact identifier seems simple until it has to be read, typed, sorted, corrected, and printed without accidentally spelling awkward words.
EasyEquities has transformed retail investing in South Africa, but access to transaction data remains unnecessarily difficult. Why transaction confirmations, machine-readable trade histories, and stable security identifiers matter for transparency, reconciliation, and investor trust.
How Codex 5.4 transformed modular refactoring from a slow, manual task into an automated architectural workflow.
How the OpenAI Codex app helped review, test and modularise a Java codebase, where it struggled, and how it changed the development workflow.
How Babylon Dashboard developed from an idea into a working platform for capital gains, cash-flow analysis, account views and government bonds.
How a semantic inference engine interprets and standardises tabular trade data from diverse sources, without relying on predefined CSV or Excel formats.
What NOrd (“-N”) shares mean on the JSE, why they carry reduced voting rights, how the 1999 rules changed them, and current examples of NOrd listings.
Extracting structured Babylon segment ledger data from a free-text description using Subject-Verb-Object (SVO) identification.
On the LSE, “GBP” was the ticker for Global Petroleum Limited—not the pound. A neat reminder that context matters in markets and in NLP.
How Babylon’s gainSince parameter lets you rebase holdings when changing tax jurisdiction — replacing pre-date trades with a notional rebasing to calculate gains from a new start point.
Use Excel’s Stocks and Currency data types to bring delayed market and foreign-exchange data into Babylon segment ledgers and position calculations.
Introducing the Babylon Portfolio Segment — a core concept that defines the natural partition of a portfolio, ensuring every security and its trades belong to one, and only one, ledger.
How Babylon extends familiar API query parameters with compact colon operators for exclusions, lists, ranges and richer filtering.
Why equity data shows unusual codes like GBX, ZAC, and EUC — not typos, but shorthand for prices quoted in minor units such as pennies or cents.