ZenQuant (zen_quant v0.2.0)

Copy Markdown View Source

Pure-function trading analytics for Elixir — discoverable APIs, no processes, no I/O.

Start Here: Self-Describing API

ZenQuant describes itself. Before using exports() or h(), try:

ZenQuant.describe()                          # All modules with purpose
ZenQuant.describe(:funding)                  # Functions in Funding module
ZenQuant.describe(:funding, :annualize)      # Full detail: params, returns, errors

Short names: ZenQuant.PowerLaw:power_law, ZenQuant.Options.Deribit:deribit.

Machine-Readable Access

For runtime agents and non-interactive consumers:

ZenQuant.Funding.__api__()                   # All hints for one module
ZenQuant.Funding.__api__(:annualize)          # Hints for one function
ZenQuant.Manifest.build()                    # Full API manifest as map

Static export: mix zen_quant.manifestapi_manifest.json

Overview

Black-Scholes pricing and implied volatility, options chain analytics, funding rates, basis, risk metrics, volatility estimators, position sizing, portfolio analytics, orderflow, and execution primitives.

Every function is pure: it takes plain maps and numbers, returns plain maps and tuples, and never performs I/O. The library starts no supervision tree. Exchange payloads (Bourse structs are maps) work as-is, but nothing here depends on an exchange client.

The only runtime dependency is Descripex, which powers the discovery surface above.

Summary

Functions

Return the list of modules registered with this library.

Return a Level 1 overview of all modules in this library.

Return Level 2 function list for a module (by full atom or short name).

Return Level 3 function detail (or nil if not found).

Functions

__descripex_modules__()

@spec __descripex_modules__() :: [module()]

Return the list of modules registered with this library.

describe()

@spec describe() :: [map()]

Return a Level 1 overview of all modules in this library.

describe(mod_or_short)

@spec describe(module() | atom()) :: [map()]

Return Level 2 function list for a module (by full atom or short name).

describe(mod_or_short, func_name)

@spec describe(module() | atom(), atom()) :: map() | nil

Return Level 3 function detail (or nil if not found).