Files
fn_registry/functions/finance/ema.md
T
egutierrez 47fac22230 chore: auto-commit (799 archivos)
- .claude/CLAUDE.md
- .claude/commands/subagentes.md
- .claude/rules/INDEX.md
- .mcp.json
- bash/functions/cybersecurity/analyze_dns.md
- bash/functions/cybersecurity/audit_http_headers.md
- bash/functions/cybersecurity/audit_ssh_config.md
- bash/functions/cybersecurity/check_firewall.md
- bash/functions/cybersecurity/detect_suspicious_users.md
- bash/functions/cybersecurity/encrypt_file.md
- ...

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 00:28:20 +02:00

40 lines
1.1 KiB
Markdown

---
name: ema
kind: function
lang: go
domain: finance
version: "1.0.0"
purity: pure
signature: "func EMA(data []float64, period int) []float64"
description: "Calcula la media movil exponencial (EMA) sobre una serie de datos con un periodo dado."
tags: [finance, indicator, ema, moving-average, pendiente-usar]
uses_functions: []
uses_types: []
returns: []
returns_optional: false
error_type: ""
imports: []
params:
- name: data
desc: "slice de precios de cierre o valores de serie temporal (ej: [10.0, 11.0, 12.0, ...])"
- name: period
desc: "período de suavizado (ej: 5, 12, 26 días), determina multiplicador 2/(period+1)"
output: "slice de valores EMA del mismo tamaño que data, primeros period-1 elementos son 0"
tested: false
tests: []
test_file_path: ""
file_path: "functions/finance/ema.go"
---
# ema
Calcula la media movil exponencial (Exponential Moving Average). Se inicializa con la SMA de los primeros `period` elementos. El multiplicador es `2 / (period + 1)`.
## Ejemplo
```go
result := finance.EMA([]float64{10, 11, 12, 13, 14, 15}, 3)
// result[2] = SMA de los primeros 3 = 11.0
// result[3] en adelante usa suavizado exponencial
```