Files
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

37 lines
1.1 KiB
Markdown

---
name: max_drawdown
kind: function
lang: go
domain: finance
version: "1.0.0"
purity: pure
signature: "func MaxDrawdown(values []float64) (maxDD float64, start, end int)"
description: "Calcula el maximo drawdown de una curva de equity, retornando la magnitud y los indices pico-valle."
tags: [finance, drawdown, risk, metric, pendiente-usar]
uses_functions: []
uses_types: [drawdown_result_go_finance]
returns: [drawdown_result_go_finance]
returns_optional: false
error_type: ""
imports: []
params:
- name: values
desc: "slice de valores de equity curve o net worth (ej: [1000, 1200, 900, 1100, 800])"
output: "tupla (maxDD, start, end) - drawdown como ratio [0,1] (ej: 0.333 = 33.3%), índice de pico, índice de valle"
tested: false
tests: []
test_file_path: ""
file_path: "functions/finance/max_drawdown.go"
---
# max_drawdown
Calcula el maximo drawdown (caida maxima desde un pico hasta un valle) como fraccion del pico. Retorna la magnitud (0 a 1) y los indices de inicio y fin.
## Ejemplo
```go
dd, s, e := finance.MaxDrawdown([]float64{100, 120, 90, 110, 80})
// dd = (120-80)/120 = 0.3333, s = 1, e = 4
```