Sobre el proyecto

Optopsy es una biblioteca de Python de código abierto orientada a la investigación y el backtesting de opciones. Proporciona funciones de estrategias predefinidas para posiciones de una sola pata, straddles, strangles, spreads verticales, mariposas, cóndores, cóndores de hierro, mariposas de hierro, spreads de ratio, calls cubiertas, puts protectoras, collars, puts garantizadas con efectivo, spreads de calendario y spreads diagonales: 38 estrategias en total según la documentación. Los usuarios pueden cargar datos de opciones desde CSV mediante asignaciones de columnas y ejecutar una estrategia para obtener estadísticas de rendimiento agrupadas por días hasta el vencimiento y rango de delta. El simulador cronológico admite capital inicial, cantidad de operaciones, límites de posiciones concurrentes, controles de DTE de entrada/salida, métodos de selección de strikes, curvas de capital, registros de operaciones, tasa de acierto, factor de beneficio, drawdown máximo y tiempo medio de mantenimiento. Una función independiente de simulación de cartera permite el backtesting ponderado de múltiples estrategias. Las características de gestión de posiciones incluyen salidas por stop-loss, take-profit y días máximos de mantenimiento. La biblioteca puede modelar comisiones mediante estructuras de tarifa por contrato, base y mínima, y ofrece modelos de deslizamiento de precio medio, basados en spread, basados en liquidez y por pata. Los informes de riesgo incluyen métricas Sharpe, Sortino, VaR, CVaR, Calmar, Omega y tail-ratio. El filtrado de entradas puede usar más de 80 indicadores de análisis técnico a través de pandas-ta-classic, incluidos RSI, MACD, Bandas de Bollinger, EMA, ATR e IV Rank. Las columnas booleanas personalizadas en un DataFrame también pueden impulsar las entradas. Se documenta un sistema de plugins para añadir estrategias, señales y proveedores de datos personalizados. El extra opcional de datos instala una CLI independiente `optopsy-data` para descargar y almacenar en caché datos históricos de opciones y acciones. El README identifica EODHD como una fuente compatible y señala que los datos de opciones se almacenan en caché localmente como archivos Parquet bajo `~/.optopsy/cache/`, con actualización incremental y detección de huecos. Algunos ejemplos de estrategias relacionadas con acciones hacen referencia a yfinance. La instalación se realiza a través de PyPI con `pip install optopsy` para la biblioteca principal o `pip install optopsy[data]` para las herramientas de datos. El proyecto indica requisitos de Python 3.12–3.13, Pandas 2.0 o posterior, y NumPy 1.26 o posterior. La documentación, la referencia de API y los ejemplos se publican en línea. Un proyecto relacionado, optopsy-mcp, proporciona un servidor MCP basado en una reescritura en Rust para la integración con LLM. El repositorio incluye un descargo de responsabilidad sobre investigación/educación que señala que los backtests se basan en datos históricos y suposiciones simplificadas y pueden no capturar la liquidez, la asignación, el deslizamiento o las condiciones cambiantes del mercado. El código está licenciado bajo la GNU Affero General Public License v3.0.