Python Screener() function error

Dear all,
I get an error when I try to run a screen in Python on CodeBook.
I start with the example ,ipynb file provided (titled "Access__Screeners_And_Peers.ipynb")
To get the screen I want, I follow the explanations on the Developers portal: I use the screener function on the Workspace desktop app (no error), then I exported it on Excel (with formulas). I open it in Excel (no error). From the Excel function, I extract the screener details.
Here is my exact Excel function (no error in Excel):
=@TR ("SCREEN(U(IN(DEALS)/UNV:DEALSMNA/), IN(TR.MnAAcquirorNation,""BH"",""IR"",""IQ"",""IL"",""JO"",""KW"",""LB"",""OM"",""PS"",""QA"",""SA"",""SY"",""AE"",""YE"",""DZ"",""EG"",""LY"",""MA"",""TN""), BETWEEN(TR.MnAAnnDate,20000101,20041231)/dt:Date"&"/, TR.MnAPctOfSharesAcqSeeksToOwn>=100, TR.MnADealValue(Curn=USD,Scale=6)>=1, TR.MnAPctHeldAtAnnDate<50, CURN=USD)","TR.MNASDCDealNumber,TR.MnAAnnDate,TR.MnARankDate,TR.MnARankValueIncNetDebt(Curn=USD,Scale=6),TR.MnATarget,TR.MnATargetPermId,TR.MnAT"&"argetMacroInd,TR.MnATargetMidInd,TR.MnATargetNation,TR.MnAAcquiror,TR.MnAAcquirorPermId,TR.MnAAcquirorMacroInd,TR.MnAAcquirorMidInd,TR.MnAAcquirorNation,TR.MnATargetFinAdvisor(Concat='|'),TR.MnAAcquirorFinAdvisor(Concat='|'),TR.MnATargetPermId,TR.MnA"&"AcquirorPermId,TR.MnASynopsis,TR.MnAAcquirorBusDesc,TR.MnATargetBusDesc,TR.MnATargetPublicStatus,TR.MnAStatus,TR.MnADateUnconditional,TR.MnAConsidOfferedCategory(Concat=',')/EncodedScreenStart[{""currency"":""USD"",""universeĊĀlistsĊ[]đallě""actĕĚ:t"&"rueđinīĭĖĊfĦęđownėshipĻĽĴ""primaryOnlĉİIJŊŌĕatįļlľŋubĝcĊıijđcoēıyŚŏőquoŝňŠŊtŐgeĭnĖğorŷšŀćonƄŊdeĽmķƊđƌʼnqboƑ""ƓŸqƘƚsloaƉ:şšƞƖndƝƍŠŌojeĬfĶƢcŞʼnƒƬsŚvŜeeųitŖƥřōƽŝǀuǂyexǂġƤƸƙƺƼƾNJnjdĞƫƎēiǜŠǞǠsąŇǒŸƹĽjvǣpǦDžǩƭfƊ}đǎclusiƈǑģđǞĖĘeCƈŝxtĊ""DEALSMNAĐǔĦPŐĭcņƢtRolį""TȔidT"&"ůįnuħǵ""ƳlŝĘĢĀǃpȡMembŃŅŇĵsEķŤeƪŗũ""oȶrŜƂȊIćǹƌȤsOŁȼņƘƳelɅȴȨȊmŽaȤɅ""I_ȌȎ_ȑA_PARTICIɯNT_ACQUIRORȒɲONȔpŐaɡȱǑ""ȔıƢsfƂmǾĤɈutpʘȅǹƏȊƽǹĚĿrƌƃċȌSC""ȭʠijʌBH;ɾʲQʲL;JO;KW;LB;OM;PS;QA;SˉSY;AE;YˑDZ;EGʾˎMˉTʅǵɞȶȊDƾɓɁaɃɅŨŊɉėɌʦ""CǺtomɓɕłĘȽəiɛɝ""ȵȡʊɣĵɥɧɩLɫȒ_BASɳɨȍȏɬTRANˋC"&"ʃȒNNOUNCEMEɷDATEʆʈʊŃȊʎɋnʑʓʕĿʘʚtʜuʞċʭʢɈʤėˣEʩʫđmĶˤŶċ20͎01͐Ȕŏx͊ȡ͍041231ȔąlŜĮ͖Ċ1đ͢͠Ė͖ȧˢ:0ĥnŒrAħȊȎL͟ŬƩͬȡ̗Y͓͉ƾAsTodaDŽǓ͔͖΅·ΉŸˠ̀ɟċN̻ėicRƢż˦ɂȠ˪ŘĿɊ˯Ȋ>=˷ɖ˺ɘǧšɚɜĩ́ɠɢɤɎ̑ɪɬ̌̎̐̈ȐȒPER̢ɷAGEOFSHɰ̈́ɺɼɾʀSEEKSTOOWʅđʇɋ̭Ȳċ̰ʐʒrʔĢʖŬʙʛȟ̻ƣ""̾ȔƂʥ̓ͅȭ͈nVĦij͎͇ͥaxϹʡϼͯĪͱOͳ͵ċͷȔ̾Pcnȉͮđ"&"ęgɡАͼͥГeЕĆĠϧКgķɡ̯ΒβΕΗōΚΜ̿Ğ˧˩ŧɈΤ˴˰ΧΩ˹ńάǰȮ˽ΰ:ˡ̂δ̅ζ̈̊ɭVȎUEцшLъψ̛̗̙̫̕ϞŽ̮ċ˲rn=čD,ScĦe=6Ϣ̲ϤϦ:ǿʗϪ̹Ϭ̼ϯϺ̿ϲ͂ʧ̈́ʪ϶ĶЁϻ:ͦ""͔Ѽį͑ЄƢͲʹĨЊLđЍЏБЄДЖtИѾРғ̵""ДТȡ͆рȊΖɡЩΛnΝȿЮΠаɇ˭ɋдȊ<зɗǯǓί˿ЦҀт""ȥф̒цκ̏CἠορσTυEHEĻӇ̡̝̟̣̥TӍ̪Ϝ̬їϠʍđʏѨ̴Пѭ̸̺ѱϰʣϳѷϵ͇ѻѳĊЄҁӬ:5҅ІЈ҉""ЋҍѳЎАӭҗНҕѿҒНҙқʉҝ}ʖ"&"ƠgΙĦOгǼ̲TąeǑȪħ͇ΆȡscԓƉđ͡ğGōȦȹp͋͡ĀҜȊњąА ѡԝ Tԥԧ̿ҷɊsƈĦʫ}]EncodedScreenEnd/","Curn=USD CH=Fd")
From that, I extract the required code to use on CodeBook. My Python code is the following:
df = Screener('U(IN(DEALS)/UNV:DEALSMNA/), IN(TR.MnAAcquirorNation,""BH"",""IR"",""IQ"",""IL"",""JO"",""KW"",""LB"",""OM"",""PS"",""QA"",""SA"",""SY"",""AE"",""YE"",""DZ"",""EG"",""LY"",""MA"",""TN""), BETWEEN(TR.MnAAnnDate,20000101,20041231)/dt:Date"&"/, TR.MnAPctOfSharesAcqSeeksToOwn>=100, TR.MnADealValue(Curn=USD,Scale=6)>=1, TR.MnAPctHeldAtAnnDate<50, CURN=USD')
However, it gives me the following error:
LDError: Error code 800 | SCREEN( IN(TR.MnAAcquirorNation,""BH"",""IR"",""IQ"",""IL"",""JO"",""KW"",""LB"",""OM"",""PS"",""QA"",""SA"",""SY"",""AE"",""YE"",""DZ"",""EG"",""LY"",""MA"",""TN""), BETWEEN(TR.MnAAnnDate,20000101,20041231)/*dt:Date"&"*/, TR.MnAPctOfSharesAcqSeeksToOwn>=100, TR.MnADealValue(Curn=USD,Scale=6)>=1, TR.MnAPctHeldAtAnnDate<50, CURN=USD) processing failed. Requested universes: ['screen(U(IN(DEALS)/*UNV:DEALSMNA*/), IN(TR.MnAAcquirorNation,""BH"",""IR"",""IQ"",""IL"",""JO"",""KW"",""LB"",""OM"",""PS"",""QA"",""SA"",""SY"",""AE"",""YE"",""DZ"",""EG"",""LY"",""MA"",""TN""), BETWEEN(TR.MnAAnnDate,20000101,20041231)/*dt:Date"&"*/, TR.MnAPctOfSharesAcqSeeksToOwn>=100, TR.MnADealValue(Curn=USD,Scale=6)>=1, TR.MnAPctHeldAtAnnDate<50, CURN=USD)']. Requested fields: ['TR.RIC']
When I try without and part where it screens the acquiror nation IN(TR.MnAAcquirorNation,""BH"",""IR"",""IQ"",""IL"",""JO"",""KW"",""LB"",""OM"",""PS"",""QA"",""SA"",""SY"",""AE"",""YE"",""DZ"",""EG"",""LY"",""MA"",""TN"") and without the date screen BETWEEN(TR.MnAAnnDate,20000101,20041231)/dt:Date"&"/,, it works. But I want to screen for acquiror mations and date.
I need to solve this problem because I want to be able to run several screens in Python and each time, tweak the filters (nations and dates).
Thanks in advance! Let me know if you require more info about this error.
Best Answer
-
Thank you for reaching out to us.
The code could be like this:
df = Screener('U(IN(DEALS)), IN(TR.MnAAcquirorNation,"BH","IR","IQ","IL","JO","KW","LB","OM","PS","QA","SA","SY","AE","YE","DZ","EG","LY","MA","TN"), BETWEEN(TR.MnAAnnDate,20000101,20041231), TR.MnAPctOfSharesAcqSeeksToOwn>=100, TR.MnADealValue(Curn=USD,Scale=6)>=1, TR.MnAPctHeldAtAnnDate<50, CURN=USD') print(list(df))
1
Answers
-
I forgot a detail: when I run the Screener() function in Python, there is no error. The error I provided appears when I run this command: print(list(df)).
0 -
For the sake of completeness. I share the .thinscreen file (from Workspace desktop app) and the Excel file containing the formula of the screen.
(For the .thinscreen file, please remove the .txt at the end, because I was not allowed to attach a thinscreen file to this forum).
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 37 Alpha
- 167 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 713 Datastream
- 1.5K DSS
- 639 Eikon COM
- 5.3K Eikon Data APIs
- 20 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 12 Trading API
- 3K Elektron
- 1.5K EMA
- 260 ETA
- 574 WebSocket API
- 42 FX Venues
- 16 FX Market Data
- 2 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 26 Messenger Bot
- 5 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 285 Open PermID
- 47 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 25 RDMS
- 2.3K Refinitiv Data Platform
- 20 CFS Bulk File/TM3
- 939 Refinitiv Data Platform Libraries
- 6 LSEG Due Diligence
- 1 LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 12 World-Check Customer Risk Screener
- World-Check On Demand
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 46 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 126 Open DACS
- 1.1K RFA
- 108 UPA
- 197 TREP Infrastructure
- 232 TRKD
- 925 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 107 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