feat(agents): market summary builder for hypothesis prompt

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-09 20:24:23 +02:00
parent 0f06b056f2
commit 430b874b26
2 changed files with 69 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
from __future__ import annotations
import pandas as pd # type: ignore[import-untyped]
from scipy import stats # type: ignore[import-untyped]
from .hypothesis import MarketSummary
def build_market_summary(
ohlcv: pd.DataFrame,
symbol: str,
timeframe: str,
) -> MarketSummary:
returns = ohlcv["close"].pct_change().dropna()
return_mean = float(returns.mean())
return_std = float(returns.std(ddof=1))
skew = float(stats.skew(returns, bias=False))
kurt = float(stats.kurtosis(returns, fisher=True, bias=False))
if return_std < 0.005:
regime = "low"
elif return_std < 0.02:
regime = "medium"
else:
regime = "high"
return MarketSummary(
symbol=symbol,
timeframe=timeframe,
n_bars=len(ohlcv),
return_mean=return_mean,
return_std=return_std,
skew=skew,
kurtosis=kurt,
volatility_regime=regime,
)