Special Relativity in Financial Modeling 1.0.0
Lorentz transforms, spacetime classification, and geodesic price paths for quantitative finance
Loading...
Searching...
No Matches
Classes | Static Public Member Functions | List of all members
srfm::multi_asset::MultiAssetLorentz Class Reference

Applies simultaneous Lorentz boosts to N correlated price series. More...

#include <multi_asset.hpp>

Classes

struct  TransformResult
 Result of a multi-asset Lorentz transform. More...
 

Static Public Member Functions

static std::optional< TransformResult > transform (const MultiAssetEvent &a, const MultiAssetEvent &b, const Eigen::MatrixXd &metric) noexcept
 Apply the multi-asset Lorentz transform.
 
static double portfolio_beta (const std::vector< double > &betas, const Eigen::MatrixXd &metric) noexcept
 Compute portfolio β from individual asset velocities and the metric.
 

Detailed Description

Applies simultaneous Lorentz boosts to N correlated price series.

In the multi-asset setting, each asset has its own β_i = ΔP_i / (c · Δt). The off-diagonal metric terms (correlations) couple the boosts: a high-β move in asset A induces a "relativistic correction" in correlated asset B.

The transform is applied column-wise in the (N+1)-dimensional manifold:

γ_portfolio = 1 / sqrt(1 − β_portfolio²)

where β_portfolio = |Σ g_ij β_i β_j| (metric-weighted portfolio velocity).

Definition at line 207 of file multi_asset.hpp.

Member Function Documentation

◆ portfolio_beta()

double srfm::multi_asset::MultiAssetLorentz::portfolio_beta ( const std::vector< double > &  betas,
const Eigen::MatrixXd &  metric 
)
staticnoexcept

Compute portfolio β from individual asset velocities and the metric.

β_portfolio = sqrt(g_ij β_i β_j) (metric-weighted speed).

Parameters
betasPer-asset β values.
metric(N+1)×(N+1) metric (only the spatial block is used).
Returns
Portfolio β, clamped to [0, BETA_MAX_SAFE].

Definition at line 273 of file multi_asset.cpp.

◆ transform()

std::optional< MultiAssetLorentz::TransformResult > srfm::multi_asset::MultiAssetLorentz::transform ( const MultiAssetEvent &  a,
const MultiAssetEvent &  b,
const Eigen::MatrixXd &  metric 
)
staticnoexcept

Apply the multi-asset Lorentz transform.

Parameters
aPrevious-bar event.
bCurrent-bar event.
metric(N+1)×(N+1) Lorentzian metric tensor.
Returns
TransformResult, or std::nullopt if inputs are invalid.

Definition at line 230 of file multi_asset.cpp.


The documentation for this class was generated from the following files: