v1.0.5

Quant Factors, Risk & Allocation

Kafal built-ins include statistical transformations, market impact cost modeling, and portfolio risk allocation utilities tailored for factor research and quantitative execution.

Statistical Factors & Transformations

The environment includes built-in functions for normalizing, ranking, and winsorizing feature series prior to model input or signal generation:

// Statistical Transformations & Factor Mining
z_val      = zscore(close, 50)
norm_series = normalize(close, 100)      // Bounded [0.0, 1.0]
std_series  = standardize(close, 100)

// Cross-Sectional Helpers
percentile_rank = rank(close, ascending=true)
clipped_series  = winsorize(close, z=3.0) // Outlier clipping
decile_bucket   = decile(close, n=10)     // Bucketed integer bins [0..9]

Risk, Cost & Allocation Models

To bridge research and execution realism, Kafal provides built-ins for transaction cost modeling and volatility targeting:

// Risk, Volatility & Trade Cost Models

// 1. Dynamic ATR Trailing Stop Level
stop_level = atr_stop(close, ta.atr(high, low, close, 14), mult=2.0, direction="long")

// 2. Volatility Regime Classification (0=Low, 1=Medium, 2=High Volatility)
regime = vol_regime(ta.atr(high, low, close, 14), lookback=50)

// 3. Execution & Transaction Cost Modeling
slip = slippage_model(spread=0.02, vol=stdev(close, 20), notional=10000.0)
cost = total_trade_cost(price=close, slippage_price=0.01, impact_pct=0.05, commission_pct=0.0005)

// 4. Volatility Target Position Sizing
weight = vol_target_weight(percent_change(close), target_vol=0.10, lookback=50)