Files
fn_registry/python/functions/finance/ema.md
egutierrez 5f4f1f7508 docs: params/output semántico en 506 funciones para composabilidad
Añade campos params y output al frontmatter YAML de las 506 funciones del registry.
Cada parámetro tiene descripción semántica (qué representa, unidades, rango típico)
y cada función describe qué produce su output. Permite a agentes razonar sobre
cadenas de composición (ej: prices → log_return → sharpe_ratio) sin leer código.
2026-04-05 18:45:16 +02:00

41 lines
1.1 KiB
Markdown

---
name: ema
kind: function
lang: py
domain: finance
version: "1.0.0"
purity: pure
signature: "def ema(data: list, period: int) -> list"
description: "Calcula la media movil exponencial (EMA) de una serie de precios."
tags: [finance, moving-average, exponential, indicator, python]
uses_functions: []
uses_types: []
returns: []
returns_optional: false
error_type: ""
imports: []
params:
- name: data
desc: "lista de precios o valores a suavizar (ej: precios de cierre diarios)"
- name: period
desc: "numero de periodos para el calculo de EMA (tipico: 5, 12, 26, 50, 200). Mayor periodo = mas suavizado."
output: "lista de valores EMA con len(data) - period + 1 elementos (mas corta que la entrada)"
tested: false
tests: []
test_file_path: ""
file_path: "python/functions/finance/finance.py"
---
## Ejemplo
```python
prices = [10, 11, 12, 13, 14, 15]
result = ema(prices, 3)
# [11.0, 11.5, 12.25, 13.125]
```
## Notas
El primer valor de la EMA es el SMA del primer periodo. El multiplicador es 2 / (period + 1).
Retorna len(data) - period + 1 elementos. Lista vacia si period invalido.