v2.19.0
Features
- Pendle PT/YT vertical (#2945, #2949, #2950, #2951, #2940): gateway PT/USD price provider (composes the on-chain PT rate with the underlying price),
MarketSnapshot.pt_priceover a newGetPtPricegateway contract, and PT/LP USD valuation with buy-time cost basis. - Fluid connectors (#2802, #2765, #2806):
fluid_dex_lp(Fluid SmartLending fungible DEX LP) andfluid_vault(NFT-CDP borrow/repay). - Accounting valuation hardening (#2904, #2906, #2907, #2908, #2910, #2911, #2913, #2914, #2857, #2830): typed
MeasuredMoney(Empty≠Zero by construction) andPrimitiveMoneyLegextraction across the ledger / payload / valuation boundaries, a canonicalPortfolioValuer, and a shared lending Track-C seam (Compound V3 + Morpho Blue). - Backtesting v1 (VIB-5079): PnL engine + parameter sweep/optimize + Anvil-fork paper trading with value conservation enforced end-to-end, certified by a network-free Trust Matrix (21 PASS / 0 xfail). Remains gated behind
ALMANAK_ENABLE_BACKTESTING(off by default); adds a platform runner image via the newalmanak[platform-runner]extra. - Uniswap V4 native-ETH pools (#2795, #2790): native-ETH pool support and V4 wired into the synthetic-intents permission matrix.
- Curve multi-coin LP (#2840):
LP_OPENnow supports non-leading coins in multi-coin pools. - Dashboard quant surfaces (#2791, #2818, #2739, #2824): windowed/time-travel charts with server-side decimation, an incremental lifetime-drawdown fold, and a baseline dashboard backfilled across strategies.
Fixes
- Accounting correctness across the Pendle PT vertical, perp NAV net-equity, leveraged-loop cost basis / drawdown, and native-ETH LP legs (Empty≠Zero).
- Uniswap V4 / concentrated liquidity: all-ERC20 V4 swaps fixed (ABI struct-offset),
sqrt_price_x96_to_tickoff-by-one corrected, and unspent nativemsg.valueswept on LP mint. - Teardown: fail-closed consolidation on failed eviction, universal fresh-state guard for lending unwind, on-chain LP discovery fallback when state is lost, and swap-back clamped to tracked quantity.
- Backtesting conservation and fidelity: value-(de)minting defects eliminated, chain-aware gas defaults, subgraph pagination past ~1000 points, and per-trade realized PnL attribution.
- Dashboard: HF/LTV gauges never fabricate placeholders, trade tape reflects on-chain landed status, and lifetime drawdown spans full history.
- CLI: single validated config parse with typo-warnings,
strat pnlscoped to the cwd strategy folder, and status commands honor canonicalALMANAK_GATEWAY_*env vars.
Breaking Changes
- None.
Deprecations
- None.
Full changelog: https://github.com/almanak-co/almanak-sdk-private/blob/v2.19.0/CHANGELOG.md · compare v2.18.0...v2.19.0