Passer au contenu
Tous les documents de la bibliothèque

Caractéristiques des entreprises Chen-Pelger-Zhu pour l’évaluation des actifs

Article Machine Learning for Trading

Résumé

Ce document décrit un jeu de référence reproductible sur les actions US, issu de l’archive de réplication de la tarification des actifs de Chen, Pelger et Zhu. Il comprend environ 1.2 million d’observations mensuelles sur les actions, de 1967 à 2016, avec 46 caractéristiques d’entreprise, des indicateurs macroéconomiques, des rendements futurs et des partitions prédéfinies d’entraînement, de validation et de test. Les identifiants des entreprises sont anonymes et persistants dans chaque tenseur publié, mais les espaces de noms distincts empêchent de relier les entreprises entre les tenseurs.

Le jeu de données permet des études d’évaluation des actifs par apprentissage automatique, où la cohérence des données de référence compte davantage que l’interprétation de titres individuels. Les partitions chronologiques publiées affectent 1967–1986 à l’entraînement, 1987–1991 à la validation et 1992–2016 aux tests. Le document décrit le téléchargement, la conversion des fichiers tenseurs des auteurs au format Parquet et le chargement du panel complet ou de partitions individuelles, avec une option d’inclusion des données macroéconomiques. Il s’agit d’une description du jeu de données, et non d’un résultat empirique : la performance dépend des modèles et des méthodes d’évaluation appliqués, et l’anonymisation limite l’analyse des entreprises entre partitions.

Idées clés

  • Le benchmark contient des observations mensuelles sur les actions, des caractéristiques d’entreprise, des indicateurs macroéconomiques et des rendements futurs de 1967 à 2016.
  • Ses partitions chronologiques prédéfinies séparent les périodes d’entraînement, de validation et de test.
  • Les identifiants anonymes des entreprises persistent dans chaque tenseur, mais ne peuvent pas être reliés entre les espaces de noms des tenseurs.
  • Le jeu de données sert à des expériences reproductibles d’évaluation des actifs, linéaires et non linéaires.
  • Les fichiers Parquet convertis préservent les identifiants récupérés à partir des données tenseurs d’origine.

Étiquettes

Texte intégral
# Firm Characteristics (Chen-Pelger-Zhu 2020)


# Firm Characteristics (Chen-Pelger-Zhu 2020)

Anonymized panel of ~1.2M stock-month observations with 46 firm
characteristics and forward returns, spanning 1967-2016. Built from the
replication archive of Chen, Pelger, and Zhu (2020), *Deep Learning in
Asset Pricing*. Used throughout the book for ML-based asset-pricing
examples where a standard, reproducible benchmark matters more than
symbol-level interpretation.

## Dataset

- **Source**: GitHub replication repo
  (https://github.com/jasonzy121/Deep_Learning_Asset_Pricing), which
  itself ships the published dataset via Google Drive
- **Coverage**: 1967-01 to 2016-12, monthly observations, ~1.2M rows
- **Features**: 46 firm characteristics (accounting ratios, price-based
  measures, momentum variants), 178 macro indicators, forward returns
- **Size on disk**: ~1.1 GB raw CSV; converted to ~500 MB parquet
- **Access**: Public, no API key required
- **Canonical schema**: `symbol` (anonymous integer id), `timestamp`
  (monthly Date), 46 characteristic columns, `ret`, `split`
- **Identity scope**: `symbol` is persistent within each tensor released by
  the authors. Separate numeric namespaces prevent accidental linking across
  tensors because the archive does not publish a cross-split map.

## Pre-defined Splits

The dataset ships with deterministic train/valid/test splits aligned to
the authors' released tensors:

| Split | Period    |
| ----- | --------- |
| train | 1967-1986 |
| valid | 1987-1991 |
| test  | 1992-2016 |

## Download

This is the largest free dataset in the book: ~1.5 GB pulled from the
authors' Google Drive folder (RetChar.csv alone is ~1.1 GB), followed by
a tensor-to-Parquet conversion. The tensor conversion recovers persistent
anonymous firm identifiers that the flattened CSV omits. How long it takes
depends on your bandwidth and disk speed. Per-file progress is printed as it
runs. A single command downloads and converts; no separate `--convert` pass
is needed.

```bash
# Download the ~1.5 GB folder and convert to parquet in one step
uv run python data/equities/firm_characteristics/download.py

# Verify what's already on disk, do not refetch
uv run python data/equities/firm_characteristics/download.py --check

# Force a re-download even if files exist
uv run python data/equities/firm_characteristics/download.py --force

# Re-run only the tensor-to-Parquet conversion (files already downloaded)
uv run python data/equities/firm_characteristics/download.py --convert
```

It is also fetched automatically as part of `data/download_all.py`. To
skip it there (e.g. on a metered or space-constrained connection), pass
`--skip-firm-characteristics`.

Output layout under `$ML4T_DATA_PATH/equities/firm_characteristics/`:

```
firm_characteristics_all.parquet      # full panel
firm_characteristics_train.parquet    # 1967-1986
firm_characteristics_valid.parquet    # 1987-1991
firm_characteristics_test.parquet     # 1992-2016
dl_asset_pricing/                     # raw CSV + NPZ staging
    RetChar.csv
    Macro.csv
    char/Char_{train,valid,test}.npz
    macro/macro_{train,valid,test}.npz
    RF/RF_{train,valid,test}_normalized_task_1.npz
```

The staging directory is kept so experiments that need the pre-split
NPZ arrays (the original Chen-Pelger-Zhu format) can read them
directly.

## Loading

```python
from data import load_firm_characteristics

df = load_firm_characteristics()                        # full panel
df = load_firm_characteristics(split="train")
df = load_firm_characteristics(split="test", include_macro=True)
```

If the canonical parquets are missing, the loader raises
`DataNotFoundError` pointing at the download command.

## Consumers

- Chapters 10-16 - standard benchmark for linear and nonlinear
  asset-pricing models.
- `case_studies/us_firm_characteristics/` - Chen-Pelger-Zhu replication
  pipeline (CV, GBM, latent factor, deep models).

Reproduit dans son intégralité avec attribution, conformément à la licence de la source. Licence: MIT

Ce résumé a été rédigé par l’agent de recherche de Stratmill à partir de la source originale ; il n’en est pas une copie.