Saltar al contenido
Todos los documentos de la biblioteca

Uso de las posiciones 13F y las declaraciones del formulario 4 para estudiar el posicionamiento en renta variable

Artículo Machine Learning for Trading

Resumen

Esta referencia describe dos fuentes públicas de declaraciones SEC para estudiar posiciones en renta variable y la actividad de personas con información privilegiada. Los informes trimestrales 13F muestran las posiciones institucionales, ya sea de un conjunto seleccionado de gestores o mediante datos masivos que cubren un periodo completo de presentación. Las declaraciones del formulario 4 registran operaciones de personas con información privilegiada en los tickers seleccionados. La guía explica cómo descargar, cargar y organizar los datos para análisis posteriores, incluidas características por acción y relaciones de propiedad entre instituciones y acciones.

Un detalle analítico clave es que los datos de posiciones conservan tanto la fecha del informe de fin de trimestre como la fecha posterior de presentación pública. Estas fechas distinguen cuándo se mantenía una posición de cuándo podían haberla observado los investigadores, algo necesario al crear características temporales o evitar el sesgo de anticipación. El documento señala usos posteriores, como grafos de propiedad, señales de concentración, embeddings de activos y análisis de operaciones de insiders, pero no presenta resultados empíricos ni una estrategia de trading. La cobertura depende de los gestores, tickers o periodos de presentación masiva elegidos, y las fuentes describen posiciones y operaciones declaradas, no una visión completa y continuamente actualizada de las posiciones actuales.

Ideas clave

  • Las declaraciones 13F pueden proporcionar posiciones institucionales trimestrales de gestores seleccionados o de un universo más amplio de declaraciones.
  • Las declaraciones del formulario 4 ofrecen registros públicos de operaciones de personas con información privilegiada en acciones seleccionadas.
  • Mantén separadas las fechas de informe y de presentación para distinguir cuándo se mantenía una posición de cuándo se hizo pública.
  • Las relaciones de propiedad y las características por acción pueden servir para investigar la concentración y las redes institucionales.
  • Los conjuntos de datos de declaraciones tienen límites definidos de cobertura y calendario, por lo que no ofrecen una vista en tiempo real de las posiciones.

Etiquetas

Texto completo
# Equity Positioning: 13F + Form 4


# Equity Positioning: 13F + Form 4

SEC regulatory filings that capture **positions** and **insider activity**
at the equity level. All data is public domain (SEC EDGAR). Respect the
10 req/sec rate limit via a descriptive `User-Agent` — downloaders here
handle this automatically.

## Datasets

| Dataset | Filing | Universe | Script | Loader(s) |
| --- | --- | --- | --- | --- |
| Institutional holdings | 13F | Curated 10 managers (per-cik) or full universe (bulk) | `13f_download.py` | `load_institutional_holdings_13f`, `load_13f_stock_features`, `load_13f_edges`, `load_13f_bulk_holdings` |
| Insider transactions | Form 4 | User-chosen tickers | `form4_download.py` | Raw XML — read directly via `pathlib` (see Ch4 NB 03) |

## Download Commands

```bash
# === 13F (institutional holdings) ===

# per-cik (default): 10 curated managers, 4 most recent 13F-HR filings each
uv run python data/equities/positioning/13f_download.py
uv run python data/equities/positioning/13f_download.py --num-filings 8
uv run python data/equities/positioning/13f_download.py --max-institutions 3

# bulk: one or more quarterly filing windows (SEC's own labels)
uv run python data/equities/positioning/13f_download.py --mode bulk --quarters 2024Q3
uv run python data/equities/positioning/13f_download.py --mode bulk --quarters 2024Q2,2024Q3

# === Form 4 (insider transactions) ===

uv run python data/equities/positioning/form4_download.py --ticker TSLA --count 20
uv run python data/equities/positioning/form4_download.py --ticker TSLA,AAPL,MSFT --count 10
```

## Directory Layout

```
$ML4T_DATA_PATH/equities/positioning/
├── 13f/
│   ├── institutional_holdings.parquet       # per-cik: raw holdings (10 curated managers)
│   ├── institution_stock_edges.parquet      # per-cik: institution → stock edges
│   ├── stock_features.parquet               # per-cik: stock-level features
│   ├── coownership_matrix.npy               # per-cik: stock × stock similarity
│   ├── coownership_stocks.txt               # per-cik: row/col CUSIPs
│   └── bulk/
│       └── {YYYYQN}/
│           ├── institutional_holdings.parquet   # bulk: full-window universe (~3M rows)
│           └── bulk_13f.zip                     # cached raw SEC zip
└── form4/
    └── {TICKER}/{accession}.xml             # Raw Form 4 insider filings
```

## Loading

```python
from data import (
    load_institutional_holdings_13f,
    load_13f_stock_features,
    load_13f_edges,
    load_13f_bulk_holdings,
)

# 13F per-cik (curated managers)
holdings = load_institutional_holdings_13f(start_date="2024-01-01")
features = load_13f_stock_features()
edges = load_13f_edges()

# 13F bulk (full universe, one quarter)
q3_2024 = load_13f_bulk_holdings("2024Q3")
```

The holdings schema preserves both SEC dates: `report_date` is the quarter-end
position date and `filing_date` is when the filing became public.

## Consumers

- **Ch4 NB 03** — Form 4 insider-transaction parsing
- **Ch4 NB 05** — Full-universe 13F analysis via `--mode bulk`
- **Ch10 NB 02** — Asset embeddings from 13F holdings
- **Ch22 NB 07** — Institutional ownership graph + crowding signals
- **Ch23** — `09_knowledge_graph_features`, `05_institutional_holdings_kg`, `04_rag_comparison_benchmark`

Se muestra íntegramente con atribución según la licencia de la fuente. Licencia: MIT

Este resumen lo redactó el agente de investigación de Stratmill a partir del original; no es una copia de la fuente.