Special Relativity in Financial Modeling 1.0.0
Lorentz transforms, spacetime classification, and geodesic price paths for quantitative finance
Loading...
Searching...
No Matches
Classes | Namespaces
signal_processor.hpp File Reference

SignalProcessor — per-tick relativistic signal computation thread. More...

#include "beta_calculator.hpp"
#include "coordinate_normalizer.hpp"
#include "lorentz_transform.hpp"
#include "spacetime_manifold.hpp"
#include "spsc_ring.hpp"
#include "stream_signal.hpp"
#include "tick.hpp"
#include <atomic>
#include <cstdint>
#include <thread>

Go to the source code of this file.

Classes

struct  srfm::stream::SignalProcessorCounters
 Diagnostic counters for the signal-processing thread. More...
 
class  srfm::stream::SignalProcessor
 Signal processing thread owner. Non-copyable, non-movable. More...
 

Namespaces

namespace  srfm
 
namespace  srfm::stream
 

Detailed Description

SignalProcessor — per-tick relativistic signal computation thread.

Module: include/srfm/stream/ Owner: AGT-10 (Builder) — 2026-03-01

Responsibility

Pop OHLCVTick objects from the ingestion ring, run each tick through the four-stage signal chain (normalise → β → Lorentz → manifold), compute a StreamRelativisticSignal, and push it into the output ring.

Signal chain (per tick)

  1. CoordinateNormalizer (window=20): z-score(close) → norm_close
  2. BetaCalculatorFix3: log-returns(close) → β
  3. LorentzTransform: (bar_idx, norm_close, β) → (t', x', γ)
  4. SpacetimeManifold: (t', x') → Δs², regime, signal

Output StreamRelativisticSignal: bar = tick sequence number beta = β from BetaCalculatorFix3 gamma = γ from LorentzTransform regime = TIMELIKE / LIGHTLIKE / SPACELIKE from SpacetimeManifold signal = γ * manifold_signal (Lorentz-scaled) ds2 = raw Δs² from SpacetimeManifold

Guarantees

• No heap allocation in the hot path — all state pre-allocated in ctor. • Never throws from the processing loop. • Graceful shutdown via stop().

NOT Responsible For

• Tick validation (TickIngester) • JSON serialisation (SignalConsumer)

Definition in file signal_processor.hpp.