finance_dev 0.9.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- finance_dev/__init__.py +18 -0
- finance_dev/_hooks/__init__.py +7 -0
- finance_dev/_hooks/clientcredentials.py +319 -0
- finance_dev/_hooks/oauth2scopes.py +50 -0
- finance_dev/_hooks/registration.py +13 -0
- finance_dev/_hooks/sdkhooks.py +82 -0
- finance_dev/_hooks/types.py +125 -0
- finance_dev/_version.py +16 -0
- finance_dev/accounts.py +797 -0
- finance_dev/alternativedata.py +4830 -0
- finance_dev/analytics.py +3757 -0
- finance_dev/basesdk.py +393 -0
- finance_dev/calendar.py +1523 -0
- finance_dev/chart.py +1881 -0
- finance_dev/company.py +1105 -0
- finance_dev/corporateactions.py +1795 -0
- finance_dev/economy.py +1153 -0
- finance_dev/errors/__init__.py +94 -0
- finance_dev/errors/apierror.py +41 -0
- finance_dev/errors/authenticationerrorenvelope.py +43 -0
- finance_dev/errors/badrequest.py +34 -0
- finance_dev/errors/errorenvelope.py +42 -0
- finance_dev/errors/errorresponse.py +45 -0
- finance_dev/errors/financedevapierror.py +31 -0
- finance_dev/errors/forbidden.py +34 -0
- finance_dev/errors/internalservererror.py +35 -0
- finance_dev/errors/no_response_error.py +18 -0
- finance_dev/errors/notfound.py +34 -0
- finance_dev/errors/orderhistorybadrequest.py +35 -0
- finance_dev/errors/predorderserrorenvelope.py +42 -0
- finance_dev/errors/responsevalidationerror.py +28 -0
- finance_dev/errors/unauthorized.py +34 -0
- finance_dev/estimates.py +1906 -0
- finance_dev/etf.py +1108 -0
- finance_dev/filings.py +586 -0
- finance_dev/financials.py +4079 -0
- finance_dev/history.py +477 -0
- finance_dev/httpclient.py +126 -0
- finance_dev/indices.py +2308 -0
- finance_dev/logos.py +692 -0
- finance_dev/market.py +1825 -0
- finance_dev/markets.py +952 -0
- finance_dev/models/__init__.py +4568 -0
- finance_dev/models/accountbalancev2.py +340 -0
- finance_dev/models/accountitem.py +78 -0
- finance_dev/models/accountposition.py +147 -0
- finance_dev/models/aggregatetechnicalindicatorsresponse.py +192 -0
- finance_dev/models/analystinsightitem.py +161 -0
- finance_dev/models/analystinsightsresponse.py +39 -0
- finance_dev/models/apperror.py +123 -0
- finance_dev/models/authenticationerrordetail.py +58 -0
- finance_dev/models/bankbranchesresponse.py +96 -0
- finance_dev/models/basicfinancials.py +243 -0
- finance_dev/models/bullbearanalysisresponse.py +150 -0
- finance_dev/models/cancelorderop.py +40 -0
- finance_dev/models/cancelordrequest_union.py +287 -0
- finance_dev/models/cancelordresponse.py +115 -0
- finance_dev/models/cashflowstatement.py +290 -0
- finance_dev/models/cashflowstatementsresponse.py +61 -0
- finance_dev/models/chartbars.py +111 -0
- finance_dev/models/chartconfig.py +81 -0
- finance_dev/models/chartresolution.py +46 -0
- finance_dev/models/companyesgresponse.py +408 -0
- finance_dev/models/companyexecutive.py +70 -0
- finance_dev/models/companyexecutiveresponse.py +39 -0
- finance_dev/models/companypeersresponse.py +38 -0
- finance_dev/models/companypresentationresponse.py +96 -0
- finance_dev/models/companyprofile.py +255 -0
- finance_dev/models/conferencecallsresponse.py +169 -0
- finance_dev/models/congressionaltradingresponse.py +138 -0
- finance_dev/models/covid19uscasesresponse.py +79 -0
- finance_dev/models/createconfigwatchlistop.py +40 -0
- finance_dev/models/createwatchlistrequest.py +43 -0
- finance_dev/models/dailymarketsummaryresponse.py +73 -0
- finance_dev/models/deleteconfigwatchlistbyidop.py +53 -0
- finance_dev/models/dividenditem.py +125 -0
- finance_dev/models/dividendsresponse.py +61 -0
- finance_dev/models/earningrelease.py +291 -0
- finance_dev/models/earningscallliveresponse.py +103 -0
- finance_dev/models/earningsqualityscoreresponse.py +140 -0
- finance_dev/models/earningssurprisesresponse.py +125 -0
- finance_dev/models/ebitdaestimatesresponse.py +176 -0
- finance_dev/models/ebitestimatesresponse.py +176 -0
- finance_dev/models/economicscalendarevent.py +160 -0
- finance_dev/models/economicsindicator.py +87 -0
- finance_dev/models/epsestimatesresponse.py +176 -0
- finance_dev/models/equitydetailsdto.py +569 -0
- finance_dev/models/errorcode.py +48 -0
- finance_dev/models/etblistresponse.py +43 -0
- finance_dev/models/etbsearchrequest.py +21 -0
- finance_dev/models/etbsearchresponse.py +43 -0
- finance_dev/models/etfcountryallocationresponse.py +113 -0
- finance_dev/models/etfholdingsresponse.py +163 -0
- finance_dev/models/etfprofileresponse.py +234 -0
- finance_dev/models/etfsectorallocationresponse.py +113 -0
- finance_dev/models/exchangecode.py +90 -0
- finance_dev/models/fdaadvisorycommitteecalendarresponse.py +88 -0
- finance_dev/models/filingsimilarityrecord.py +115 -0
- finance_dev/models/filingssimilarityindexdatawrapper.py +52 -0
- finance_dev/models/filingssimilarityindexresponse.py +42 -0
- finance_dev/models/financialratiosresponse.py +252 -0
- finance_dev/models/financialsreporteddatawrapper.py +49 -0
- finance_dev/models/financialsreportedresponse.py +42 -0
- finance_dev/models/financialsrevenuebreakdowndatawrapper.py +49 -0
- finance_dev/models/financialsrevenuebreakdownresponse.py +42 -0
- finance_dev/models/financialsstatementsdatawrapper.py +44 -0
- finance_dev/models/financialsstatementsresponse.py +42 -0
- finance_dev/models/financialstatement.py +171 -0
- finance_dev/models/financialstatementtype.py +14 -0
- finance_dev/models/getaccountbalanceop.py +53 -0
- finance_dev/models/getaccountpositionsop.py +53 -0
- finance_dev/models/getaccountsresponse.py +22 -0
- finance_dev/models/getaggregatetechnicalindicatorsop.py +94 -0
- finance_dev/models/getanalystinsightsop.py +164 -0
- finance_dev/models/getbankbranchesop.py +53 -0
- finance_dev/models/getbaseeventop.py +87 -0
- finance_dev/models/getbullbearanalysisop.py +91 -0
- finance_dev/models/getcashflowstatementsop.py +564 -0
- finance_dev/models/getchartconfigop.py +40 -0
- finance_dev/models/getcharthistoryop.py +122 -0
- finance_dev/models/getcharttimeop.py +39 -0
- finance_dev/models/getcompanyesgop.py +53 -0
- finance_dev/models/getcompanyexecutivesop.py +56 -0
- finance_dev/models/getcompanymetricsop.py +68 -0
- finance_dev/models/getcompanypeersop.py +53 -0
- finance_dev/models/getcompanypresentationop.py +56 -0
- finance_dev/models/getcompanyprofileop.py +86 -0
- finance_dev/models/getconferencecallsop.py +111 -0
- finance_dev/models/getconfigwatchlistbyidop.py +53 -0
- finance_dev/models/getconfigwatchlistsop.py +40 -0
- finance_dev/models/getcongressionaltradingop.py +73 -0
- finance_dev/models/getcovid19uscasesop.py +43 -0
- finance_dev/models/getdailymarketsummaryop.py +92 -0
- finance_dev/models/getdividendsop.py +294 -0
- finance_dev/models/getearningscalendarop.py +87 -0
- finance_dev/models/getearningscallliveop.py +91 -0
- finance_dev/models/getearningsqualityscoreop.py +81 -0
- finance_dev/models/getearningssurprisesop.py +80 -0
- finance_dev/models/getebitdaestimatesop.py +91 -0
- finance_dev/models/getebitestimatesop.py +88 -0
- finance_dev/models/geteconomicscalendarop.py +92 -0
- finance_dev/models/geteconomicscalendarresponse.py +56 -0
- finance_dev/models/getepsestimatesop.py +88 -0
- finance_dev/models/getequitydetailsop.py +56 -0
- finance_dev/models/getequitydetailsresponse.py +45 -0
- finance_dev/models/getetblistop.py +40 -0
- finance_dev/models/getetfcountryallocationop.py +80 -0
- finance_dev/models/getetfholdingsop.py +96 -0
- finance_dev/models/getetfprofileop.py +77 -0
- finance_dev/models/getetfsectorallocationop.py +80 -0
- finance_dev/models/geteventcontractsop.py +87 -0
- finance_dev/models/getfdaadvisorycommitteecalendarop.py +47 -0
- finance_dev/models/getfilingssimilarityindexop.py +102 -0
- finance_dev/models/getfinancialratiosop.py +612 -0
- finance_dev/models/getfinancialstatementsop.py +117 -0
- finance_dev/models/getfundownershipop.py +77 -0
- finance_dev/models/gethistoricaldataop.py +61 -0
- finance_dev/models/gethistoricalesgop.py +53 -0
- finance_dev/models/gethistorybatchop.py +74 -0
- finance_dev/models/gethistoryop.py +123 -0
- finance_dev/models/getincomestatementsop.py +564 -0
- finance_dev/models/getindexbarop.py +140 -0
- finance_dev/models/getindexbarsop.py +149 -0
- finance_dev/models/getindexchartbarsop.py +178 -0
- finance_dev/models/getindexrealtimevaluesop.py +94 -0
- finance_dev/models/getinflationexpectationsop.py +157 -0
- finance_dev/models/getinflationop.py +154 -0
- finance_dev/models/getinsidertransactionsop.py +90 -0
- finance_dev/models/getinstitutionalownershipop.py +99 -0
- finance_dev/models/getinstitutionalportfolioop.py +75 -0
- finance_dev/models/getinvestmentthemeop.py +68 -0
- finance_dev/models/getipocalendarop.py +63 -0
- finance_dev/models/getlobbyingop.py +70 -0
- finance_dev/models/getmarketbreadthop.py +40 -0
- finance_dev/models/getmarketholidaysop.py +65 -0
- finance_dev/models/getmarketstatusop.py +65 -0
- finance_dev/models/getmergersandacquisitionsop.py +113 -0
- finance_dev/models/getnetinflowop.py +40 -0
- finance_dev/models/getnewsbyidop.py +73 -0
- finance_dev/models/getnewsop.py +98 -0
- finance_dev/models/getnewssentimentop.py +53 -0
- finance_dev/models/getoptionchainsnapshotop.py +244 -0
- finance_dev/models/getoptioncontractsnapshotop.py +69 -0
- finance_dev/models/getoptiondetailsop.py +56 -0
- finance_dev/models/getoptiondetailsresponse.py +45 -0
- finance_dev/models/getoptionlasttradeop.py +56 -0
- finance_dev/models/getoptionopencloseop.py +66 -0
- finance_dev/models/getoptionpreviousdayop.py +56 -0
- finance_dev/models/getoptionquotesop.py +177 -0
- finance_dev/models/getoptionsactivityop.py +111 -0
- finance_dev/models/getoptionsetfstopvolumeop.py +70 -0
- finance_dev/models/getoptionsstockstopgainersop.py +70 -0
- finance_dev/models/getoptionsstockstopvolumeop.py +70 -0
- finance_dev/models/getoptionsunusualactivityop.py +100 -0
- finance_dev/models/getoptiontradesop.py +177 -0
- finance_dev/models/getordersv2response.py +66 -0
- finance_dev/models/getownershipdataop.py +77 -0
- finance_dev/models/getpositionsresponse.py +39 -0
- finance_dev/models/getpredictionorderop.py +88 -0
- finance_dev/models/getpricetargetop.py +53 -0
- finance_dev/models/getquotesop.py +53 -0
- finance_dev/models/getratingsop.py +164 -0
- finance_dev/models/getratingsresponse.py +39 -0
- finance_dev/models/getreportedfinancialsop.py +127 -0
- finance_dev/models/getrevenuebreakdownop.py +85 -0
- finance_dev/models/getrevenueestimatesop.py +91 -0
- finance_dev/models/getsecfilingsop.py +113 -0
- finance_dev/models/getsectortickersop.py +124 -0
- finance_dev/models/getsectorwisechangeop.py +84 -0
- finance_dev/models/getshortinterestop.py +334 -0
- finance_dev/models/getshortvolumeop.py +333 -0
- finance_dev/models/getsocialsentimentop.py +90 -0
- finance_dev/models/getspinoffsop.py +112 -0
- finance_dev/models/getstockaggregatesop.py +174 -0
- finance_dev/models/getstocklastquoteop.py +56 -0
- finance_dev/models/getstocklasttradeop.py +56 -0
- finance_dev/models/getstockopencloseop.py +90 -0
- finance_dev/models/getstockpreviousdayop.py +80 -0
- finance_dev/models/getstockquotesop.py +177 -0
- finance_dev/models/getstocksnapshotsop.py +82 -0
- finance_dev/models/getstocksplitsop.py +243 -0
- finance_dev/models/getstocktradesop.py +177 -0
- finance_dev/models/getsupplychainop.py +53 -0
- finance_dev/models/getsupportresistancelevelsop.py +90 -0
- finance_dev/models/getsymbolinfoop.py +53 -0
- finance_dev/models/gettechnicalindicatorop.py +172 -0
- finance_dev/models/gettechnicalpatternsop.py +88 -0
- finance_dev/models/gettenderoffersop.py +112 -0
- finance_dev/models/gettickhistoryop.py +104 -0
- finance_dev/models/gettopgainersop.py +78 -0
- finance_dev/models/gettoplosersop.py +78 -0
- finance_dev/models/gettopmostactiveop.py +78 -0
- finance_dev/models/gettranscriptop.py +53 -0
- finance_dev/models/gettreasuryyieldsop.py +157 -0
- finance_dev/models/getunifiedsnapshotop.py +223 -0
- finance_dev/models/getupgradesdowngradesop.py +91 -0
- finance_dev/models/getusaspendingop.py +70 -0
- finance_dev/models/getuseraccountsop.py +40 -0
- finance_dev/models/getusptopatentsop.py +70 -0
- finance_dev/models/getvisaapplicationsop.py +73 -0
- finance_dev/models/historicalesgresponse.py +439 -0
- finance_dev/models/httpmetadata.py +24 -0
- finance_dev/models/incomestatement.py +296 -0
- finance_dev/models/incomestatementsresponse.py +61 -0
- finance_dev/models/indexbarresponse.py +194 -0
- finance_dev/models/indexbarsresponse.py +123 -0
- finance_dev/models/indexchartbarsresponse.py +213 -0
- finance_dev/models/indexgroupsresponse.py +78 -0
- finance_dev/models/indexlistresponse.py +95 -0
- finance_dev/models/indexsearchresponse.py +93 -0
- finance_dev/models/indicesbygroupresponse.py +93 -0
- finance_dev/models/indicesidentifiertype.py +28 -0
- finance_dev/models/indicesrealtimeindexinfo.py +67 -0
- finance_dev/models/indicesrealtimeindexvalue.py +157 -0
- finance_dev/models/indicesrealtimevaluesitem.py +80 -0
- finance_dev/models/indicesrealtimevaluesresponse.py +42 -0
- finance_dev/models/inflationexpectationsresponse.py +140 -0
- finance_dev/models/inflationresponse.py +132 -0
- finance_dev/models/insidertransaction.py +97 -0
- finance_dev/models/insidertransactionsresponse.py +39 -0
- finance_dev/models/institutionalholding.py +77 -0
- finance_dev/models/institutionalownershipresponse.py +39 -0
- finance_dev/models/institutionalportfolioresponse.py +39 -0
- finance_dev/models/investmentthemeid.py +35 -0
- finance_dev/models/investmentthemeresponse.py +80 -0
- finance_dev/models/ipocalendarresponse.py +39 -0
- finance_dev/models/ipoitem.py +93 -0
- finance_dev/models/listactiveordersop.py +87 -0
- finance_dev/models/listcategoriesop.py +79 -0
- finance_dev/models/listindexgroupsop.py +40 -0
- finance_dev/models/listindicesbygroupop.py +58 -0
- finance_dev/models/listindicesop.py +91 -0
- finance_dev/models/listoptioncontractsop.py +66 -0
- finance_dev/models/listoptionexpirydatesop.py +56 -0
- finance_dev/models/listorderhistoryop.py +139 -0
- finance_dev/models/listpredictionordersop.py +134 -0
- finance_dev/models/listtranscriptsop.py +53 -0
- finance_dev/models/lobbyingresponse.py +166 -0
- finance_dev/models/logosearchresponse.py +152 -0
- finance_dev/models/logosyncresponse.py +277 -0
- finance_dev/models/marketbreadth.py +97 -0
- finance_dev/models/marketbreadthresponse.py +44 -0
- finance_dev/models/marketholiday.py +56 -0
- finance_dev/models/marketholidayresponse.py +39 -0
- finance_dev/models/marketstatus.py +67 -0
- finance_dev/models/mergersandacquisitionsresponse.py +186 -0
- finance_dev/models/metricseriespoint.py +43 -0
- finance_dev/models/netinflow.py +81 -0
- finance_dev/models/netinflowresponse.py +44 -0
- finance_dev/models/newsitem.py +102 -0
- finance_dev/models/newslistresponse.py +128 -0
- finance_dev/models/newssentimentresponse.py +176 -0
- finance_dev/models/newstypeenum.py +16 -0
- finance_dev/models/optionchainsnapshotresponse.py +64 -0
- finance_dev/models/optioncontractsnapshotresponse.py +64 -0
- finance_dev/models/optioncontractsnapshotrow.py +164 -0
- finance_dev/models/optioncontractsresponse.py +131 -0
- finance_dev/models/optiondetailsdto.py +72 -0
- finance_dev/models/optionexpirydatesresponse.py +53 -0
- finance_dev/models/optionlasttraderesponse.py +169 -0
- finance_dev/models/optionopencloseresponse.py +97 -0
- finance_dev/models/optionpreviousdayresponse.py +89 -0
- finance_dev/models/optionquotesresponse.py +138 -0
- finance_dev/models/optionsactivityresponse.py +265 -0
- finance_dev/models/optionsnapshotcontractdetails.py +85 -0
- finance_dev/models/optionsnapshotdaybar.py +107 -0
- finance_dev/models/optionsnapshotgreeks.py +67 -0
- finance_dev/models/optionsnapshotlastquote.py +116 -0
- finance_dev/models/optionsnapshotlasttrade.py +102 -0
- finance_dev/models/optionsnapshotunderlying.py +86 -0
- finance_dev/models/optionsscreeneritem.py +151 -0
- finance_dev/models/optionsunusualactivityresponse.py +62 -0
- finance_dev/models/optionsunusualactivitytrade.py +103 -0
- finance_dev/models/optiontradesresponse.py +132 -0
- finance_dev/models/orderrequesttimeinforceenum.py +29 -0
- finance_dev/models/ordersideenum.py +20 -0
- finance_dev/models/ordertypeenum.py +20 -0
- finance_dev/models/ordleg.py +162 -0
- finance_dev/models/ordresponse.py +202 -0
- finance_dev/models/ownershipdataresponse.py +39 -0
- finance_dev/models/ownershiprecord.py +74 -0
- finance_dev/models/placeorderop.py +40 -0
- finance_dev/models/placeordrequest_union.py +335 -0
- finance_dev/models/placepredictionorderop.py +114 -0
- finance_dev/models/predmdbaseevent.py +62 -0
- finance_dev/models/predmdbaseeventhit.py +53 -0
- finance_dev/models/predmdbaseeventsearchresult.py +46 -0
- finance_dev/models/predmdbaseeventwithevents.py +32 -0
- finance_dev/models/predmdbatchhistoryrequest.py +16 -0
- finance_dev/models/predmdbatchhistoryresponse.py +16 -0
- finance_dev/models/predmdcategory.py +48 -0
- finance_dev/models/predmdcontract.py +177 -0
- finance_dev/models/predmdcontracthit.py +157 -0
- finance_dev/models/predmdcontractsearchresult.py +46 -0
- finance_dev/models/predmdevent.py +136 -0
- finance_dev/models/predmdeventhit.py +73 -0
- finance_dev/models/predmdeventsearchresult.py +46 -0
- finance_dev/models/predmdeventwithcontracts.py +22 -0
- finance_dev/models/predmdhistoryrequest.py +59 -0
- finance_dev/models/predmdhistoryresponse.py +53 -0
- finance_dev/models/predmdtick.py +53 -0
- finance_dev/models/predordersapperror.py +78 -0
- finance_dev/models/predordersorder.py +267 -0
- finance_dev/models/predordersorderdetail.py +26 -0
- finance_dev/models/predordersorderpage.py +45 -0
- finance_dev/models/predordersorderreport.py +88 -0
- finance_dev/models/predordersplaceorderrequest.py +159 -0
- finance_dev/models/previeworderop.py +40 -0
- finance_dev/models/previeworderresponse.py +127 -0
- finance_dev/models/pricetargetresponse.py +89 -0
- finance_dev/models/quotedata.py +49 -0
- finance_dev/models/quotesresponse.py +62 -0
- finance_dev/models/quotevalues.py +114 -0
- finance_dev/models/rating.py +193 -0
- finance_dev/models/ratingsaccuracy.py +242 -0
- finance_dev/models/replaceconfigwatchlistsop.py +40 -0
- finance_dev/models/replaceorderop.py +40 -0
- finance_dev/models/replaceordrequest_union.py +367 -0
- finance_dev/models/replaceordresponse.py +144 -0
- finance_dev/models/reportedbsitem.py +53 -0
- finance_dev/models/reportedfiling.py +110 -0
- finance_dev/models/reportedreport.py +39 -0
- finance_dev/models/reportingfrequency.py +16 -0
- finance_dev/models/revenuebreakdownaxis.py +52 -0
- finance_dev/models/revenuebreakdowndatapoint.py +58 -0
- finance_dev/models/revenuebreakdownentry.py +51 -0
- finance_dev/models/revenuebreakdowninner.py +75 -0
- finance_dev/models/revenueestimatesresponse.py +176 -0
- finance_dev/models/screenclause.py +70 -0
- finance_dev/models/screengroup.py +75 -0
- finance_dev/models/searchetbsymbolsop.py +40 -0
- finance_dev/models/searchindicesop.py +55 -0
- finance_dev/models/searchlogosop.py +158 -0
- finance_dev/models/searchmarketsymbolsop.py +80 -0
- finance_dev/models/searchop.py +232 -0
- finance_dev/models/searchsymbolitem.py +76 -0
- finance_dev/models/searchsymbolresponseitem.py +71 -0
- finance_dev/models/searchsymbolsop.py +77 -0
- finance_dev/models/secfiling.py +91 -0
- finance_dev/models/secfilingsresponse.py +39 -0
- finance_dev/models/sectoravgchange.py +50 -0
- finance_dev/models/security.py +59 -0
- finance_dev/models/securitytypeenum.py +16 -0
- finance_dev/models/shortinterestresponse.py +126 -0
- finance_dev/models/shortvolumeresponse.py +198 -0
- finance_dev/models/socialsentimentresponse.py +124 -0
- finance_dev/models/sortorderenum.py +13 -0
- finance_dev/models/spinoffsresponse.py +136 -0
- finance_dev/models/stockaggregatesresponse.py +92 -0
- finance_dev/models/stocklastquoteresponse.py +175 -0
- finance_dev/models/stocklasttraderesponse.py +169 -0
- finance_dev/models/stockohlcbar.py +85 -0
- finance_dev/models/stockopencloseresponse.py +109 -0
- finance_dev/models/stockpreviousdayresponse.py +86 -0
- finance_dev/models/stockquotesresponse.py +170 -0
- finance_dev/models/stockscreenerop.py +144 -0
- finance_dev/models/stockscreenerrequest.py +131 -0
- finance_dev/models/stockscreenerresponse.py +197 -0
- finance_dev/models/stocksnapshotsresponse.py +454 -0
- finance_dev/models/stocksplitsresponse.py +144 -0
- finance_dev/models/stocktradesresponse.py +164 -0
- finance_dev/models/supplychainresponse.py +158 -0
- finance_dev/models/supportresistancelevelsresponse.py +68 -0
- finance_dev/models/symboldetails.py +119 -0
- finance_dev/models/symbolerror.py +43 -0
- finance_dev/models/symbolinfo.py +183 -0
- finance_dev/models/synclogosop.py +146 -0
- finance_dev/models/technicalindicatorresponse.py +43 -0
- finance_dev/models/technicalindicatortype.py +21 -0
- finance_dev/models/technicalpatternsresponse.py +249 -0
- finance_dev/models/tenderofferidentifiertype.py +26 -0
- finance_dev/models/tenderoffersresponse.py +548 -0
- finance_dev/models/tickchartbars.py +104 -0
- finance_dev/models/tickresolution.py +20 -0
- finance_dev/models/timeinforceenum.py +26 -0
- finance_dev/models/tradeorderlegv2.py +164 -0
- finance_dev/models/tradeorderv2.py +434 -0
- finance_dev/models/transcriptresponse.py +162 -0
- finance_dev/models/transcriptsresponse.py +89 -0
- finance_dev/models/treasuryyieldsresponse.py +160 -0
- finance_dev/models/unifiedsnapshotresponse.py +308 -0
- finance_dev/models/updateconfigwatchlistbyidop.py +65 -0
- finance_dev/models/updatewatchlistrequest_union.py +134 -0
- finance_dev/models/upgradesdowngradesresponse.py +98 -0
- finance_dev/models/usaspendingresponse.py +222 -0
- finance_dev/models/usptopatentsresponse.py +134 -0
- finance_dev/models/visaapplicationsresponse.py +228 -0
- finance_dev/models/watchlist.py +68 -0
- finance_dev/models/watchlistrequest.py +43 -0
- finance_dev/models/watchlistresponse.py +44 -0
- finance_dev/news_sdk.py +829 -0
- finance_dev/options.py +3443 -0
- finance_dev/orders.py +1907 -0
- finance_dev/ownership.py +1386 -0
- finance_dev/predictions.py +29 -0
- finance_dev/predictions_orders.py +852 -0
- finance_dev/py.typed +1 -0
- finance_dev/sdk.py +347 -0
- finance_dev/sdkconfiguration.py +50 -0
- finance_dev/signals.py +338 -0
- finance_dev/stocks.py +3131 -0
- finance_dev/technicalanalysis_sdk.py +1137 -0
- finance_dev/types/__init__.py +25 -0
- finance_dev/types/base64fileinput.py +44 -0
- finance_dev/types/basemodel.py +78 -0
- finance_dev/utils/__init__.py +181 -0
- finance_dev/utils/annotations.py +80 -0
- finance_dev/utils/datetimes.py +42 -0
- finance_dev/utils/dynamic_imports.py +55 -0
- finance_dev/utils/enums.py +135 -0
- finance_dev/utils/eventstreaming.py +327 -0
- finance_dev/utils/forms.py +240 -0
- finance_dev/utils/headers.py +137 -0
- finance_dev/utils/logger.py +23 -0
- finance_dev/utils/metadata.py +120 -0
- finance_dev/utils/queryparams.py +218 -0
- finance_dev/utils/requestbodies.py +68 -0
- finance_dev/utils/retries.py +373 -0
- finance_dev/utils/security.py +199 -0
- finance_dev/utils/serializers.py +327 -0
- finance_dev/utils/unmarshal_json_response.py +39 -0
- finance_dev/utils/url.py +155 -0
- finance_dev/utils/values.py +143 -0
- finance_dev/watchlist_sdk.py +1583 -0
- finance_dev/websocket/__init__.py +57 -0
- finance_dev/websocket/account.py +5 -0
- finance_dev/websocket/auth.py +124 -0
- finance_dev/websocket/chart.py +5 -0
- finance_dev/websocket/codec.py +66 -0
- finance_dev/websocket/config.py +52 -0
- finance_dev/websocket/errors.py +54 -0
- finance_dev/websocket/market.py +5 -0
- finance_dev/websocket/models/__init__.py +52 -0
- finance_dev/websocket/models/account.py +60 -0
- finance_dev/websocket/models/chart.py +44 -0
- finance_dev/websocket/models/common.py +85 -0
- finance_dev/websocket/models/market.py +113 -0
- finance_dev/websocket/resources.py +327 -0
- finance_dev/websocket/sdk.py +13 -0
- finance_dev/websocket/transport/async_connection.py +493 -0
- finance_dev/websocket/transport/base.py +78 -0
- finance_dev/websocket/transport/sync_connection.py +470 -0
- finance_dev-0.9.0.dist-info/METADATA +913 -0
- finance_dev-0.9.0.dist-info/RECORD +486 -0
- finance_dev-0.9.0.dist-info/WHEEL +5 -0
- finance_dev-0.9.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: eddc3c09f44e
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from finance_dev.types import BaseModel, UNSET_SENTINEL
|
|
6
|
+
import pydantic
|
|
7
|
+
from pydantic import model_serializer
|
|
8
|
+
from typing import Optional
|
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class IndicesRealtimeIndexValueTypedDict(TypedDict):
|
|
13
|
+
r"""Realtime OHLC and change fields for an index quote."""
|
|
14
|
+
|
|
15
|
+
change_from_open: NotRequired[float]
|
|
16
|
+
r"""Change in the index value from the session open."""
|
|
17
|
+
change_from_previous_close: NotRequired[float]
|
|
18
|
+
r"""Change in the index value from the previous close."""
|
|
19
|
+
close: NotRequired[float]
|
|
20
|
+
r"""Current / last close value"""
|
|
21
|
+
date_: NotRequired[str]
|
|
22
|
+
r"""Session date in source format (locale-specific)"""
|
|
23
|
+
high: NotRequired[float]
|
|
24
|
+
r"""Highest index value for the session."""
|
|
25
|
+
high52_weeks: NotRequired[float]
|
|
26
|
+
r"""52-week high"""
|
|
27
|
+
last: NotRequired[float]
|
|
28
|
+
r"""Last traded value"""
|
|
29
|
+
low: NotRequired[float]
|
|
30
|
+
r"""Lowest index value for the session."""
|
|
31
|
+
low52_weeks: NotRequired[float]
|
|
32
|
+
r"""52-week low"""
|
|
33
|
+
open: NotRequired[float]
|
|
34
|
+
r"""Opening value of the index for the session."""
|
|
35
|
+
percent_change_from_open: NotRequired[float]
|
|
36
|
+
r"""Percentage change in the index value from the session open."""
|
|
37
|
+
percent_change_from_previous_close: NotRequired[float]
|
|
38
|
+
r"""Percentage change in the index value from the previous close."""
|
|
39
|
+
previous_close: NotRequired[float]
|
|
40
|
+
r"""Closing value of the index on the previous trading day."""
|
|
41
|
+
previous_close_date: NotRequired[str]
|
|
42
|
+
r"""Prior close date in source format"""
|
|
43
|
+
time: NotRequired[str]
|
|
44
|
+
r"""Quote time in source format"""
|
|
45
|
+
utc_offset: NotRequired[int]
|
|
46
|
+
r"""UTC offset in hours"""
|
|
47
|
+
volume: NotRequired[int]
|
|
48
|
+
r"""Volume (may be 0 for some indices)"""
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class IndicesRealtimeIndexValue(BaseModel):
|
|
52
|
+
r"""Realtime OHLC and change fields for an index quote."""
|
|
53
|
+
|
|
54
|
+
change_from_open: Annotated[
|
|
55
|
+
Optional[float], pydantic.Field(alias="changeFromOpen")
|
|
56
|
+
] = None
|
|
57
|
+
r"""Change in the index value from the session open."""
|
|
58
|
+
|
|
59
|
+
change_from_previous_close: Annotated[
|
|
60
|
+
Optional[float], pydantic.Field(alias="changeFromPreviousClose")
|
|
61
|
+
] = None
|
|
62
|
+
r"""Change in the index value from the previous close."""
|
|
63
|
+
|
|
64
|
+
close: Optional[float] = None
|
|
65
|
+
r"""Current / last close value"""
|
|
66
|
+
|
|
67
|
+
date_: Annotated[Optional[str], pydantic.Field(alias="date")] = None
|
|
68
|
+
r"""Session date in source format (locale-specific)"""
|
|
69
|
+
|
|
70
|
+
high: Optional[float] = None
|
|
71
|
+
r"""Highest index value for the session."""
|
|
72
|
+
|
|
73
|
+
high52_weeks: Annotated[Optional[float], pydantic.Field(alias="high52Weeks")] = None
|
|
74
|
+
r"""52-week high"""
|
|
75
|
+
|
|
76
|
+
last: Optional[float] = None
|
|
77
|
+
r"""Last traded value"""
|
|
78
|
+
|
|
79
|
+
low: Optional[float] = None
|
|
80
|
+
r"""Lowest index value for the session."""
|
|
81
|
+
|
|
82
|
+
low52_weeks: Annotated[Optional[float], pydantic.Field(alias="low52Weeks")] = None
|
|
83
|
+
r"""52-week low"""
|
|
84
|
+
|
|
85
|
+
open: Optional[float] = None
|
|
86
|
+
r"""Opening value of the index for the session."""
|
|
87
|
+
|
|
88
|
+
percent_change_from_open: Annotated[
|
|
89
|
+
Optional[float], pydantic.Field(alias="percentChangeFromOpen")
|
|
90
|
+
] = None
|
|
91
|
+
r"""Percentage change in the index value from the session open."""
|
|
92
|
+
|
|
93
|
+
percent_change_from_previous_close: Annotated[
|
|
94
|
+
Optional[float], pydantic.Field(alias="percentChangeFromPreviousClose")
|
|
95
|
+
] = None
|
|
96
|
+
r"""Percentage change in the index value from the previous close."""
|
|
97
|
+
|
|
98
|
+
previous_close: Annotated[
|
|
99
|
+
Optional[float], pydantic.Field(alias="previousClose")
|
|
100
|
+
] = None
|
|
101
|
+
r"""Closing value of the index on the previous trading day."""
|
|
102
|
+
|
|
103
|
+
previous_close_date: Annotated[
|
|
104
|
+
Optional[str], pydantic.Field(alias="previousCloseDate")
|
|
105
|
+
] = None
|
|
106
|
+
r"""Prior close date in source format"""
|
|
107
|
+
|
|
108
|
+
time: Optional[str] = None
|
|
109
|
+
r"""Quote time in source format"""
|
|
110
|
+
|
|
111
|
+
utc_offset: Annotated[Optional[int], pydantic.Field(alias="utcOffset")] = None
|
|
112
|
+
r"""UTC offset in hours"""
|
|
113
|
+
|
|
114
|
+
volume: Optional[int] = None
|
|
115
|
+
r"""Volume (may be 0 for some indices)"""
|
|
116
|
+
|
|
117
|
+
@model_serializer(mode="wrap")
|
|
118
|
+
def serialize_model(self, handler):
|
|
119
|
+
optional_fields = set(
|
|
120
|
+
[
|
|
121
|
+
"changeFromOpen",
|
|
122
|
+
"changeFromPreviousClose",
|
|
123
|
+
"close",
|
|
124
|
+
"date",
|
|
125
|
+
"high",
|
|
126
|
+
"high52Weeks",
|
|
127
|
+
"last",
|
|
128
|
+
"low",
|
|
129
|
+
"low52Weeks",
|
|
130
|
+
"open",
|
|
131
|
+
"percentChangeFromOpen",
|
|
132
|
+
"percentChangeFromPreviousClose",
|
|
133
|
+
"previousClose",
|
|
134
|
+
"previousCloseDate",
|
|
135
|
+
"time",
|
|
136
|
+
"utcOffset",
|
|
137
|
+
"volume",
|
|
138
|
+
]
|
|
139
|
+
)
|
|
140
|
+
serialized = handler(self)
|
|
141
|
+
m = {}
|
|
142
|
+
|
|
143
|
+
for n, f in type(self).model_fields.items():
|
|
144
|
+
k = f.alias or n
|
|
145
|
+
val = serialized.get(k, serialized.get(n))
|
|
146
|
+
|
|
147
|
+
if val != UNSET_SENTINEL:
|
|
148
|
+
if val is not None or k not in optional_fields:
|
|
149
|
+
m[k] = val
|
|
150
|
+
|
|
151
|
+
return m
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
try:
|
|
155
|
+
IndicesRealtimeIndexValue.model_rebuild()
|
|
156
|
+
except NameError:
|
|
157
|
+
pass
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: a5bdf4d21c69
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from .indicesrealtimeindexinfo import (
|
|
6
|
+
IndicesRealtimeIndexInfo,
|
|
7
|
+
IndicesRealtimeIndexInfoTypedDict,
|
|
8
|
+
)
|
|
9
|
+
from .indicesrealtimeindexvalue import (
|
|
10
|
+
IndicesRealtimeIndexValue,
|
|
11
|
+
IndicesRealtimeIndexValueTypedDict,
|
|
12
|
+
)
|
|
13
|
+
from .tenderofferidentifiertype import TenderOfferIdentifierType
|
|
14
|
+
from finance_dev import models
|
|
15
|
+
from finance_dev.types import BaseModel
|
|
16
|
+
import pydantic
|
|
17
|
+
from pydantic import field_serializer
|
|
18
|
+
from typing_extensions import Annotated, TypedDict
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class IndicesRealtimeValuesItemTypedDict(TypedDict):
|
|
22
|
+
r"""One index in the batch realtime values response."""
|
|
23
|
+
|
|
24
|
+
identifier: str
|
|
25
|
+
r"""Full index identifier (e.g. SPX.IND_CBOM)"""
|
|
26
|
+
identifier_type: TenderOfferIdentifierType
|
|
27
|
+
r"""Which kind of identifier you are filtering by. Provide the matching value in the identifier field:
|
|
28
|
+
- `Symbol` — exchange ticker (e.g. `AAPL`).
|
|
29
|
+
- `CUSIP` — 9-character U.S./Canadian security identifier.
|
|
30
|
+
- `ISIN` — 12-character international identifier.
|
|
31
|
+
- `SEDOL` — 7-character UK identifier.
|
|
32
|
+
- `Valoren` — Swiss identifier.
|
|
33
|
+
- `FIGI` — Bloomberg Financial Instrument Global Identifier.
|
|
34
|
+
- `CompositeFIGI` — country-level composite FIGI.
|
|
35
|
+
"""
|
|
36
|
+
index: IndicesRealtimeIndexInfoTypedDict
|
|
37
|
+
r"""Index metadata for a realtime quote item."""
|
|
38
|
+
value: IndicesRealtimeIndexValueTypedDict
|
|
39
|
+
r"""Realtime OHLC and change fields for an index quote."""
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class IndicesRealtimeValuesItem(BaseModel):
|
|
43
|
+
r"""One index in the batch realtime values response."""
|
|
44
|
+
|
|
45
|
+
identifier: str
|
|
46
|
+
r"""Full index identifier (e.g. SPX.IND_CBOM)"""
|
|
47
|
+
|
|
48
|
+
identifier_type: Annotated[
|
|
49
|
+
TenderOfferIdentifierType, pydantic.Field(alias="identifierType")
|
|
50
|
+
]
|
|
51
|
+
r"""Which kind of identifier you are filtering by. Provide the matching value in the identifier field:
|
|
52
|
+
- `Symbol` — exchange ticker (e.g. `AAPL`).
|
|
53
|
+
- `CUSIP` — 9-character U.S./Canadian security identifier.
|
|
54
|
+
- `ISIN` — 12-character international identifier.
|
|
55
|
+
- `SEDOL` — 7-character UK identifier.
|
|
56
|
+
- `Valoren` — Swiss identifier.
|
|
57
|
+
- `FIGI` — Bloomberg Financial Instrument Global Identifier.
|
|
58
|
+
- `CompositeFIGI` — country-level composite FIGI.
|
|
59
|
+
"""
|
|
60
|
+
|
|
61
|
+
index: IndicesRealtimeIndexInfo
|
|
62
|
+
r"""Index metadata for a realtime quote item."""
|
|
63
|
+
|
|
64
|
+
value: IndicesRealtimeIndexValue
|
|
65
|
+
r"""Realtime OHLC and change fields for an index quote."""
|
|
66
|
+
|
|
67
|
+
@field_serializer("identifier_type")
|
|
68
|
+
def serialize_identifier_type(self, value):
|
|
69
|
+
if isinstance(value, str):
|
|
70
|
+
try:
|
|
71
|
+
return models.TenderOfferIdentifierType(value)
|
|
72
|
+
except ValueError:
|
|
73
|
+
return value
|
|
74
|
+
return value
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
try:
|
|
78
|
+
IndicesRealtimeValuesItem.model_rebuild()
|
|
79
|
+
except NameError:
|
|
80
|
+
pass
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: 0fe715a6b05c
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from .indicesrealtimevaluesitem import (
|
|
6
|
+
IndicesRealtimeValuesItem,
|
|
7
|
+
IndicesRealtimeValuesItemTypedDict,
|
|
8
|
+
)
|
|
9
|
+
from finance_dev.types import BaseModel, UNSET_SENTINEL
|
|
10
|
+
from pydantic import model_serializer
|
|
11
|
+
from typing import List, Optional
|
|
12
|
+
from typing_extensions import NotRequired, TypedDict
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class IndicesRealtimeValuesResponseTypedDict(TypedDict):
|
|
16
|
+
r"""Batch realtime index quotes returned by GET /v1/indices/realtime/values."""
|
|
17
|
+
|
|
18
|
+
items: NotRequired[List[IndicesRealtimeValuesItemTypedDict]]
|
|
19
|
+
r"""One entry per requested identifier"""
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class IndicesRealtimeValuesResponse(BaseModel):
|
|
23
|
+
r"""Batch realtime index quotes returned by GET /v1/indices/realtime/values."""
|
|
24
|
+
|
|
25
|
+
items: Optional[List[IndicesRealtimeValuesItem]] = None
|
|
26
|
+
r"""One entry per requested identifier"""
|
|
27
|
+
|
|
28
|
+
@model_serializer(mode="wrap")
|
|
29
|
+
def serialize_model(self, handler):
|
|
30
|
+
optional_fields = set(["items"])
|
|
31
|
+
serialized = handler(self)
|
|
32
|
+
m = {}
|
|
33
|
+
|
|
34
|
+
for n, f in type(self).model_fields.items():
|
|
35
|
+
k = f.alias or n
|
|
36
|
+
val = serialized.get(k, serialized.get(n))
|
|
37
|
+
|
|
38
|
+
if val != UNSET_SENTINEL:
|
|
39
|
+
if val is not None or k not in optional_fields:
|
|
40
|
+
m[k] = val
|
|
41
|
+
|
|
42
|
+
return m
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: 96050407b34a
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from finance_dev.types import BaseModel, UNSET_SENTINEL
|
|
6
|
+
import pydantic
|
|
7
|
+
from pydantic import model_serializer
|
|
8
|
+
from typing import List, Optional
|
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class InflationExpectationsResponseResultTypedDict(TypedDict):
|
|
13
|
+
date_: NotRequired[str]
|
|
14
|
+
r"""Reference date (YYYY-MM-DD)"""
|
|
15
|
+
forward_years5_to10: NotRequired[float]
|
|
16
|
+
r"""Forward inflation expectation covering years 5 to 10"""
|
|
17
|
+
market10_year: NotRequired[float]
|
|
18
|
+
r"""Market-implied 10-year inflation expectation"""
|
|
19
|
+
market5_year: NotRequired[float]
|
|
20
|
+
r"""Market-implied 5-year inflation expectation"""
|
|
21
|
+
model10_year: NotRequired[float]
|
|
22
|
+
r"""Model-based 10-year inflation expectation"""
|
|
23
|
+
model1_year: NotRequired[float]
|
|
24
|
+
r"""Model-based 1-year inflation expectation"""
|
|
25
|
+
model30_year: NotRequired[float]
|
|
26
|
+
r"""Model-based 30-year inflation expectation"""
|
|
27
|
+
model5_year: NotRequired[float]
|
|
28
|
+
r"""Model-based 5-year inflation expectation"""
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class InflationExpectationsResponseResult(BaseModel):
|
|
32
|
+
date_: Annotated[Optional[str], pydantic.Field(alias="date")] = None
|
|
33
|
+
r"""Reference date (YYYY-MM-DD)"""
|
|
34
|
+
|
|
35
|
+
forward_years5_to10: Annotated[
|
|
36
|
+
Optional[float], pydantic.Field(alias="forwardYears5To10")
|
|
37
|
+
] = None
|
|
38
|
+
r"""Forward inflation expectation covering years 5 to 10"""
|
|
39
|
+
|
|
40
|
+
market10_year: Annotated[Optional[float], pydantic.Field(alias="market10Year")] = (
|
|
41
|
+
None
|
|
42
|
+
)
|
|
43
|
+
r"""Market-implied 10-year inflation expectation"""
|
|
44
|
+
|
|
45
|
+
market5_year: Annotated[Optional[float], pydantic.Field(alias="market5Year")] = None
|
|
46
|
+
r"""Market-implied 5-year inflation expectation"""
|
|
47
|
+
|
|
48
|
+
model10_year: Annotated[Optional[float], pydantic.Field(alias="model10Year")] = None
|
|
49
|
+
r"""Model-based 10-year inflation expectation"""
|
|
50
|
+
|
|
51
|
+
model1_year: Annotated[Optional[float], pydantic.Field(alias="model1Year")] = None
|
|
52
|
+
r"""Model-based 1-year inflation expectation"""
|
|
53
|
+
|
|
54
|
+
model30_year: Annotated[Optional[float], pydantic.Field(alias="model30Year")] = None
|
|
55
|
+
r"""Model-based 30-year inflation expectation"""
|
|
56
|
+
|
|
57
|
+
model5_year: Annotated[Optional[float], pydantic.Field(alias="model5Year")] = None
|
|
58
|
+
r"""Model-based 5-year inflation expectation"""
|
|
59
|
+
|
|
60
|
+
@model_serializer(mode="wrap")
|
|
61
|
+
def serialize_model(self, handler):
|
|
62
|
+
optional_fields = set(
|
|
63
|
+
[
|
|
64
|
+
"date",
|
|
65
|
+
"forwardYears5To10",
|
|
66
|
+
"market10Year",
|
|
67
|
+
"market5Year",
|
|
68
|
+
"model10Year",
|
|
69
|
+
"model1Year",
|
|
70
|
+
"model30Year",
|
|
71
|
+
"model5Year",
|
|
72
|
+
]
|
|
73
|
+
)
|
|
74
|
+
serialized = handler(self)
|
|
75
|
+
m = {}
|
|
76
|
+
|
|
77
|
+
for n, f in type(self).model_fields.items():
|
|
78
|
+
k = f.alias or n
|
|
79
|
+
val = serialized.get(k, serialized.get(n))
|
|
80
|
+
|
|
81
|
+
if val != UNSET_SENTINEL:
|
|
82
|
+
if val is not None or k not in optional_fields:
|
|
83
|
+
m[k] = val
|
|
84
|
+
|
|
85
|
+
return m
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
class InflationExpectationsResponseTypedDict(TypedDict):
|
|
89
|
+
r"""Paginated response containing inflation expectations data from the upstream data provider."""
|
|
90
|
+
|
|
91
|
+
next_url: NotRequired[str]
|
|
92
|
+
r"""URL for next page of results"""
|
|
93
|
+
request_id: NotRequired[str]
|
|
94
|
+
r"""Provider request identifier for tracing and support"""
|
|
95
|
+
results: NotRequired[List[InflationExpectationsResponseResultTypedDict]]
|
|
96
|
+
r"""Array of inflation expectation data points"""
|
|
97
|
+
status: NotRequired[str]
|
|
98
|
+
r"""Status string from the upstream data provider — typically `OK` for a successful response. Treat any other value as an error indicator alongside the HTTP status code."""
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
class InflationExpectationsResponse(BaseModel):
|
|
102
|
+
r"""Paginated response containing inflation expectations data from the upstream data provider."""
|
|
103
|
+
|
|
104
|
+
next_url: Annotated[Optional[str], pydantic.Field(alias="nextUrl")] = None
|
|
105
|
+
r"""URL for next page of results"""
|
|
106
|
+
|
|
107
|
+
request_id: Annotated[Optional[str], pydantic.Field(alias="requestId")] = None
|
|
108
|
+
r"""Provider request identifier for tracing and support"""
|
|
109
|
+
|
|
110
|
+
results: Optional[List[InflationExpectationsResponseResult]] = None
|
|
111
|
+
r"""Array of inflation expectation data points"""
|
|
112
|
+
|
|
113
|
+
status: Optional[str] = None
|
|
114
|
+
r"""Status string from the upstream data provider — typically `OK` for a successful response. Treat any other value as an error indicator alongside the HTTP status code."""
|
|
115
|
+
|
|
116
|
+
@model_serializer(mode="wrap")
|
|
117
|
+
def serialize_model(self, handler):
|
|
118
|
+
optional_fields = set(["nextUrl", "requestId", "results", "status"])
|
|
119
|
+
serialized = handler(self)
|
|
120
|
+
m = {}
|
|
121
|
+
|
|
122
|
+
for n, f in type(self).model_fields.items():
|
|
123
|
+
k = f.alias or n
|
|
124
|
+
val = serialized.get(k, serialized.get(n))
|
|
125
|
+
|
|
126
|
+
if val != UNSET_SENTINEL:
|
|
127
|
+
if val is not None or k not in optional_fields:
|
|
128
|
+
m[k] = val
|
|
129
|
+
|
|
130
|
+
return m
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
try:
|
|
134
|
+
InflationExpectationsResponseResult.model_rebuild()
|
|
135
|
+
except NameError:
|
|
136
|
+
pass
|
|
137
|
+
try:
|
|
138
|
+
InflationExpectationsResponse.model_rebuild()
|
|
139
|
+
except NameError:
|
|
140
|
+
pass
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: 87f4e479ab26
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from finance_dev.types import BaseModel, UNSET_SENTINEL
|
|
6
|
+
import pydantic
|
|
7
|
+
from pydantic import model_serializer
|
|
8
|
+
from typing import List, Optional
|
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class InflationResponseResultTypedDict(TypedDict):
|
|
13
|
+
cpi: NotRequired[float]
|
|
14
|
+
r"""Consumer Price Index"""
|
|
15
|
+
cpi_core: NotRequired[float]
|
|
16
|
+
r"""Core CPI (excluding food and energy)"""
|
|
17
|
+
cpi_year_over_year: NotRequired[float]
|
|
18
|
+
r"""CPI year-over-year change"""
|
|
19
|
+
date_: NotRequired[str]
|
|
20
|
+
r"""Reference date (YYYY-MM-DD)"""
|
|
21
|
+
pce: NotRequired[float]
|
|
22
|
+
r"""Personal Consumption Expenditures"""
|
|
23
|
+
pce_core: NotRequired[float]
|
|
24
|
+
r"""Core PCE"""
|
|
25
|
+
pce_spending: NotRequired[float]
|
|
26
|
+
r"""PCE spending"""
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class InflationResponseResult(BaseModel):
|
|
30
|
+
cpi: Optional[float] = None
|
|
31
|
+
r"""Consumer Price Index"""
|
|
32
|
+
|
|
33
|
+
cpi_core: Annotated[Optional[float], pydantic.Field(alias="cpiCore")] = None
|
|
34
|
+
r"""Core CPI (excluding food and energy)"""
|
|
35
|
+
|
|
36
|
+
cpi_year_over_year: Annotated[
|
|
37
|
+
Optional[float], pydantic.Field(alias="cpiYearOverYear")
|
|
38
|
+
] = None
|
|
39
|
+
r"""CPI year-over-year change"""
|
|
40
|
+
|
|
41
|
+
date_: Annotated[Optional[str], pydantic.Field(alias="date")] = None
|
|
42
|
+
r"""Reference date (YYYY-MM-DD)"""
|
|
43
|
+
|
|
44
|
+
pce: Optional[float] = None
|
|
45
|
+
r"""Personal Consumption Expenditures"""
|
|
46
|
+
|
|
47
|
+
pce_core: Annotated[Optional[float], pydantic.Field(alias="pceCore")] = None
|
|
48
|
+
r"""Core PCE"""
|
|
49
|
+
|
|
50
|
+
pce_spending: Annotated[Optional[float], pydantic.Field(alias="pceSpending")] = None
|
|
51
|
+
r"""PCE spending"""
|
|
52
|
+
|
|
53
|
+
@model_serializer(mode="wrap")
|
|
54
|
+
def serialize_model(self, handler):
|
|
55
|
+
optional_fields = set(
|
|
56
|
+
[
|
|
57
|
+
"cpi",
|
|
58
|
+
"cpiCore",
|
|
59
|
+
"cpiYearOverYear",
|
|
60
|
+
"date",
|
|
61
|
+
"pce",
|
|
62
|
+
"pceCore",
|
|
63
|
+
"pceSpending",
|
|
64
|
+
]
|
|
65
|
+
)
|
|
66
|
+
serialized = handler(self)
|
|
67
|
+
m = {}
|
|
68
|
+
|
|
69
|
+
for n, f in type(self).model_fields.items():
|
|
70
|
+
k = f.alias or n
|
|
71
|
+
val = serialized.get(k, serialized.get(n))
|
|
72
|
+
|
|
73
|
+
if val != UNSET_SENTINEL:
|
|
74
|
+
if val is not None or k not in optional_fields:
|
|
75
|
+
m[k] = val
|
|
76
|
+
|
|
77
|
+
return m
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
class InflationResponseTypedDict(TypedDict):
|
|
81
|
+
r"""Paginated response containing inflation data (CPI and PCE) from the upstream data provider."""
|
|
82
|
+
|
|
83
|
+
next_url: NotRequired[str]
|
|
84
|
+
r"""URL for next page of results"""
|
|
85
|
+
request_id: NotRequired[str]
|
|
86
|
+
r"""Provider request identifier for tracing and support"""
|
|
87
|
+
results: NotRequired[List[InflationResponseResultTypedDict]]
|
|
88
|
+
r"""Array of inflation data points"""
|
|
89
|
+
status: NotRequired[str]
|
|
90
|
+
r"""Status string from the upstream data provider — typically `OK` for a successful response. Treat any other value as an error indicator alongside the HTTP status code."""
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
class InflationResponse(BaseModel):
|
|
94
|
+
r"""Paginated response containing inflation data (CPI and PCE) from the upstream data provider."""
|
|
95
|
+
|
|
96
|
+
next_url: Annotated[Optional[str], pydantic.Field(alias="nextUrl")] = None
|
|
97
|
+
r"""URL for next page of results"""
|
|
98
|
+
|
|
99
|
+
request_id: Annotated[Optional[str], pydantic.Field(alias="requestId")] = None
|
|
100
|
+
r"""Provider request identifier for tracing and support"""
|
|
101
|
+
|
|
102
|
+
results: Optional[List[InflationResponseResult]] = None
|
|
103
|
+
r"""Array of inflation data points"""
|
|
104
|
+
|
|
105
|
+
status: Optional[str] = None
|
|
106
|
+
r"""Status string from the upstream data provider — typically `OK` for a successful response. Treat any other value as an error indicator alongside the HTTP status code."""
|
|
107
|
+
|
|
108
|
+
@model_serializer(mode="wrap")
|
|
109
|
+
def serialize_model(self, handler):
|
|
110
|
+
optional_fields = set(["nextUrl", "requestId", "results", "status"])
|
|
111
|
+
serialized = handler(self)
|
|
112
|
+
m = {}
|
|
113
|
+
|
|
114
|
+
for n, f in type(self).model_fields.items():
|
|
115
|
+
k = f.alias or n
|
|
116
|
+
val = serialized.get(k, serialized.get(n))
|
|
117
|
+
|
|
118
|
+
if val != UNSET_SENTINEL:
|
|
119
|
+
if val is not None or k not in optional_fields:
|
|
120
|
+
m[k] = val
|
|
121
|
+
|
|
122
|
+
return m
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
try:
|
|
126
|
+
InflationResponseResult.model_rebuild()
|
|
127
|
+
except NameError:
|
|
128
|
+
pass
|
|
129
|
+
try:
|
|
130
|
+
InflationResponse.model_rebuild()
|
|
131
|
+
except NameError:
|
|
132
|
+
pass
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: 75f2f6ab27c9
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from finance_dev.types import BaseModel, UNSET_SENTINEL
|
|
6
|
+
import pydantic
|
|
7
|
+
from pydantic import model_serializer
|
|
8
|
+
from typing import Optional
|
|
9
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class InsiderTransactionTypedDict(TypedDict):
|
|
13
|
+
r"""Single insider trading transaction reported on SEC Form 4."""
|
|
14
|
+
|
|
15
|
+
change: NotRequired[int]
|
|
16
|
+
r"""Net change in shares held after the transaction"""
|
|
17
|
+
filing_date: NotRequired[str]
|
|
18
|
+
r"""Date when the Form 4 was filed with the SEC in YYYY-MM-DD format"""
|
|
19
|
+
name: NotRequired[str]
|
|
20
|
+
r"""Name of the insider (executive, director, or beneficial owner)"""
|
|
21
|
+
share: NotRequired[int]
|
|
22
|
+
r"""Number of shares involved in the transaction"""
|
|
23
|
+
symbol: NotRequired[str]
|
|
24
|
+
r"""Stock ticker symbol"""
|
|
25
|
+
transaction_code: NotRequired[str]
|
|
26
|
+
r"""SEC transaction code (P=Purchase, S=Sale, A=Award, etc.)"""
|
|
27
|
+
transaction_date: NotRequired[str]
|
|
28
|
+
r"""Date when the transaction occurred in YYYY-MM-DD format"""
|
|
29
|
+
transaction_price: NotRequired[float]
|
|
30
|
+
r"""Price per share at which the transaction was executed"""
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class InsiderTransaction(BaseModel):
|
|
34
|
+
r"""Single insider trading transaction reported on SEC Form 4."""
|
|
35
|
+
|
|
36
|
+
change: Optional[int] = None
|
|
37
|
+
r"""Net change in shares held after the transaction"""
|
|
38
|
+
|
|
39
|
+
filing_date: Annotated[Optional[str], pydantic.Field(alias="filingDate")] = None
|
|
40
|
+
r"""Date when the Form 4 was filed with the SEC in YYYY-MM-DD format"""
|
|
41
|
+
|
|
42
|
+
name: Optional[str] = None
|
|
43
|
+
r"""Name of the insider (executive, director, or beneficial owner)"""
|
|
44
|
+
|
|
45
|
+
share: Optional[int] = None
|
|
46
|
+
r"""Number of shares involved in the transaction"""
|
|
47
|
+
|
|
48
|
+
symbol: Optional[str] = None
|
|
49
|
+
r"""Stock ticker symbol"""
|
|
50
|
+
|
|
51
|
+
transaction_code: Annotated[
|
|
52
|
+
Optional[str], pydantic.Field(alias="transactionCode")
|
|
53
|
+
] = None
|
|
54
|
+
r"""SEC transaction code (P=Purchase, S=Sale, A=Award, etc.)"""
|
|
55
|
+
|
|
56
|
+
transaction_date: Annotated[
|
|
57
|
+
Optional[str], pydantic.Field(alias="transactionDate")
|
|
58
|
+
] = None
|
|
59
|
+
r"""Date when the transaction occurred in YYYY-MM-DD format"""
|
|
60
|
+
|
|
61
|
+
transaction_price: Annotated[
|
|
62
|
+
Optional[float], pydantic.Field(alias="transactionPrice")
|
|
63
|
+
] = None
|
|
64
|
+
r"""Price per share at which the transaction was executed"""
|
|
65
|
+
|
|
66
|
+
@model_serializer(mode="wrap")
|
|
67
|
+
def serialize_model(self, handler):
|
|
68
|
+
optional_fields = set(
|
|
69
|
+
[
|
|
70
|
+
"change",
|
|
71
|
+
"filingDate",
|
|
72
|
+
"name",
|
|
73
|
+
"share",
|
|
74
|
+
"symbol",
|
|
75
|
+
"transactionCode",
|
|
76
|
+
"transactionDate",
|
|
77
|
+
"transactionPrice",
|
|
78
|
+
]
|
|
79
|
+
)
|
|
80
|
+
serialized = handler(self)
|
|
81
|
+
m = {}
|
|
82
|
+
|
|
83
|
+
for n, f in type(self).model_fields.items():
|
|
84
|
+
k = f.alias or n
|
|
85
|
+
val = serialized.get(k, serialized.get(n))
|
|
86
|
+
|
|
87
|
+
if val != UNSET_SENTINEL:
|
|
88
|
+
if val is not None or k not in optional_fields:
|
|
89
|
+
m[k] = val
|
|
90
|
+
|
|
91
|
+
return m
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
try:
|
|
95
|
+
InsiderTransaction.model_rebuild()
|
|
96
|
+
except NameError:
|
|
97
|
+
pass
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
# @generated-id: 21a3e8656361
|
|
3
|
+
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
from .insidertransaction import InsiderTransaction, InsiderTransactionTypedDict
|
|
6
|
+
from finance_dev.types import BaseModel, UNSET_SENTINEL
|
|
7
|
+
from pydantic import model_serializer
|
|
8
|
+
from typing import List, Optional
|
|
9
|
+
from typing_extensions import NotRequired, TypedDict
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class InsiderTransactionsResponseTypedDict(TypedDict):
|
|
13
|
+
r"""Response containing insider trading transactions."""
|
|
14
|
+
|
|
15
|
+
transactions: NotRequired[List[InsiderTransactionTypedDict]]
|
|
16
|
+
r"""List of insider trading transactions"""
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class InsiderTransactionsResponse(BaseModel):
|
|
20
|
+
r"""Response containing insider trading transactions."""
|
|
21
|
+
|
|
22
|
+
transactions: Optional[List[InsiderTransaction]] = None
|
|
23
|
+
r"""List of insider trading transactions"""
|
|
24
|
+
|
|
25
|
+
@model_serializer(mode="wrap")
|
|
26
|
+
def serialize_model(self, handler):
|
|
27
|
+
optional_fields = set(["transactions"])
|
|
28
|
+
serialized = handler(self)
|
|
29
|
+
m = {}
|
|
30
|
+
|
|
31
|
+
for n, f in type(self).model_fields.items():
|
|
32
|
+
k = f.alias or n
|
|
33
|
+
val = serialized.get(k, serialized.get(n))
|
|
34
|
+
|
|
35
|
+
if val != UNSET_SENTINEL:
|
|
36
|
+
if val is not None or k not in optional_fields:
|
|
37
|
+
m[k] = val
|
|
38
|
+
|
|
39
|
+
return m
|