Ongoing FactSet data issues

Dear all,

We've started running some data checks after several reports of missing data, for example this one Data available in fundamental chart but missing in screener/panels

Turns out that FactSet is missing filings (mostly interims) in USA as well. There are about 50 companies in the USA missing some filings and about 100 in Europe. It's troubling because some major companies are missing filings like CRM:USA JNPR:USA, ANET:USA, FBIN:USA

You can see it for yourself by pulling up the snapshot page for the tickers above. You will see a small number of bars in like below

The reason the Snapshot looks this way is that it's a point-in-time view, and when we notice a hole in the filings we stop adding processing statements. If you change the As-Of date to two years ago you will see that problem is gone for CRM:USA since the missing statement is in the future.

Two Things

We're started feeding FactSet these issues and pressing them to make the necessary fixes so it stops happening. We are giving them issues a bunch at a time so we don't overwhelm them and keep them focused. We made this data QA part of our process: periodically we run a screen to find problems, examine them, and report them to FactSet.

We are thinking of revisiting our logic of doing hard stops if there are holes (which makes it obvious something is amiss). Perhaps we keep the hole and continue loading the statements. This will not fix TTM factors that are NA due to the holes, but it will allow other factors to compute, like ones that use annuals.

Let us know your feelings. Thanks

PS. This is how CRM looks on FactSet. Not very flattering :frowning:

5 Likes

Frustrating! I'm still happy with the overall data quality, glad to see you are pushing FactSet. You'd think they'd be very happy for free help with their data!

very good approach, you paid for complete data.
i like the approach with keeping the hole and continue loading the statements.

how these issues can neglected by Factset ? :thinking: unbelievable :astonished:

1 Like

In a sane world P123 would get a large rebate for every bit of missing data they report

1 Like

FactSet added missing statements. They now look ok in our snapshot. Onto the next batch...

2 Likes

Unbelievable ... they just added. Where are QA people in Factset ? :astonished:

1 Like

Having a QA process is a prudent choice. It's crucial for P123 to critically analyze the data from its providers to avoid being seen merely as a superficial layer over these data sources. By scrutinizing the data, P123 can truly add value for its users.

Moreover, have you considered the periodic creation of complete snapshot backups? These backups would be reserved exclusively for quality assurance and not for user access. Such a strategy could be particularly beneficial for diagnosing and understanding issues that become irreproducible once the data providers address and rectify the underlying errors—like these 'data holes'—without any notification.

1 Like

I found that one of polish stocks I hold SNK:POL (small/mid cap) have missing financials for 4Q/2023. This stock published 4Q/2023 report on 22/03/2024.

How I can reliably backtest (European) strategy in this environment ? In backtest I use available data 'as of date', but do not know if there was a substantial lag between the time the report was published to public and availability in Factset.

Please keep pressing Factset, Thanks.

1 Like

We are currently only monitoring gaps. This is different: FactSet is taking a long time to process the latest filing. This is not uncommon unfortunately, and other providers do it too (but they will expedite specific requests from their clients).

You can see which are late with the rules below. About 65 companies are late with MktCap>250

InterimMonths(0)=3
@d:DaysSince(LatestFilingDate) > 120

SNK:POL update...21 days later...

Now it is even worse...All the data is lost.
21 days earlier, SNK:POL had data for 3Q/2023 and previous periods. After new 4Q/2023 data arrived, all the previous data is lost.

FactSet missed the annual report. They go from Q3 '23 to Q1 '24, and our system doesn't allow gaps in financials.

Is that fixed now?

No.

You can use this rule to filter out stocks with this problem:
InterimMonths(0)=3 and FHist("salesq",13*9)!=NA and LoopSum("Sales(CTR,QTR)=NA",8) > 0

or less agressive filter:

InterimMonths(0)=3 and FHist("salesq",13*9)!=NA and LoopSum("Sales(CTR,QTR)=NA",8) >= 7

Honestly, even Yahoo's data is more complete than they are. Couldn't P123 just fill them with publicly available data?

Or you can have ChatGPT automatically analyze financial reports and output the numbers.

FactSet informed us late this week that they had completed the fix to the Polish stocks that were missing quarters.

1 Like

I ran the screen to find issues, checked that it is in fact a data issue on Factset's workstation, and reported the companies below to them today. There are at least 25 more that are big enough that I will report in the next few days. I think it's best to report a handful at a time. I'm also asking them why they don't run periodic queries to catch these issues.

Thanks

Ticker Name MktCap Reported July 29 2024
1AT:POL ATAL SA (Poland) 533.0 Missing Interim: Dec '23
HUG:POL Huuuge, Inc. 336.4 Missing Interim: Dec '23
SNK:POL Sanok Rubber Company SA 125.7 Missing Interim: Dec '23
UNT:POL UNIMOT SA 290.3 Missing Interim: Dec '23
BKT:ESP Bankinter SA 7869.8 Missing Interim: Mar '24
SGN:POL Sygnity SA 351.0 Missing Interim: Sep '23
MUV2:DEU MĂĽnchener RĂĽckversicherungs-Gesellschaft AG 66540.0 Sep '23, Mar '23, Dec '22
2 Likes

Submitted these to FactSet today. They are all missing interims. Annuals appear OK. Mktcaps range from 3B to 1B

Fielmann Group AG (FIE-DE)
Dec '23

OYAK Cimento Fabrikalari A.S. (OYAKC.E-TR)
Dec '23

VEON Ltd. (VEON-NL)
Dec '23

Galapagos NV (GLPG-NL)
Dec '23

Baticim Bati Anadolu Cimento Sanayii A.S. (BTCIM.E-TR)
Dec '23

Kempower Oy (KEMPOWR-FI)
Too many to list

1 Like

SNK:POL finally fixed.

There are 23 out of 246 Polish tradeable equites that should be reported.
It seems like there is a small progress.

rules:
Country("POL") and MedianDailyTot(10) > 10000 and mktcap > 10 and price > 1 // in PLN
InterimMonths(0)=3 and FHist("salesq",13*9)!=NA and (LoopSum("Sales(CTR,QTR)=NA",8)>0 OR SalesPTM=NA)

For some reason, my European strategy also loves Polish stocks.

Maybe it's because their overall market has a lower valuation.

I can't help but look forward to Asia-Pacific data as Asia has extremely cheap markets like Hong Kong. Their stocks are even cheaper than Poland's.