Background
Research-driven framework

Cross-sectional ESG integration built on empirical foundations, not vendor marketing

A quantitative methodology for embedding sustainability signals directly into systematic portfolio construction

We start from a simple observation: most ESG ratings predict reputation risk better than they predict financial outcomes. Our framework inverts the typical workflow — beginning with cross-sectional return patterns, then tracing which ESG signals actually carry information, and finally embedding those signals into factor models that preserve their predictive content. The result is a methodology that practitioners can defend to investment committees and that survives contact with live market data.

How we move from raw sustainability disclosures to factors that behave like traditional style exposures — with documented construction, known limitations, and testable predictions

Our methodology rests on three theoretical commitments: that ESG information is cross-sectionally heterogeneous, that its predictive content varies by regime and sector, and that naive aggregation destroys signal. These commitments shape every modelling choice we make.

Our methodology

A four-phase process that transforms raw ESG disclosures into deployable quantitative signals, with documented choices at every step and no black boxes between data and decision

Data harmonisation

Consolidate disparate ESG data sources into a unified, analysis-ready dataset with resolved identifiers, aligned fiscal periods, and explicit handling of missing values.

The goal

Create a single source of truth from multiple vendor datasets, regulatory filings, and alternative data streams, eliminating identifier mismatches and temporal misalignment that plague naive combinations.

What we do

We ingest data from commercial vendors, regulatory repositories, and proprietary client sources, mapping identifiers through a multi-layer reconciliation engine that handles corporate actions, subsidiary relationships, and temporal drift. Every field is tagged with provenance metadata, and conflicts between sources are flagged for analyst review rather than silently resolved.

How we do it

Our pipeline begins with legal-entity resolution using a combination of LEI mapping, ticker reconciliation, and fuzzy name matching validated against historical corporate action records. Temporal alignment uses fiscal-period end dates rather than vendor update timestamps, avoiding look-ahead bias from early releases. Missing data is flagged by type — never disclosed, disclosed but not collected, collected but not scored — because each category carries different informational content.

The tools

Python-based ETL framework with Pydantic validation, dbt for transformation lineage, custom reconciliation logic for entity resolution, and Apache Airflow for pipeline orchestration. All code is version-controlled and documented for client handover.

The result

A unified dataset with entity-level documentation, temporal alignment flags, missing-data categorisation, and provenance tracking for every field value.

Data Engineering team

Signal construction

Transform raw ESG metrics into cross-sectional factors that capture relative positioning within peer groups, controlling for sector, region, and market regime.

The goal

Build ESG signals that behave like traditional style factors — cross-sectionally predictive, economically interpretable, and robust to alternative specifications — rather than absolute ratings with no distributional context.

What we do

For each ESG metric, we compute industry-relative percentiles within GICS sub-industry groups, then adjust for region and market-cap effects that confound naive ranking. We model the cross-sectional distribution explicitly, identifying structural breaks and regime shifts that would invalidate standard normalisation assumptions.

How we do it

We begin with Winsorisation at the 1st and 99th percentiles to handle outliers, then compute z-scores within peer groups defined by GICS sub-industry and region. For metrics with known non-normal distributions — carbon intensity, for instance — we apply rank-based normalisation rather than parametric standardisation. Missing values are handled through multiple imputation when informative, or explicit flagging when absence itself carries signal.

The tools

R and Python statistical libraries, custom cross-sectional normalisation modules, regime-detection algorithms based on Markov-switching models, and interactive diagnostic dashboards for analyst review.

The result

A panel of cross-sectional ESG factors with documented construction, distributional diagnostics, and sensitivity analysis to alternative peer-group definitions and normalisation choices.
Quantitative Research team

Regression integration

Estimate how ESG factors interact with existing style and macro exposures, constructing purified signals that contribute incremental information rather than redundant loading.

The goal

Avoid the double-counting that plagues naive ESG integration, where a sustainability tilt inadvertently amplifies existing factor exposures rather than adding new predictive content.

What we do

We regress ESG factor returns against a comprehensive set of style factors — value, momentum, quality, low volatility — and macro exposures — interest rates, credit spreads, commodity prices. The residuals from this regression represent the incremental information content of ESG, controlling for known sources of return variation.

