How fast the market's entropy–complexity fingerprint is moving (half-window displacement). · row #19 · ordpy · rolling-200 on close · Suriano 2025 (Entropy 27:450); half-window (H,C) displacement; m=3/τ=1 = PR#513
PASS
Verdict (worst valid cell)
0.67
Max ‖ρ‖ vs panel
0.12
Max R²
1.00
Min h_norm
210
Valid cells
210 / 0 / 0
PASS / WATCH / BAN
10 / 10
Slices done
fast
Cost tier
How this verdict was reached
Every one of the 210 cells passed all three checks — in its worst cell the feature still tracked the closest existing feature only at ‖ρ‖ 0.666 (≤0.85), was at most 0.123 reconstructable from the whole panel (≤0.85), and stayed alive at h_norm 1.000 (≥0.05). It carries information the production panel does not.
What this feature measures
In plain terms: How fast the market's complexity/entropy fingerprint is MOVING. We compute the (entropy, complexity) point on the first half of the window and on the second half, and measure how far it travelled.
Analogy: Like a needle on a dial: a big jump means the market's character is changing fast; near-zero means its character is holding steady.
High vs low: HIGH = the complexity signature is shifting quickly (regime in flux). LOW = stable character within the window.
Tunable knobs (Axis-2): Ordinal embedding (m=3, τ=1, PR#513) plus a structural 50/50 window split — no tunable value.
How we test it
We slide a 200-bar window across real ClickHouse bars and compute this feature at every bar, for each of 21 (symbol × threshold) cells across 6 crypto symbols, repeated over 10 historical 2-month windows ("slices") spanning 2021→2026 — 210 independent tests.
In each test we ask one question only: does this feature carry information the live production panel does not already have? (This is Axis-1 orthogonality — no profit/signal claim is made here.)
Three checks per cell: rank-correlation vs the single closest feature (‖ρ‖), joint reconstructability from the whole panel (R²), and whether the feature actually varies (h_norm).
Read-only ClickHouse · against the live panel + the landed Petrosian/Katz fractal features.
What each number means
Max ‖ρ‖ (rank correlation): how strongly the feature tracks the single most-similar existing feature, in its worst cell. 0 = unrelated, 1 = a rename. Lower is better. ≤0.85 good · 0.85–0.95 watch · >0.95 banned (duplicate).
Max R² (joint redundancy): how much of the feature can be rebuilt from all existing features together. 0 = fully new, 1 = fully reconstructable. Lower is better. Same thresholds.
Min h_norm (liveness): how much the feature actually moves (normalised entropy of its own values). Near 0 = basically constant / collapsed = useless. Want ≥0.05.
Worst-valid-cell rollup: the candidate inherits the verdict of its worst of 210 cells — deliberately strict, so a feature only PASSES if it is orthogonal everywhere.
Per-slice (regime) orthogonality
Each row is one 2-month historical window. "Worst ‖ρ‖" is the most-correlated existing feature in that regime's worst cell — lower is better.
Slice
Valid
P / W / B
Worst ‖ρ‖
Top competitor
slice012026-01 → 02
21
21 / 0 / 0
0.67
bar_petrosian_fd
slice032025-07 → 08
21
21 / 0 / 0
0.48
bar_katz_fd
slice052025-01 → 02
21
21 / 0 / 0
0.57
bar_petrosian_fd
slice072024-07 → 08
21
21 / 0 / 0
0.37
bar_katz_fd
slice092024-01 → 02
21
21 / 0 / 0
0.54
bar_petrosian_fd
slice122023-04 → 05
21
21 / 0 / 0
0.55
bar_katz_fd
slice142022-10 → 11
21
21 / 0 / 0
0.57
bar_petrosian_fd
slice172022-01 → 02
21
21 / 0 / 0
0.28
bar_katz_fd
slice202021-04 → 05
21
21 / 0 / 0
0.36
bar_petrosian_fd
slice212021-01 → 02
21
21 / 0 / 0
0.31
bar_katz_fd
Most-similar existing features (the candidate's nearest neighbours)
Which already-shipped features this candidate most often resembles. If one feature dominates here and ‖ρ‖ is high, the candidate may be re-deriving it.
bar_petrosian_fd — most-similar existing feature in 121 cell(s)
bar_katz_fd — most-similar existing feature in 60 cell(s)
trade_intensity — most-similar existing feature in 9 cell(s)
Resource utilization
Hard cap: 2 CPU cores (CPUQuota 200%), 2 GB RAM, spare-only — the loop runs at the lowest priority (CPUWeight 10, nice 19, ionice idle) and only starts when ≥2 cores and ≥2 GB are free, so it never competes with production (ClickHouse / the live sidecar).
This sweep: wall time 44m 10s · peak RAM 1914 MB of 2048 MB.
Data volume: 6,333,627 bar-rows processed across 210 cells. 28 of 210 cells were sub-sampled to the most-recent 100,000 bars (largest raw cell ≈ 1,058,962 bars). Sub-sampling keeps giant cells tractable and does not change the correlation estimate.
Safety: the sweep completing means it stayed within 2 GB — had it exceeded, the cgroup would have killed only the loop, never the box, and the cap-worked event would be recorded (never raised).
Worth flagging to the operator
✅ Orthogonal in every cell with no reliability caveats — clean PASS, Axis-2 already verified (PR#513 reuse). Proceed to the cross-candidate Finish, then operator promotion review.
ℹ️ 28 cell(s) sub-sampled to the 100,000-bar cap (estimate unaffected).