Skip to content

v3.0.0

Choose a tag to compare

@SAY-5 SAY-5 released this 10 Sep 09:33
· 39 commits to main since this release

Lineage edges now carry how much of a subsidiary its parent owns, so exposure can be read through that ownership instead of counting every position at face value. The ETL writes tg:ownershipFraction on every entity that has a parent, taking the percentage from the Exhibit 21 style list where one is stated and defaulting to whole ownership flagged with tg:ownershipAssumed where it is not; the committed sample states a percentage for 1,552 of its 2,148 subsidiaries. Passing weighted=true to exposure multiplies each line by the product of the fractions along its lineage path and reorders the answer by what is left, so debt issued by an entity owned 75 percent by a parent that is itself owned 80 percent counts 0.6 towards the top of the tree. Unweighted answers are byte for byte what they were, and weight and weightedValue are simply absent from them. A new endpoint at /exposure/concentration lists the issuers that make up at least a configurable share of what a fund family holds, largest first, with the default threshold in tradegraph.exposure.min-share. Tests are 32 ETL pytest, 43 API unit, 21 Testcontainers integration and 9 explorer specs, all green against Fuseki.