5f4f1f7508
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.
39 lines
1.0 KiB
Markdown
39 lines
1.0 KiB
Markdown
---
|
|
name: sma
|
|
kind: function
|
|
lang: go
|
|
domain: finance
|
|
version: "1.0.0"
|
|
purity: pure
|
|
signature: "func SMA(data []float64, period int) []float64"
|
|
description: "Calcula la media movil simple (SMA) sobre una serie de datos con un periodo dado."
|
|
tags: [finance, indicator, sma, moving-average]
|
|
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: [1.0, 2.0, 3.0, ...])"
|
|
- name: period
|
|
desc: "período de media móvil (ej: 5, 20, 50, 200 días)"
|
|
output: "slice de valores SMA del mismo tamaño que data, primeros period-1 elementos son 0 (sin datos suficientes)"
|
|
tested: false
|
|
tests: []
|
|
test_file_path: ""
|
|
file_path: "functions/finance/sma.go"
|
|
---
|
|
|
|
# sma
|
|
|
|
Calcula la media movil simple (Simple Moving Average). Los primeros `period-1` elementos del resultado son 0 ya que no hay datos suficientes para calcular la media.
|
|
|
|
## Ejemplo
|
|
|
|
```go
|
|
result := finance.SMA([]float64{1, 2, 3, 4, 5}, 3)
|
|
// result = [0, 0, 2, 3, 4]
|
|
```
|