Files

SET100 constituent data

set100_pit_2024_2026_h1.csv contains dated SET100 membership from January 2, 2024 through June 30, 2026. Each row is an inclusive interval for a symbol. build_set100_pit.py recreates it from the reviewed snapshots and dated SET notices. The original set100_2026_h1.csv remains as the official H1 2026 fixture.

The H1 2025 interval is split for SET's between-review changes: MOSHI replaced BSRC on February 27; GULF's ticker changed to GULFI before the March 21 suspension; the merger changes took effect in the index on April 2, with GULF and ROJNA replacing GULFI and INTUCH; SNNP replaced JTS on April 16. SET's May 15 TIDLOR restructuring replaces NTL with TIDLOR; the membership file tracks the SET100 symbol TIDLOR continuously across that replacement because this CSV does not encode issuer identity or share-swap price treatment.

Sector labels are blank for 2024 and 2025. They are only populated for H1 2026, where the official SET constituent table supplies them. The loader treats blank sectors as unavailable; no historical sector is inferred from a later classification.

Official sources

The SET archive lists a second H2 2026 file marked “between the periodic review update,” but its full constituent file is not available in the public materials used here. The H2 2026 membership is therefore not included; accurate mode should stop at June 30, 2026 rather than carry the H1 list forward. The archive page is SET50 and SET100 constituents.

CSV columns are symbol,start_date,end_date,sector. The point-in-time loader rejects overlapping intervals and accurate backtests reject dates without membership data. Sector history and security identity through mergers/share swaps are separate data requirements; this file supplies membership symbols and dates only.