diff --git a/.gitignore b/.gitignore index a7b613b..0a4dc30 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ data/ data_exploration/ -notebooks/ \ No newline at end of file +notebooks/ +*.csv diff --git a/carmignac_diagnostics.html b/carmignac_diagnostics.html new file mode 100644 index 0000000..967ec23 --- /dev/null +++ b/carmignac_diagnostics.html @@ -0,0 +1,4529 @@ + + + + + +Carmignac — Broken Months Diagnostics + + + + + +
+
Carmignac × ENSAE · Data Challenge 2025
+

Broken Months Diagnostics

+
+ Aggregate stock-flow equation check · ISIN level · threshold α = 5.0%
+ Missing % = |missing flow| / max(|ΔAUM|, |recorded flow|, 1 share) — capped at movement size, not stock level +
+
+ +
+
+ (ISIN, month) pairs + 39,874 + examined +
+
+ Broken months + 7,545 + 18.9% of pairs +
+
+ Likely lags + 491 + resolved by ±3d window +
+
+ Genuine gaps + 7054 + unresolved by lag fix +
+
+ ISINs affected + 327 + distinct ISINs +
+
+ Max missing % + 200.0% + worst single (isin, month) +
+
+ +
+ +
00 · Error account — cumulative residuals
+ +
+
+ Aggregate error account stock over time + + Stock_error(t_ref) = 0 by definition. At each prior month, the stock absorbs the residual + [ΔQ_total − F_total]. A stationary signal near zero = clean data. + A drifting signal = structural data quality problem. + +
+
+
+
+
Max |stock error|
+
3,057,936.2 shares
+
+
+
Max % of total AUM
+
0.749%
+
+
+
Stationarity (σ/μ)
+
0.873
+
lower = more stationary
+
+
+
+
+
+ +
+
+
+ Monthly aggregate residual + ΔQ_total − F_total per month (should be near zero) +
+
+
+
+
+
+
+ Error stock — top 5 ISINs + Cumulative error stock per ISIN (most affected) +
+
+
+
+
+
+ +
+
+ Error account detail — worst (ISIN, month) pairs + Sorted by absolute cumulative error stock. stock_error_pct = |stock| / max(ISIN AUM) +
+
+ + + + + + + + +
DateISINMonthly residualCumulative stock% of max AUM
2018-12-31MAPFRECG0001+790,020.14+3,465,391.4384.456%
2019-01-31MAPFRECG0001-96,922.12+3,368,469.3182.094%
2018-04-30MAPFRECG0001+2,573.58+3,282,698.0780.004%
2018-03-31MAPFRECG0001+12,247.43+3,280,124.4879.941%
2017-04-30MAPFRECG0001+25,221.69+3,269,540.2179.683%
2017-08-31MAPFRECG0001+20,819.66+3,268,510.3579.658%
2018-02-28MAPFRECG0001+60,623.00+3,267,877.0579.642%
2017-11-30MAPFRECG0001+4,241.02+3,267,696.9679.638%
2017-09-30MAPFRECG0001-980.81+3,267,529.5379.634%
2017-12-31MAPFRECG0001-1,358.90+3,266,338.0679.605%
2017-10-31MAPFRECG0001-4,073.60+3,263,455.9379.535%
2021-03-31MAPFRECG0001+77,284.34+3,262,133.6879.502%
2019-02-28MAPFRECG0001-109,840.88+3,258,628.4379.417%
2017-07-31MAPFRECG0001+34,027.31+3,247,690.6979.150%
2017-03-31MAPFRECG0001+60,644.48+3,244,318.5279.068%
2020-07-31MAPFRECG0001+19,666.72+3,237,462.4578.901%
2018-05-31MAPFRECG0001-47,287.92+3,235,410.1478.851%
2017-05-31MAPFRECG0001-42,463.72+3,227,076.5078.648%
2020-06-30MAPFRECG0001+179,849.22+3,217,795.7378.422%
2017-06-30MAPFRECG0001-13,413.12+3,213,663.3878.321%
2017-01-31MAPFRECG0001+19,855.76+3,208,913.1678.205%
2018-01-31MAPFRECG0001-59,084.00+3,207,254.0578.165%
2021-06-30MAPFRECG0001+42,602.06+3,200,732.6778.006%
2016-12-31MAPFRECG0001+234,331.04+3,189,057.4077.722%
2021-02-28MAPFRECG0001+37,049.10+3,184,849.3477.619%
2017-02-28MAPFRECG0001-25,239.12+3,183,674.0477.590%
2019-03-31MAPFRECG0001-79,914.18+3,178,714.2577.469%
2018-06-30MAPFRECG0001-66,557.37+3,168,852.7877.229%
2019-12-31MAPFRECG0001+334,512.39+3,164,579.7577.125%
2021-05-31MAPFRECG0001+23,511.25+3,158,130.6176.968%
2021-01-31MAPFRECG0001+7,959.03+3,147,800.2476.716%
2021-08-31MAPFRECG0001+5,816.34+3,146,144.1476.676%
2022-08-31MAPFRECG0001+0.00+3,142,003.9076.575%
2024-03-31MAPFRECG0001+0.00+3,142,003.9076.575%
2021-12-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-02-28MAPFRECG0001+0.00+3,142,003.9076.575%
2024-07-31MAPFRECG0001+0.00+3,142,003.9076.575%
2021-10-31MAPFRECG0001+0.00+3,142,003.9076.575%
2022-07-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-01-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-10-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-04-30MAPFRECG0001+0.00+3,142,003.9076.575%
2024-08-31MAPFRECG0001+0.00+3,142,003.9076.575%
2022-12-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-12-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-08-31MAPFRECG0001+0.00+3,142,003.9076.575%
2024-06-30MAPFRECG0001+0.00+3,142,003.9076.575%
2021-11-30MAPFRECG0001+0.00+3,142,003.9076.575%
2023-05-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-07-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-06-30MAPFRECG0001+0.00+3,142,003.9076.575%
2022-02-28MAPFRECG0001+0.00+3,142,003.9076.575%
2022-05-31MAPFRECG0001+0.00+3,142,003.9076.575%
2022-11-30MAPFRECG0001+0.00+3,142,003.9076.575%
2021-09-30MAPFRECG0001-4,140.23+3,142,003.9076.575%
2022-01-31MAPFRECG0001+0.00+3,142,003.9076.575%
2024-05-31MAPFRECG0001+0.00+3,142,003.9076.575%
2022-04-30MAPFRECG0001+0.00+3,142,003.9076.575%
2022-06-30MAPFRECG0001+0.00+3,142,003.9076.575%
2023-03-31MAPFRECG0001+0.00+3,142,003.9076.575%
2023-11-30MAPFRECG0001+0.00+3,142,003.9076.575%
2024-02-29MAPFRECG0001+0.00+3,142,003.9076.575%
2022-09-30MAPFRECG0001+0.00+3,142,003.9076.575%
2024-04-30MAPFRECG0001+0.00+3,142,003.9076.575%
2023-09-30MAPFRECG0001+0.00+3,142,003.9076.575%
2022-10-31MAPFRECG0001+0.00+3,142,003.9076.575%
2024-01-31MAPFRECG0001+0.00+3,142,003.9076.575%
2022-03-31MAPFRECG0001+0.00+3,142,003.9076.575%
2021-07-31MAPFRECG0001-60,404.86+3,140,327.8076.534%
2020-12-31MAPFRECG0001+104,396.62+3,139,841.2176.522%
2019-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2018-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2023-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-02-28FR001400U4S3+0.00-3,135,764.3648.992%
2017-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2020-02-29FR001400U4S3+0.00-3,135,764.3648.992%
2022-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2021-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2020-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2018-02-28FR001400U4S3+0.00-3,135,764.3648.992%
2018-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2018-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2023-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2021-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-02-29FR001400U4S3+0.00-3,135,764.3648.992%
2022-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2020-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2022-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2022-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2018-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2021-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2023-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2017-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2018-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2023-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2021-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2023-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2024-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2017-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2023-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2018-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2023-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2024-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2018-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2024-02-29FR001400U4S3+0.00-3,135,764.3648.992%
2017-02-28FR001400U4S3+0.00-3,135,764.3648.992%
2019-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2024-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2020-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2020-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2024-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2017-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2019-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2020-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2022-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2024-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2021-02-28FR001400U4S3+0.00-3,135,764.3648.992%
2021-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2018-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2023-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2023-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2022-02-28FR001400U4S3+0.00-3,135,764.3648.992%
2023-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2021-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2024-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2022-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2022-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2023-02-28FR001400U4S3+0.00-3,135,764.3648.992%
2023-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2021-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2021-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2015-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2017-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2015-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2017-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2017-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2017-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2024-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2020-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2025-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2015-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2017-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2024-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2020-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2016-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2024-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2018-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2022-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2017-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2019-03-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-01-31FR001400U4S3+0.00-3,135,764.3648.992%
2024-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2018-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2022-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2020-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2022-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2020-04-30FR001400U4S3+0.00-3,135,764.3648.992%
2021-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2024-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2021-07-31FR001400U4S3+0.00-3,135,764.3648.992%
2017-06-30FR001400U4S3+0.00-3,135,764.3648.992%
2021-12-31FR001400U4S3+0.00-3,135,764.3648.992%
2016-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2018-09-30FR001400U4S3+0.00-3,135,764.3648.992%
2016-08-31FR001400U4S3+0.00-3,135,764.3648.992%
2015-02-28FR001400U4S3+0.00-3,135,764.3648.992%
2020-10-31FR001400U4S3+0.00-3,135,764.3648.992%
2020-05-31FR001400U4S3+0.00-3,135,764.3648.992%
2022-11-30FR001400U4S3+0.00-3,135,764.3648.992%
2021-04-30MAPFRECG0001-127,514.32+3,134,619.3676.395%
2018-07-31MAPFRECG0001-48,721.32+3,120,131.4576.042%
2020-01-31MAPFRECG0001-47,059.19+3,117,520.5675.978%
2019-04-30MAPFRECG0001-73,555.27+3,105,158.9875.677%
2018-08-31MAPFRECG0001-27,041.67+3,093,089.7975.383%
2020-02-29MAPFRECG0001-38,273.38+3,079,247.1875.045%
2019-05-31MAPFRECG0001-47,918.05+3,057,240.9374.509%
2020-04-30MAPFRECG0001+8,760.26+3,042,150.2574.141%
2020-05-31MAPFRECG0001-4,203.74+3,037,946.5174.039%
+
+
+ +
01 · Aggregate view — all ISINs combined
+ +
+
+ Stock-flow equation — total portfolio + + Σ Q(t) − Σ Q(t−1) vs Σ F(t) across all ISINs and accounts. + Detects months where the global portfolio is incoherent, independent of ISIN-level breakdown. + +
+
+
+
+
+ +
+
+
+ Aggregate missing flow over time + Σ Q(t) − Σ Q(t−1) − Σ F(t) — should be near zero every month +
+
+
+
+
+
+
+ Aggregate missing % of movement + |missing| / max(|ΔAUM|, |flow|) — months above α flagged in red +
+
+
+
+
+
+ +
+
+ Aggregate broken months — detail +
+
+ + + + + + + + +
DateΣ Q(t−1)Σ Q(t)Σ FlowMissingMissing %
2015-06-30132,049,672.6132,654,414.8393,895.7+210,846.534.87%
2015-07-31132,654,414.8131,831,966.9-585,426.7-237,021.228.82%
2015-08-31131,831,966.9131,233,930.9-650,466.1+52,430.18.06%
2015-09-30131,233,930.9130,197,837.1-1,151,185.8+115,092.010.00%
2015-10-31130,197,837.1130,557,570.1-3,246.8+362,979.8100.90%
2015-12-31128,386,409.5127,655,930.2-181,658.0-548,821.375.13%
2016-01-31127,655,930.2127,310,737.8-459,631.2+114,438.824.90%
2016-02-29127,310,737.8127,217,490.4913.0-94,160.3100.98%
2016-03-31127,217,490.4130,287,250.22,871,955.8+197,803.96.44%
2016-04-30130,287,250.2130,268,303.2-94,567.3+75,620.379.96%
2016-06-30130,652,809.3131,106,117.8-583,776.9+1,037,085.5177.65%
2016-07-31131,106,117.8132,360,760.61,710,433.2-455,790.426.65%
2016-08-31132,360,760.6133,910,179.71,430,522.4+118,896.77.67%
2016-09-30133,910,179.7134,440,348.0963,881.8-433,713.545.00%
2016-10-31134,440,348.0135,024,445.4496,844.1+87,253.414.94%
2016-11-30135,024,445.4135,735,506.7513,687.9+197,373.427.76%
2016-12-31135,735,506.7137,880,859.71,845,833.2+299,519.713.96%lag
2017-02-28139,703,499.3142,920,019.03,511,325.3-294,805.58.40%
2017-03-31142,920,019.0146,272,283.13,715,352.1-363,088.09.77%lag
2017-04-30146,272,283.1148,248,445.61,788,418.5+187,744.09.50%
2017-07-31151,283,340.9152,682,033.42,017,289.7-618,597.230.66%
2017-08-31152,682,033.4155,414,014.32,058,027.6+673,953.324.67%
2017-09-30155,414,014.3155,339,884.4-190,094.9+115,965.061.00%
2017-10-31155,339,884.4155,350,079.033,815.6-23,621.069.85%
2017-11-30155,350,079.0155,737,562.7291,667.9+95,815.824.73%
2017-12-31155,737,562.7155,146,346.9-269,811.3-321,404.454.36%
2018-01-31155,146,346.9157,250,204.6847,510.4+1,256,347.259.72%
2018-02-28157,250,204.6161,718,882.24,077,893.7+390,784.08.74%
2018-03-31161,718,882.2164,688,121.42,514,687.8+454,551.415.31%
2018-04-30164,688,121.4165,327,076.41,017,893.7-378,938.737.23%
2018-05-31165,327,076.4168,089,253.72,555,043.7+207,133.67.50%
2018-06-30168,089,253.7168,595,276.0394,149.7+111,872.722.11%
2018-07-31168,595,276.0166,249,544.6-2,187,099.6-158,631.86.76%
2018-08-31166,249,544.6163,080,620.8-3,469,312.5+300,388.78.66%
2018-11-30143,813,957.8139,842,771.8-3,753,298.1-217,887.95.49%
2018-12-31139,842,771.8134,392,871.3-5,824,935.9+375,035.36.44%
2019-04-30119,641,782.6116,811,480.2-3,290,279.6+459,977.213.98%
2019-06-30232,397,820.0231,289,497.2-772,360.9-335,961.930.31%
2019-10-31230,084,635.0230,388,691.9-505,051.6+809,108.5160.20%
2019-12-31229,357,013.6231,029,602.3384,191.2+1,288,397.577.03%
2020-01-31231,029,602.3229,960,963.4-94,739.4-973,899.591.13%
2020-02-29229,960,963.4233,426,498.52,600,542.8+864,992.324.96%
2020-03-31233,426,498.5228,243,462.5-4,380,365.1-802,670.915.49%
2020-04-30228,243,462.5232,591,252.74,593,059.7-245,269.45.34%
2020-05-31232,591,252.7237,469,012.55,140,508.0-262,748.25.11%
2020-06-30237,469,012.5248,197,154.010,150,273.9+577,867.65.39%
2020-09-30267,533,922.2271,364,422.44,124,419.5-293,919.37.13%
2020-10-31271,364,422.4271,435,923.1-186,489.4+257,990.0138.34%
2021-02-28328,707,003.4333,162,470.74,824,566.7-369,099.37.65%
2021-04-30367,173,832.0371,305,370.04,689,666.0-558,127.911.90%
2021-06-30376,305,964.9381,515,695.85,806,052.1-596,321.210.27%
2021-07-31381,515,695.8389,148,749.06,981,851.7+651,201.58.53%
2021-09-30393,258,621.1395,270,945.52,438,584.2-426,259.817.48%
2021-10-31395,270,945.5398,415,511.13,757,265.4-612,699.816.31%
2021-11-30398,415,511.1400,567,317.42,397,663.8-245,857.610.25%
2022-01-31408,162,264.0404,362,291.7-4,857,023.8+1,057,051.621.76%
2022-02-28404,362,291.7404,218,103.7-392,134.5+247,946.563.23%
2022-04-30396,427,438.9378,582,798.1-16,656,880.4-1,187,760.46.66%
2022-05-31378,582,798.1372,684,069.3-6,736,280.5+837,551.612.43%
2022-06-30372,684,069.3363,019,356.3-9,046,539.1-618,173.96.40%
2022-07-31363,019,356.3360,070,386.5-3,421,241.1+472,271.313.80%
2022-09-30356,191,818.4354,331,761.7-2,153,682.9+293,626.213.63%
2022-10-31354,331,761.7352,546,131.1-1,669,017.4-116,613.26.53%
2022-11-30352,546,131.1350,405,901.7-1,865,960.6-274,268.812.81%
2022-12-31350,405,901.7350,813,752.387,705.1+320,145.578.50%
2023-01-31350,813,752.3356,292,492.25,042,951.5+435,788.57.95%
2023-02-28356,292,492.2357,083,949.4647,398.5+144,058.718.20%
2023-04-30356,604,516.6355,685,215.9-978,295.5+58,994.86.03%
2023-05-31355,685,215.9356,130,870.1267,161.3+178,492.940.05%
2023-06-30356,130,870.1355,768,438.4-395,569.5+33,137.88.38%
2023-09-30315,841,694.7316,321,438.3319,010.8+160,732.833.50%
2023-11-30314,271,139.4314,518,934.4128,854.7+118,940.348.00%
2024-01-31282,204,308.2281,273,763.6-1,666,630.0+736,085.444.17%
2024-03-31279,503,782.5280,154,117.0574,743.8+75,590.711.62%
2024-04-30280,154,117.0281,295,169.8824,859.8+316,193.027.71%
2024-05-31281,295,169.8282,007,983.0539,435.1+173,378.124.32%
2024-06-30282,007,983.0281,260,663.6-495,102.7-252,216.733.75%
2024-08-31279,163,150.9279,880,585.7476,885.8+240,549.033.53%
2024-09-30279,880,585.7276,243,317.8-700,931.8-2,936,336.080.73%
2024-10-31276,243,317.8277,655,688.61,946,370.4-533,999.527.44%
2025-01-31282,764,423.2283,750,567.01,079,441.3-93,297.48.64%
2025-02-28283,750,567.0287,483,127.33,380,550.6+352,009.69.43%
2025-06-30353,829,935.2356,138,679.91,336,074.4+972,670.342.13%
2025-08-31358,873,147.6360,175,263.81,490,971.8-188,855.712.67%
2025-10-31359,544,747.4359,101,515.3-276,511.0-166,721.137.61%
+
+
+ +
01 · Timeline — per ISIN
+ +
+
+ Broken (isin, month) pairs per month + Stacked: genuine gaps (red) vs likely accounting lags (amber) +
+
+
+
+
+ +
+
+
+ Total absolute missing flow per month + Sum of |missing flow| across all broken ISINs +
+
+
+
+
+ +
+
+ Missing % — top 5 ISINs over time + |missing flow| / max(|ΔAUM|, |recorded flow|) per ISIN — capped at movement size +
+
+
+
+
+
+ +
02 · By ISIN
+ +
+
+ ISIN summary — most affected +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ISINBroken monthsAvg missing %Total |missing| (shares)
LU09926249497730.40%9,242,285.0
MAPFRECG00015588.82%7,259,539.8
FR00101351038136.06%5,165,751.2
LU09926276117539.61%4,126,426.5
LU09926305997852.23%4,045,576.6
FR001400U4S3297.56%3,138,743.0
FR00135159702131.43%3,009,112.9
LU09926272986044.06%2,507,273.3
LU24206533673100.00%2,448,753.1
LU09926258397850.83%2,068,205.8
LU09926288586154.64%1,993,851.6
LU19324896904454.31%1,889,345.5
LU09926292376654.42%1,838,082.1
LU09926264807448.42%1,819,228.0
LU20043856674767.45%1,578,371.3
FR00101491798341.33%1,303,998.6
FR00101491207624.64%1,291,262.8
LU00991619937653.30%1,218,158.4
LU2809794220453.68%1,193,364.6
LU01644555027642.70%1,138,864.7
FR00101489819737.45%1,127,713.6
LU09926316476851.11%1,105,790.2
LU16237631482135.89%1,104,108.4
FR00103061424333.44%1,096,055.4
IE000YC0EJX13100.00%1,075,124.9
LU22959926762252.02%1,044,125.5
FR00101492038832.07%1,019,523.8
FR0014002E463571.17%1,006,027.6
LU17446304242950.52%968,949.8
LU09926297407158.41%945,682.5
LU05926989546731.78%942,842.7
FR00134670241972.21%881,422.2
FR00112690836127.94%852,242.8
GB00BJHPXB21540.82%841,104.6
FR00101491619151.99%766,231.0
FR00112695886729.54%745,825.6
LU16237619511943.56%737,392.5
LU2420652047373.07%722,247.7
LU1623763734658.35%714,314.9
LU22513052361968.81%710,494.0
FR00112690911748.15%660,525.8
FR00101491126341.04%656,077.2
LU09926312177247.42%649,337.2
LU27994734703100.00%649,277.5
LU12993066775035.42%648,362.5
FR001014930210636.20%640,545.7
LU09926317201158.31%628,432.2
FR00111474467950.28%577,561.5
LU22771463822546.31%526,334.9
FR00112691097834.97%503,057.3
LU24834850041100.00%499,400.7
FR00112690678035.81%495,364.0
LU21250443262100.00%487,234.5
LU24206512392100.00%459,265.5
FR00103126606429.23%450,622.2
LU16237628433626.29%446,550.6
LU10463273491657.11%444,005.1
FR00112695969645.82%429,561.7
LU2638444914268.46%407,488.0
FR0014000AL11989.21%397,703.3
LU09926250864471.90%390,472.3
FR00101489998440.40%388,066.0
FR00101476039134.12%381,747.1
LU11635337785450.08%365,731.4
FR00101492118541.74%364,151.8
LU09926307555254.01%355,999.2
LU12993051903624.29%352,782.5
LU12993063213915.64%346,722.2
LU16237632212856.92%344,431.7
LU09926252435056.34%343,400.4
LU11635334224523.99%318,672.0
LU2420652476276.59%317,375.0
LU09926253262762.43%287,229.1
LU2420652807855.11%285,537.3
FR00140082232239.60%280,829.3
FR00112695541634.20%280,471.6
LU05926990937139.48%272,254.3
LU17446282874232.76%265,852.3
LU16237627691937.25%262,133.6
LU1623762090498.66%254,647.8
LU09926277023762.33%254,161.1
LU19108374151658.97%245,181.0
LU03360840326930.23%242,037.8
FR00135160282653.19%235,745.1
FR00112691907257.40%235,560.8
LU2250732281517.04%235,492.8
FR00114438525028.34%235,214.0
FR0013516036855.39%234,634.3
LU17205133214733.46%222,003.7
FR00140081Y1910.02%221,584.6
FR00135160443100.00%216,692.3
FR00135159961828.15%203,158.7
LU12993008032100.00%200,000.0
LU19666310013843.13%197,954.6
LU12993057863429.60%197,572.9
FR001400U4T1195.77%188,038.1
FR00109566491547.76%186,743.1
LU22513053192345.34%182,817.4
FR001400KAX0461.14%182,467.8
LU22959923203748.21%181,353.3
LU13177040513525.43%170,082.6
LU08076895823858.57%155,359.3
LU03360834978138.38%154,591.9
LU09926284292754.42%149,829.9
LU2809794576451.88%149,550.0
FR001400U4V7194.15%149,362.0
LU12993113211479.59%141,256.3
LU17205115494640.08%136,637.3
LU16237624131754.15%133,631.8
FR00114438604338.94%127,179.0
LU1792391671978.85%126,329.7
LU07055728236931.87%123,490.9
FR001400U4U9256.40%123,428.9
LU09926300865436.21%121,773.1
LU08076901686629.86%116,903.8
LU09926275382067.11%113,330.0
LU2799473397492.93%109,628.1
LU03360838108238.08%105,281.7
LU09926283462848.37%104,998.2
FR00112693641256.26%98,658.2
FR00140139F6199.93%92,918.8
LU08076909116730.75%87,562.3
LU10463270002649.38%85,728.5
LU12993111641963.42%82,460.5
FR0011269125384.69%81,029.2
LU17205157062753.50%80,911.4
LU12993032295649.85%78,962.5
GB00BK1W2P36337.80%77,196.8
FR00112693801469.99%73,600.0
LU24206507771100.00%72,334.0
LU12993070554735.29%69,316.4
LU12993053563043.97%69,142.8
LU09926278843147.36%65,373.4
LU17923919112837.78%65,200.5
LU28097948161101.82%60,656.9
LU02942496926331.61%60,598.4
LU12993068344238.41%60,381.0
FR00140082311429.24%58,968.0
LU17484512311068.95%58,175.0
LU09926265633641.46%56,994.5
LU2020612904961.05%56,277.4
LU22513054002039.61%55,952.0
LU08076898224150.28%55,801.4
LU12993055132765.31%55,302.7
LU08076900855736.93%52,697.1
LU17205136772733.44%50,666.7
LU09926279674350.54%49,964.3
LU09926286922632.20%49,866.5
LU11635336953160.80%49,240.6
FR001400R3Z5199.89%48,231.6
LU20206128131058.85%47,447.6
FR001400KAV4314.92%46,341.6
LU13177041352829.00%44,001.3
LU11635333494329.43%43,354.1
LU2250732448438.74%42,749.7
LU09926274543235.49%41,775.0
LU05926992594932.89%41,013.6
LU24206518254100.00%40,054.0
LU0992626050881.43%38,794.1
GB00BJHPHZ49192.76%38,148.5
FR00112693496644.33%37,852.8
LU12993018762480.96%37,780.0
LU09926266471456.28%34,626.7
LU17205118952650.70%33,801.6
LU16237630641441.59%33,404.0
LU09926309122258.98%32,586.9
LU1299311677689.28%32,314.4
FR00112691828439.05%32,055.7
LU09926251692465.27%29,878.3
LU1720515615231.98%28,812.9
GB00BNDQ7P95225.42%28,568.6
FR00109566071344.50%27,406.4
LU19666307063537.22%26,504.6
LU09926320252084.09%26,300.3
LU12993074851732.61%26,196.3
LU08076907543946.28%25,922.3
FR00113658732830.96%25,682.0
LU19108372581544.37%24,876.7
LU08076897496045.33%24,238.2
LU16237625042100.00%24,000.0
FR0011269158875.10%22,618.8
LU09926273711969.33%22,449.7
LU12993020983447.49%22,150.2
LU08076908383260.22%21,891.9
LU12993022543642.02%21,294.5
LU0992625912680.88%20,848.3
LU16237635772100.00%20,000.0
LU17446288732100.00%20,000.0
LU19108373322100.00%20,000.0
LU1623762330282.58%19,071.3
LU09926267203031.73%17,723.3
LU11220727931150.93%16,639.0
LU09926256722443.48%16,205.7
LU09926302431451.40%16,194.1
LU12993059432831.91%12,570.2
LU1966631266376.35%12,512.3
GB00BJHPHX25474.18%12,485.4
FR00112694065136.25%12,433.1
FR00112690752100.00%12,343.5
LU09926310504424.88%12,221.7
LU0992626134583.97%11,971.3
LU08076902421369.63%11,650.9
LU09926294013125.13%11,582.2
LU2295992163954.08%11,097.0
LU2799473124972.78%10,873.8
FR0010956615697.69%10,765.1
LU2020612490871.88%10,714.8
LU16237634942100.00%10,000.0
LU09926303261064.48%9,851.2
LU12993118342344.05%9,839.8
LU09926301692546.66%9,784.6
FR0013516002756.93%9,771.0
LU17923922161048.50%9,304.2
LU1623762686255.35%9,274.6
LU12993030621071.54%8,849.6
LU1299303575789.28%8,834.8
LU12993045402054.64%8,750.9
LU05534133854132.19%8,507.5
LU2721495260811.43%8,251.3
LU12993048962014.68%8,206.9
LU05534153231373.59%8,203.9
LU12993039061261.57%8,170.5
LU2809794493199.88%7,599.9
FR0011269547299.92%6,830.7
LU2020612730941.03%6,202.2
LU24206523933100.00%5,759.0
LU18731480161321.05%5,489.3
LU05534076501723.93%5,187.5
GB00BJHPZ50215.48%4,975.5
LU272149542768.43%4,850.0
LU28126168161102.62%4,733.4
LU17923918381040.14%4,666.7
LU2420651072124.62%4,600.0
LU08076890793048.90%4,459.4
LU0992626993485.19%4,449.2
GB00BJHPHY32123.56%4,437.6
LU09926255995100.00%4,152.0
LU08076896654137.37%4,132.8
LU09926308393736.39%4,044.5
LU09926313082555.36%4,031.0
FR0011269570698.02%4,001.3
LU2139905785542.68%3,754.1
FR00140051L1212.81%3,722.8
LU13177043091465.91%3,707.8
LU17923912421544.99%3,532.7
LU20043851541085.93%3,425.4
FR00140081Z849.73%3,346.8
FR0014008207556.44%3,214.6
LU09926319932129.53%2,959.7
LU08076894001081.86%2,957.8
LU1623762926914.32%2,956.0
LU19324768791273.44%2,676.5
LU10463271821266.45%2,643.7
LU1048598442756.80%2,586.7
FR00135278273100.00%2,451.3
LU05926991761482.33%2,309.5
LU2585801173125.70%2,258.6
LU0992629310368.89%2,200.0
LU13177042184100.00%2,191.4
LU08076889312152.62%2,075.0
GB00BQXJRP97116.82%1,860.5
LU08076906711560.17%1,707.8
LU0992629583354.38%1,607.8
FR001400M1P515.25%1,589.1
LU05534110901663.57%1,522.7
LU04133720603100.00%1,428.5
LU1623762256560.18%1,426.3
FR0013516010266.79%1,391.2
LU08076891521418.64%1,316.2
GB00BJHPJ035111.33%1,167.7
FR00112693311072.33%1,131.9
LU2721494966556.19%1,019.9
FR001400JG642100.00%1,000.0
LU0992629823538.60%907.0
LU1122113498776.26%893.9
LU31492007461100.00%868.2
LU09926289322450.19%864.8
LU1873147984533.34%861.8
LU1299304201264.94%794.0
LU220698262657.86%792.7
LU22959922471125.89%785.4
FR0011269323472.69%644.0
LU1299301017559.10%603.7
LU1792392059352.16%537.0
FR001400M1N0117.22%482.8
LU24269511952100.00%400.0
LU0553405878520.20%396.4
LU0992631480526.80%375.4
FR001400KAY818.27%375.3
LU0992625755669.60%347.1
LU2462965026125.99%326.3
LU2427320499254.88%299.2
LU24206526331100.00%295.0
LU11635339352100.00%260.0
LU24903245012100.00%223.2
LU2715954504112.00%216.6
LU1792391754488.22%204.4
LU17923923072100.00%200.0
LU17923924892100.00%200.0
LU17923913252100.00%200.0
LU17923915982100.00%200.0
LU17923921332100.00%200.0
LU17923925622100.00%200.0
LU09926287752100.00%181.3
LU24903244101100.00%180.0
LU1299302684721.82%164.6
LU09926315633100.00%133.5
LU0992628007383.13%131.5
LU1792392646254.26%115.4
LU1163533851490.59%108.9
LU0992628189263.53%95.5
LU09926296664100.00%72.0
LU19666309611103.85%54.0
LU08076910592100.00%23.9
LU10463274222100.00%20.0
LU10463272652100.00%20.0
LU242732057217.57%16.8
LU25858012561100.00%10.0
LU1299301280424.10%6.4
LU12993037322100.00%2.0
LU09926291532100.00%2.0
LU12993028412100.00%2.0
LU14352451512100.00%2.0
LU09926263082100.00%2.0
LU12993024112100.00%2.0
LU09926270251100.00%1.0
LU0992631134210.00%0.2
+
+
+ +
03 · Detail log
+ +
+
+ All broken (isin, month) pairs + + lag = likely resolved by extending flow window ±3 days + +
+
Threshold α = 5.0% · showing up to 200 rows
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DateISINQ(t-1)Q(t)Net flowMissingMissing % of movement
2021-10-31LU129930187641,272.841,472.8-200.0+400.0200.00%
2019-07-31LU0992625086437,947.2439,921.3-1,965.9+3,940.0199.59%
2021-02-28LU0992626563160,596.6160,255.0340.0-681.6199.53%
2019-01-31FR0010148999462,052.4464,356.2-2,291.9+4,595.8199.48%
2020-08-31LU0992631217376,366.3383,863.7-7,431.0+14,928.3199.11%
2020-11-30LU17446304242,294,380.32,276,677.317,929.9-35,632.9198.73%
2020-02-29LU0992626480430,198.2443,198.5-12,812.2+25,812.5198.55%
2020-03-31LU129930209838,843.339,312.6-461.3+930.6198.29%
2020-07-31LU1966631001170,407.8170,527.0-121.7+241.0198.01%
2020-11-30LU0807689822101,096.297,961.83,047.6-6,182.0197.23%
2015-06-30FR00114438522,491,982.02,497,945.0-5,767.0+11,730.0196.71%
2023-10-31LU22513052361,990,279.12,036,540.8-44,669.9+90,931.6196.56%
2020-12-31LU080769083820,389.119,920.4450.2-918.9196.06%
2015-09-30LU0807689822488,811.1488,926.1-110.0+225.0195.65%
2019-06-30LU12993039065,919.94,934.81,031.5-2,016.5195.50%
2021-09-30FR00112695881,060,192.01,058,056.42,038.7-4,174.3195.46%
2015-06-30LU10463270001,263,760.91,264,553.4-755.2+1,547.8195.28%
2023-12-31LU1299306834119,675.6119,318.9335.3-692.0194.01%
2022-04-30LU0992625086207,158.1205,002.02,024.0-4,180.0193.87%
2022-01-31FR0014002E46256,889.0241,587.014,359.0-29,661.0193.84%
2023-08-31LU0992625839915,623.1894,089.820,186.5-41,719.8193.75%
2022-12-31LU17446304243,822,166.03,835,622.0-14,391.1+27,847.0193.50%
2021-03-31LU1910837415358,720.9357,862.3926.7-1,785.3192.65%
2020-01-31LU174845123138,470.038,530.0-65.0+125.0192.31%
2016-01-31LU099262516935,875.935,910.7-32.1+66.9192.22%lag
2022-01-31FR00101491204,340,913.24,390,919.1-45,984.5+95,990.4191.96%
2022-11-30LU17446282871,641,117.31,641,835.4-792.6+1,510.7190.61%
2018-10-31FR00101491791,164,762.41,147,977.115,184.5-31,969.8190.46%
2022-01-31LU0992629237495,401.8482,477.914,361.6-27,285.5189.99%
2022-07-31LU0807690911189,610.8190,694.7-973.0+2,057.0189.76%
2022-10-31FR0011269596125,580.3127,992.0-2,162.6+4,574.3189.67%
2017-12-31LU0992629740657,035.4659,997.9-3,305.2+6,267.7189.63%
2020-01-31LU19324896901,366,492.21,296,106.262,852.6-133,238.5189.30%
2019-12-31LU129930454013,578.714,050.3-528.4+1,000.0189.24%
2021-04-30LU099262753825,568.020,441.65,770.8-10,897.2188.83%
2022-01-31LU179239167172,194.199,213.5-30,417.4+57,436.8188.83%
2017-12-31FR001014916186,076.083,467.82,311.0-4,919.2188.61%
2020-11-30LU129930209841,760.942,009.4-218.9+467.5188.06%
2016-05-31LU11635334221,301,663.01,258,612.637,903.5-80,953.9188.04%
2022-01-31LU129931132142,203.073,421.5-35,669.1+66,887.6187.52%
2020-02-29LU0992628858863,778.9824,020.745,554.7-85,313.0187.28%lag
2023-01-31LU172051154981,368.081,704.1-386.1+722.2187.05%
2022-03-31LU0992625086206,132.3207,158.1-886.2+1,912.0186.39%
2023-09-30LU0992628858438,475.5441,051.8-2,217.3+4,793.6186.06%
2023-01-31LU09926305991,678,605.11,704,500.1-30,172.2+56,067.3185.82%
2021-05-31LU1299302254115,388.1114,650.0862.5-1,600.5185.57%
2020-07-31LU0992625086535,580.6534,726.6730.6-1,584.7185.55%
2016-09-30FR0011269596783,214.5782,419.3676.3-1,471.5185.05%
2024-01-31LU1932476879325,636.5325,652.2-18.6+34.4184.62%
2020-02-29LU172051189543,254.643,529.6-325.0+600.0184.62%
2023-05-31LU2295992320132,582.4133,563.5-1,159.8+2,141.0184.59%
2021-05-31LU1966631001173,809.6173,898.3-74.9+163.5184.48%
2018-03-31FR0010149211471,094.0473,287.3-1,852.6+4,045.8184.46%
2020-01-31LU0592699093620,491.8613,273.88,572.4-15,790.4184.20%
2022-08-31LU129930705582,033.782,410.4-449.3+826.0183.84%
2019-09-30LU05926989542,005,571.01,969,318.043,247.7-79,500.7183.83%
2023-04-30LU22513052361,607,014.61,642,066.8-29,349.5+64,401.6183.73%
2021-01-31LU0992631647890,404.6902,439.0-9,906.1+21,940.5182.32%
2020-11-30FR00101489812,059,749.32,058,733.91,235.0-2,250.4182.22%
2023-01-31FR0010149211327,146.4330,371.3-3,939.2+7,164.1181.87%
2024-01-31LU09926289321,886.01,941.0-45.0+100.0181.82%
2023-11-30LU22513052362,036,540.82,097,480.7-74,623.4+135,563.3181.66%
2021-05-31FR001126919064,812.065,087.9-223.3+499.2180.93%
2019-10-31LU01644555021,036,350.41,050,812.0-17,882.4+32,344.0180.87%
2018-01-31LU05926989543,939,802.63,896,946.734,288.2-77,144.1180.01%
2023-10-31FR0013467024439,847.7474,147.1-27,200.6+61,500.0179.30%
2020-08-31LU1966631001170,527.0170,389.9173.0-310.1179.26%
2023-09-30FR001126959698,268.099,596.7-1,677.0+3,005.8179.23%
2024-12-31LU13177040511,595,339.21,595,558.8-174.0+393.5179.22%
2017-08-31LU0992625326291,030.7287,628.74,303.0-7,705.0179.06%
2025-09-30LU1966631001631,719.2631,198.7407.9-928.4178.37%
2015-06-30FR001030614218,311,140.518,251,758.675,920.3-135,302.2178.22%
2023-07-31LU080768974912,451.312,600.9-116.0+265.6177.53%
2024-12-31LU0336083497197,574.1198,450.7-676.6+1,553.2177.18%
2018-05-31LU1299306834213,840.7212,969.41,129.3-2,000.6177.16%
2017-09-30LU0992628429351,111.5350,401.0924.8-1,635.3176.83%
2022-05-31LU0992625086205,002.0205,190.6-246.4+435.0176.54%
2025-09-30LU2295992320121,843.0121,632.9275.1-485.1176.36%
2021-01-31LU129930209839,805.439,214.5449.3-1,040.2176.05%
2015-06-30LU055341338514,905.814,940.7-26.5+61.5175.94%
2022-11-30LU229599232072,950.673,238.0-217.9+505.3175.84%
2022-06-30LU1623763221183,210.0161,343.416,529.3-38,395.9175.59%
2019-12-31FR0010148999427,252.8417,399.57,430.1-17,283.4175.41%
2024-01-31FR0010149302735,920.5736,643.1-961.3+1,683.9175.16%
2016-03-31FR00114438601,145,538.01,142,337.02,403.0-5,604.0175.07%
2023-04-30LU00991619931,002,257.61,009,455.5-5,399.0+12,596.9175.01%
2020-09-30FR001126940643,164.743,038.4169.5-295.8174.50%
2021-10-31LU0992630755477,721.4478,529.7-1,087.1+1,895.4174.35%
2020-03-31LU09926272982,052,919.02,025,161.337,346.1-65,103.8174.33%
2018-02-28LU0992630755808,227.7807,403.91,119.8-1,943.6173.56%
2017-07-31FR001126919082,669.082,622.363.7-110.4173.41%
2021-10-31FR0011269109331,219.2328,880.41,715.9-4,054.8173.36%
2020-12-31FR001013510313,830,818.113,860,890.0-41,041.4+71,113.3173.27%
2021-09-30LU1299303229133,454.3133,893.3-320.9+760.0173.09%
2016-05-31FR0011269596739,413.1748,534.1-6,666.7+15,787.7173.09%
2017-09-30LU0336084032905,060.7903,772.81,769.6-3,057.5172.78%
2020-02-29LU08076889312,418.42,334.1116.2-200.5172.53%
2020-07-31LU129930535643,197.643,307.8-79.7+190.0172.30%
2019-08-31LU0705572823191,408.5190,736.4484.5-1,156.6172.10%
2015-02-28FR001014916159,793.659,564.8164.6-393.4171.93%
2023-06-30FR0010147603480,073.7481,257.1-845.4+2,028.8171.44%
2020-02-29LU0164455502939,005.0981,098.6-29,854.0+71,947.6170.92%
2015-09-30LU116353377849,461.047,120.01,659.0-4,000.0170.87%
2019-05-31LU0992628858699,522.1750,528.0-72,332.9+123,338.8170.52%
2020-04-30LU099262842929,281.029,252.320.2-48.9170.25%
2020-05-31LU09926272982,030,187.32,025,778.46,278.9-10,687.9170.22%
2016-08-31LU1299311164161,356.5162,533.4-823.2+2,000.0169.95%
2023-10-31LU19324896902,217,456.92,230,427.4-18,551.9+31,522.4169.91%
2015-05-31FR00114438601,061,577.01,058,070.02,428.0-5,935.0169.23%
2024-04-30LU033608381029,939.829,683.0176.1-432.9168.60%
2021-08-31FR001114744678,444.1113,252.0-50,842.0+85,649.9168.46%
2017-03-31LU05926990931,076,587.41,073,680.94,268.1-7,174.6168.10%
2019-12-31FR0010149211409,898.2407,338.01,736.4-4,296.6167.83%
2023-10-31LU1299303229216,803.6217,740.3-633.7+1,570.4167.65%
2022-02-28LU09926305991,142,618.01,154,363.8-7,934.8+19,680.6167.55%
2021-11-30LU0992631217788,933.5772,557.324,431.2-40,807.5167.03%
2022-04-30FR00101489811,864,707.31,871,345.2-4,427.3+11,065.3166.70%
2023-11-30FR0010147603446,570.7446,778.3-311.9+519.5166.56%
2020-11-30FR0011269067352,858.1351,384.0979.7-2,453.8166.46%
2016-10-31LU0992625243391,142.1389,570.32,384.2-3,956.0165.93%
2017-02-28LU1163533778143,982.1124,197.912,993.8-32,778.0165.68%
2023-10-31FR0014008223380,340.1378,682.42,531.6-4,189.2165.48%
2019-10-31FR001114744667,234.567,459.5-344.9+569.8165.23%
2019-03-31LU0992630086176,886.1174,609.33,503.9-5,780.7164.98%
2019-05-31LU099262737147,782.947,732.977.0-127.0164.94%
2023-09-30FR0010147603456,903.8455,994.51,404.8-2,314.2164.73%
2021-02-28LU129931183412,832.512,571.1169.2-430.6164.70%
2020-11-30LU0992625243125,559.9129,130.3-5,549.7+9,120.1164.33%
2015-09-30FR0011365873390,215.6390,089.681.0-207.0164.29%
2021-04-30LU0099161993573,323.0575,509.0-3,404.3+5,590.4164.21%
2023-04-30LU1623763221241,910.8236,499.63,474.2-8,885.3164.20%
2020-08-31LU172051189540,964.840,823.390.7-232.1164.08%
2019-04-30LU099263091214,727.715,075.9-223.0+571.2164.04%
2021-01-31LU0992628858482,635.0485,511.3-4,492.4+7,368.8164.03%
2022-08-31LU1623763221148,821.4153,502.2-7,330.7+12,011.6163.85%
2017-02-28LU05926989544,127,778.44,105,759.414,047.7-36,066.7163.80%
2022-07-31LU0992631217596,237.2608,620.7-19,526.2+31,909.7163.42%
2018-06-30LU129930454021,433.222,180.4-473.1+1,220.3163.32%
2021-09-30LU0099161993580,023.6565,574.89,141.8-23,590.6163.27%
2019-01-31LU1299302254130,238.7130,205.153.1-86.7163.21%
2020-04-30LU2004385667258,295.8262,285.2-6,315.5+10,305.0163.17%
2023-07-31LU00991619931,002,044.71,005,278.0-2,031.7+5,264.9162.84%
2015-07-31LU0992631217754,675.8756,672.1-3,178.2+5,174.5162.81%
2021-08-31LU0992631647637,109.2634,546.51,597.5-4,160.2162.34%
2023-04-30FR0014002E46332,803.7361,232.0-17,572.0+46,000.3161.81%
2021-10-31LU09926269939,619.310,384.0-470.7+1,235.4161.57%
2023-12-31LU09926272981,291,509.21,350,102.9-95,406.0+153,999.7161.42%
2020-12-31LU099262753815,425.714,994.9263.6-694.4161.19%
2019-10-31FR0010148999421,081.1435,152.3-8,522.9+22,594.2160.57%
2016-12-31LU099263083913,379.113,408.7-17.8+47.4160.32%
2015-11-30LU05926991769,020.09,010.25.9-15.7160.24%
2021-11-30FR0011269182127,509.7127,542.9-55.2+88.4160.07%
2022-09-30LU09926272984,375,224.44,168,305.9123,717.5-330,636.0159.79%
2020-08-31LU0099161993593,941.8584,542.75,584.5-14,983.6159.41%
2015-04-30LU00991619932,029,467.42,030,238.2-1,303.7+2,074.4159.12%
2018-08-31LU080768958212,908.912,921.9-22.0+35.0159.09%
2017-12-31LU080769083861,773.261,625.986.6-233.9158.77%
2017-04-30LU0992629237749,836.0752,781.3-5,017.6+7,962.9158.70%
2021-10-31LU09926313087,289.17,444.2-89.8+245.0157.88%
2020-10-31LU080768982298,286.7101,096.2-1,624.0+4,433.5157.81%
2016-08-31LU0992628429527,879.5526,068.01,037.1-2,848.6157.26%
2022-04-30LU0992629237570,682.3572,423.1-3,054.0+4,794.8157.00%
2023-05-31LU0592699093671,484.0675,936.3-2,508.9+6,961.2156.35%
2021-03-31LU2020612904100,970.799,557.0790.3-2,204.0155.90%
2020-04-30FR0010148999392,332.0392,204.4229.6-357.1155.56%
2017-08-31FR0010149211477,891.9477,699.9346.3-538.2155.43%
2022-03-31LU09926276119,909,531.49,954,705.8-24,922.9+70,097.3155.17%
2023-03-31LU09926288581,083,266.21,076,128.012,956.7-20,094.9155.09%
2020-02-29LU09926272982,018,330.32,052,919.0-19,033.6+53,622.3155.03%
2020-11-30LU129930551320,778.821,684.1-494.7+1,400.0154.65%
2020-12-31LU059269925946,559.547,055.6-914.1+1,410.2154.27%
2023-12-31FR00112690831,519,948.41,518,968.01,806.8-2,787.2154.26%
2023-07-31FR0014002E46268,920.0242,313.049,518.3-76,125.3153.73%
2015-07-31FR00101491121,695,906.11,657,854.620,444.0-58,495.5153.73%
2023-05-31FR001126919048,349.249,106.6-406.6+1,164.1153.67%
2016-11-30LU080769008564,706.763,581.9602.5-1,727.4153.57%
2016-11-30LU05534153235,493.25,488.78.4-12.9153.44%
2018-03-31LU05926989543,815,977.43,832,806.2-31,593.5+48,422.3153.27%
2020-03-31LU129930551323,647.623,680.3-61.4+94.1153.26%
2016-12-31LU104632734959,172.659,143.215.6-45.0153.16%
2023-07-31LU2004385667360,131.4429,144.2-36,305.1+105,317.9152.61%
2020-11-30LU0992629237557,745.8536,727.839,965.3-60,983.3152.59%
2020-05-31LU080769075434,619.334,667.0-90.7+138.4152.58%
2021-12-31LU1299303229135,235.9134,755.7916.3-1,396.6152.41%
2023-08-31FR0010149211308,255.1309,363.4-2,115.0+3,223.3152.40%
2023-03-31FR00101489811,794,364.41,793,166.2624.9-1,823.0152.15%
2020-12-31LU0992625243129,130.3125,528.81,877.6-5,479.1152.13%
2019-01-31LU033608381099,361.196,862.71,302.4-3,800.9152.13%
2015-04-30LU01644555021,660,764.71,663,095.6-1,209.8+3,540.6151.90%
2022-05-31LU09926305991,175,832.51,201,247.2-13,174.9+38,589.6151.84%
2018-03-31FR00103126602,391,650.72,399,556.6-15,293.8+23,199.7151.69%
2020-05-31LU172051570696,899.097,899.0-516.2+1,516.2151.62%
2018-05-31FR001114744655,551.755,458.9180.3-273.0151.44%
2022-01-31LU09926305991,108,235.91,142,618.0-17,623.7+52,005.8151.26%
2024-02-29LU2004385667685,696.0654,756.815,789.1-46,728.2151.03%
2020-05-31LU0992628858363,338.5337,708.650,246.3-75,876.2151.01%
2021-06-30FR0011269182123,641.3123,661.5-10.3+30.5150.84%
2016-10-31LU0992627702587,865.2576,973.95,528.7-16,420.0150.76%
2017-09-30FR00101492031,143,731.21,146,564.3-1,438.1+4,271.3150.76%
2024-08-31LU0992625839741,726.3741,760.1-66.6+100.4150.74%
+
+
+ +
+ + + + + \ No newline at end of file diff --git a/repair_challenge/push_s3.ipynb b/push_s3.ipynb similarity index 54% rename from repair_challenge/push_s3.ipynb rename to push_s3.ipynb index 2e0a118..f53ccc4 100644 --- a/repair_challenge/push_s3.ipynb +++ b/push_s3.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "id": "5c8fc6c5", "metadata": {}, "outputs": [], @@ -24,19 +24,34 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "id": "d43b725e", "metadata": {}, "outputs": [], "source": [ - "push_file('AUM_repaired.csv', 'projet-bdc-carmignac-g3//paco/AUM_repaired.csv')\n", - "push_file('AUM_paths.csv', 'projet-bdc-carmignac-g3//paco/AUM_paths.csv')" + "push_file('carmignac_broken_months.csv', 'projet-bdc-carmignac-g3//paco/carmignac_broken_months.csv')\n", + "push_file('carmignac_error_account_agg.csv', 'projet-bdc-carmignac-g3//paco/carmignac_error_account_agg.csv')\n", + "push_file('carmignac_error_account.csv', 'projet-bdc-carmignac-g3//paco/carmignac_error_account.csv')" ] } ], "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, "language_info": { - "name": "python" + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.13.12" } }, "nbformat": 4, diff --git a/repair_challenge/carmignac_repair.py b/repair_challenge/carmignac_repair.py index 11980f9..3526aa2 100644 --- a/repair_challenge/carmignac_repair.py +++ b/repair_challenge/carmignac_repair.py @@ -65,7 +65,7 @@ def load_broken_months(broken_months_path): try: df = pd.read_csv(broken_months_path, parse_dates=["date"]) broken = set(zip(pd.to_datetime(df["date"]), df["isin"].astype(str))) - lags = set(zip(pd.to_datetime(df.loc[df["is_lag"], "date"]), + lags = set(zip(pd.to_datetime(df.loc[df["is_lag"], "date"]), df.loc[df["is_lag"], "isin"].astype(str))) print(f"[Broken months] Loaded {len(broken)} flagged (isin, month) pairs " f"({len(lags)} likely lags)") @@ -801,7 +801,7 @@ def export_results(scores_history, mapping_history, surgery_log, all_months, out # ───────────────────────────────────────────── # 8. PIPELINE PRINCIPAL # ───────────────────────────────────────────── -def run_pipeline(aum_path, flows_path, broken_months_path=None): +def run_pipeline(aum_path, flows_path, broken_months_path="carmignac_broken_months.csv"): print("=" * 60) print("CARMIGNAC — Pipeline de réparation des Registrar IDs") print("=" * 60) diff --git a/repair_challenge/diagnosis_logs.txt b/repair_challenge/diagnosis_logs.txt new file mode 100644 index 0000000..ae7bdac --- /dev/null +++ b/repair_challenge/diagnosis_logs.txt @@ -0,0 +1,36 @@ +============================================================ + CARMIGNAC — Broken Months Diagnostics +============================================================ + (isin, month) pairs examined : 39874 + Broken (missing_pct > 5%) : 7545 (18.9%) + Of which likely lag : 491 + Of which genuine gap : 7054 + + Top 10 by missing_pct: + date isin missing_flow missing_pct is_lag +2021-10-31 LU1299301876 400.000 2.000000 False +2019-07-31 LU0992625086 3940.000 1.995856 False +2021-02-28 LU0992626563 -681.559 1.995325 False +2019-01-31 FR0010148999 4595.753 1.994832 False +2020-08-31 LU0992631217 14928.331 1.991141 False +2020-11-30 LU1744630424 -35632.925 1.987345 False +2020-02-29 LU0992626480 25812.484 1.985526 False +2020-03-31 LU1299302098 930.648 1.982950 False +2020-07-31 LU1966631001 240.957 1.980076 False +2020-11-30 LU0807689822 -6181.993 1.972331 False + + Most affected months: + n_broken total_missing +date +2019-12-31 123 2052282.985 +2021-09-30 113 1892096.272 +2020-12-31 107 652351.530 +2020-11-30 105 833084.202 +2021-01-31 104 784362.333 + + Aggregate broken months : 85 (of which lags: 2) + Max aggregate error stock : 3,057,936.2 shares (0.749% of total AUM) +[Export] Broken months CSV → carmignac_broken_months.csv +[Export] Error account (ISIN) → carmignac_error_account.csv +[Export] Error account (agg) → carmignac_error_account_agg.csv +[Export] HTML report → carmignac_diagnostics.html \ No newline at end of file