|
14 | 14 | AssetClass, |
15 | 15 | Locale, |
16 | 16 | Split, |
| 17 | + StockSplit, |
17 | 18 | Dividend, |
| 19 | + StockDividend, |
18 | 20 | DividendType, |
19 | 21 | Frequency, |
20 | 22 | Condition, |
|
24 | 26 | OptionsContract, |
25 | 27 | ShortInterest, |
26 | 28 | ShortVolume, |
| 29 | + RiskFactor, |
| 30 | + RiskFactorTaxonomy, |
27 | 31 | ) |
28 | 32 | from urllib3 import HTTPResponse |
29 | 33 | from datetime import date |
@@ -695,3 +699,157 @@ def list_short_volume( |
695 | 699 | result_key="results", |
696 | 700 | options=options, |
697 | 701 | ) |
| 702 | + |
| 703 | + # Add these functions to financials.py in the FinancialsClient class |
| 704 | + |
| 705 | + def list_stocks_splits( |
| 706 | + self, |
| 707 | + ticker: Optional[str] = None, |
| 708 | + ticker_any_of: Optional[str] = None, |
| 709 | + ticker_gt: Optional[str] = None, |
| 710 | + ticker_gte: Optional[str] = None, |
| 711 | + ticker_lt: Optional[str] = None, |
| 712 | + ticker_lte: Optional[str] = None, |
| 713 | + execution_date: Optional[Union[str, date]] = None, |
| 714 | + execution_date_gt: Optional[Union[str, date]] = None, |
| 715 | + execution_date_gte: Optional[Union[str, date]] = None, |
| 716 | + execution_date_lt: Optional[Union[str, date]] = None, |
| 717 | + execution_date_lte: Optional[Union[str, date]] = None, |
| 718 | + adjustment_type: Optional[str] = None, |
| 719 | + adjustment_type_any_of: Optional[str] = None, |
| 720 | + limit: Optional[int] = None, |
| 721 | + sort: Optional[Union[str, Sort]] = None, |
| 722 | + params: Optional[Dict[str, Any]] = None, |
| 723 | + raw: bool = False, |
| 724 | + options: Optional[RequestOptionBuilder] = None, |
| 725 | + ) -> Union[Iterator[StockSplit], HTTPResponse]: |
| 726 | + """ |
| 727 | + Endpoint: GET /stocks/v1/splits |
| 728 | + """ |
| 729 | + url = "/stocks/v1/splits" |
| 730 | + return self._paginate( |
| 731 | + path=url, |
| 732 | + params=self._get_params(self.list_stocks_splits, locals()), |
| 733 | + raw=raw, |
| 734 | + deserializer=StockSplit.from_dict, |
| 735 | + options=options, |
| 736 | + ) |
| 737 | + |
| 738 | + def list_stocks_dividends( |
| 739 | + self, |
| 740 | + ticker: Optional[str] = None, |
| 741 | + ticker_any_of: Optional[str] = None, |
| 742 | + ticker_gt: Optional[str] = None, |
| 743 | + ticker_gte: Optional[str] = None, |
| 744 | + ticker_lt: Optional[str] = None, |
| 745 | + ticker_lte: Optional[str] = None, |
| 746 | + ex_dividend_date: Optional[Union[str, date]] = None, |
| 747 | + ex_dividend_date_gt: Optional[Union[str, date]] = None, |
| 748 | + ex_dividend_date_gte: Optional[Union[str, date]] = None, |
| 749 | + ex_dividend_date_lt: Optional[Union[str, date]] = None, |
| 750 | + ex_dividend_date_lte: Optional[Union[str, date]] = None, |
| 751 | + frequency: Optional[int] = None, |
| 752 | + frequency_gt: Optional[int] = None, |
| 753 | + frequency_gte: Optional[int] = None, |
| 754 | + frequency_lt: Optional[int] = None, |
| 755 | + frequency_lte: Optional[int] = None, |
| 756 | + distribution_type: Optional[str] = None, |
| 757 | + distribution_type_any_of: Optional[str] = None, |
| 758 | + limit: Optional[int] = None, |
| 759 | + sort: Optional[Union[str, Sort]] = None, |
| 760 | + params: Optional[Dict[str, Any]] = None, |
| 761 | + raw: bool = False, |
| 762 | + options: Optional[RequestOptionBuilder] = None, |
| 763 | + ) -> Union[Iterator[StockDividend], HTTPResponse]: |
| 764 | + """ |
| 765 | + Endpoint: GET /stocks/v1/dividends |
| 766 | + """ |
| 767 | + url = "/stocks/v1/dividends" |
| 768 | + return self._paginate( |
| 769 | + path=url, |
| 770 | + params=self._get_params(self.list_stocks_dividends, locals()), |
| 771 | + raw=raw, |
| 772 | + deserializer=StockDividend.from_dict, |
| 773 | + options=options, |
| 774 | + ) |
| 775 | + |
| 776 | + def list_stocks_filings_risk_factors( |
| 777 | + self, |
| 778 | + filing_date: Optional[Union[str, date]] = None, |
| 779 | + filing_date_any_of: Optional[str] = None, |
| 780 | + filing_date_gt: Optional[Union[str, date]] = None, |
| 781 | + filing_date_gte: Optional[Union[str, date]] = None, |
| 782 | + filing_date_lt: Optional[Union[str, date]] = None, |
| 783 | + filing_date_lte: Optional[Union[str, date]] = None, |
| 784 | + ticker: Optional[str] = None, |
| 785 | + ticker_any_of: Optional[str] = None, |
| 786 | + ticker_gt: Optional[str] = None, |
| 787 | + ticker_gte: Optional[str] = None, |
| 788 | + ticker_lt: Optional[str] = None, |
| 789 | + ticker_lte: Optional[str] = None, |
| 790 | + cik: Optional[str] = None, |
| 791 | + cik_any_of: Optional[str] = None, |
| 792 | + cik_gt: Optional[str] = None, |
| 793 | + cik_gte: Optional[str] = None, |
| 794 | + cik_lt: Optional[str] = None, |
| 795 | + cik_lte: Optional[str] = None, |
| 796 | + limit: Optional[int] = None, |
| 797 | + sort: Optional[Union[str, Sort]] = None, |
| 798 | + params: Optional[Dict[str, Any]] = None, |
| 799 | + raw: bool = False, |
| 800 | + options: Optional[RequestOptionBuilder] = None, |
| 801 | + ) -> Union[Iterator[RiskFactor], HTTPResponse]: |
| 802 | + """ |
| 803 | + Endpoint: GET /stocks/filings/vX/risk-factors |
| 804 | + """ |
| 805 | + url = "/stocks/filings/vX/risk-factors" |
| 806 | + return self._paginate( |
| 807 | + path=url, |
| 808 | + params=self._get_params(self.list_stocks_filings_risk_factors, locals()), |
| 809 | + raw=raw, |
| 810 | + deserializer=RiskFactor.from_dict, |
| 811 | + options=options, |
| 812 | + ) |
| 813 | + |
| 814 | + def list_stocks_taxonomies_risk_factors( |
| 815 | + self, |
| 816 | + taxonomy: Optional[float] = None, |
| 817 | + taxonomy_gt: Optional[float] = None, |
| 818 | + taxonomy_gte: Optional[float] = None, |
| 819 | + taxonomy_lt: Optional[float] = None, |
| 820 | + taxonomy_lte: Optional[float] = None, |
| 821 | + primary_category: Optional[str] = None, |
| 822 | + primary_category_any_of: Optional[str] = None, |
| 823 | + primary_category_gt: Optional[str] = None, |
| 824 | + primary_category_gte: Optional[str] = None, |
| 825 | + primary_category_lt: Optional[str] = None, |
| 826 | + primary_category_lte: Optional[str] = None, |
| 827 | + secondary_category: Optional[str] = None, |
| 828 | + secondary_category_any_of: Optional[str] = None, |
| 829 | + secondary_category_gt: Optional[str] = None, |
| 830 | + secondary_category_gte: Optional[str] = None, |
| 831 | + secondary_category_lt: Optional[str] = None, |
| 832 | + secondary_category_lte: Optional[str] = None, |
| 833 | + tertiary_category: Optional[str] = None, |
| 834 | + tertiary_category_any_of: Optional[str] = None, |
| 835 | + tertiary_category_gt: Optional[str] = None, |
| 836 | + tertiary_category_gte: Optional[str] = None, |
| 837 | + tertiary_category_lt: Optional[str] = None, |
| 838 | + tertiary_category_lte: Optional[str] = None, |
| 839 | + limit: Optional[int] = None, |
| 840 | + sort: Optional[Union[str, Sort]] = None, |
| 841 | + params: Optional[Dict[str, Any]] = None, |
| 842 | + raw: bool = False, |
| 843 | + options: Optional[RequestOptionBuilder] = None, |
| 844 | + ) -> Union[Iterator[RiskFactorTaxonomy], HTTPResponse]: |
| 845 | + """ |
| 846 | + Endpoint: GET /stocks/taxonomies/vX/risk-factors |
| 847 | + """ |
| 848 | + url = "/stocks/taxonomies/vX/risk-factors" |
| 849 | + return self._paginate( |
| 850 | + path=url, |
| 851 | + params=self._get_params(self.list_stocks_taxonomies_risk_factors, locals()), |
| 852 | + raw=raw, |
| 853 | + deserializer=RiskFactorTaxonomy.from_dict, |
| 854 | + options=options, |
| 855 | + ) |
0 commit comments