How we do it

Our regression framework uses rolling 36-month windows to capture time-varying factor loadings, with Bayesian shrinkage to stabilise estimates in small-sample regimes. We test for structural breaks using Chow tests and regime-switching models, and we validate out-of-sample using a strict embargo period. The output is not a single residual series but a distribution of possible specifications, allowing clients to choose their preferred level of purification.

The tools

R's quantmod and PerformanceAnalytics packages, custom Bayesian regression modules, parallel processing for rolling-window estimation, and interactive visualisation of factor loadings through time.

The result

Purified ESG factor series with documented regression specifications, loading histories, out-of-sample validation statistics, and sensitivity analysis to alternative factor models.
Cross-Sectional Modelling team

Portfolio optimisation

Translate purified ESG signals into implementable portfolio constraints and objective functions, accounting for transaction costs, liquidity, and risk limits.

The goal

Bridge the gap between elegant factor models and portfolios that can actually be traded, ensuring that theoretical alpha survives contact with market microstructure and institutional constraints.

What we do

We embed ESG signals into mean-variance optimisation frameworks as either alpha forecasts or risk constraints, depending on client objectives. We model transaction costs explicitly, including market impact, spread, and fees, and we enforce liquidity limits that prevent excessive concentration in thinly traded names.

How we do it

Our optimisation uses a proprietary transaction cost model calibrated to client-specific execution data, with turnover penalties that reflect actual trading costs rather than arbitrary assumptions. We solve using quadratic programming with custom constraints for sector limits, tracking-error budgets, and ESG exposure targets. The output is a rebalancing schedule with pre-trade analysis showing expected cost, risk, and alpha for each proposed trade.

The tools

Python's cvxpy for convex optimisation, custom transaction cost models calibrated to TAQ data, Monte Carlo simulation for risk decomposition, and pre-trade reporting dashboards.

The result

Implementable portfolio weights with pre-trade cost analysis, risk decomposition, and sensitivity to alternative ESG target levels and turnover constraints.

Portfolio Analytics team

Method comparison

Screening versus cross-sectional integration

Traditional ESG screening and cross-sectional integration differ not merely in technique but in epistemology — one asks whether a company is good, the other asks whether its ESG profile is priced.
Screening versus cross-sectional integration
Features Screening $ 49.00
Basic exclusion and inclusion lists based on absolute thresholds
Integration $ 99.00
Cross-sectional factor construction with peer-relative scoring
Full framework $ 149.00

Purified signals with portfolio optimisation and live validation

Absolute threshold rules Included Included Included
Peer-relative ranking Not included Included Included
Sector and region controls Not included Included Included
Factor purification Not included Not included Included
Transaction cost modelling Not included Not included Included
Live validation framework Not included Not included Included
Custom signal development Not included Not included Included
Documentation and code handover Summary only Full methodology Production code

Technical capabilities

Multi-source data fusion Reconcile identifiers, align fiscal periods, and resolve conflicts across commercial vendors, regulatory filings, and proprietary datasets.
Dynamic factor adjustment Estimate time-varying ESG factor loadings with Bayesian shrinkage and regime-switching models that adapt to changing market conditions.
Sector-neutral scoring Compute peer-relative ESG rankings within GICS sub-industries, controlling for structural differences in disclosure and materiality across sectors.
Production-ready code Deliver version-controlled, documented pipelines in Python and R that run in your existing infrastructure without vendor lock-in.
Get certified

Master the methodology

Enrol in our advanced certification programme or download the technical whitepaper to understand every modelling choice in detail.
  • Link your analytical accounts securely
  • Track model performance daily
  • Receive regime-change alerts automatically

Cookie Preferences

Manage your cookie settings

We use cookies to improve your experience

This website uses cookies to enhance functionality, analyse traffic, and support our research communications. You can choose which categories to accept or reject below.

Essential cookies

These cookies are necessary for the website to function and cannot be disabled.

Performance cookies

These cookies help us understand how visitors interact with our research content.

For more information about how we handle your data, please review our Privacy Policy and Cookie Policy.

Privacy Policy