def get_corporate_split(self, symbols, market, begin_date, end_date): """ 获取公司拆合股数据 :param symbols: 证券代码列表 :param market: 查询的市场. 可选的值为 common.consts.Market 枚举类型, 如 Market.US :param begin_date: 起始时间. 若是时间戳需要精确到毫秒, 为13位整数; 或是日期时间格式的字符串, 如 "2019-01-01" 或 "2019-01-01 12:00:00" :param end_date: 截止时间. 格式同 begin_date :return: pandas.DataFrame, 各 column 的含义如下: symbol: 证券代码 action_type: 固定为 "SPLIT" from_factor: 公司行动前的因子 to_factor: 公司行动后的因子 ratio: 拆合股比例 excute_date: 除权除息日 market: 所属市场 exchange: 所属交易所 """ params = CorporateActionParams() params.action_type = CorporateActionType.SPLIT.value params.symbols = symbols params.market = market.value params.begin_date = begin_date params.end_date = end_date request = OpenApiRequest(CORPORATE_ACTION, biz_model=params) response_content = self.__fetch_data(request) if response_content: response = CorporateSplitResponse() response.parse_response_content(response_content) if response.is_success(): return response.corporate_split else: raise ApiException(response.code, response.message)
def get_corporate_dividend(self, symbols, market, begin_date, end_date): """ 获取公司派息数据 :param symbols: :param market: :param begin_date: :param end_date: :return: """ params = CorporateActionParams() params.action_type = CorporateActionType.DIVIDEND.value params.symbols = symbols params.market = market.value params.begin_date = begin_date params.end_date = end_date request = OpenApiRequest(CORPORATE_ACTION, biz_model=params) response_content = self.__fetch_data(request) if response_content: response = CorporateDividendResponse() response.parse_response_content(response_content) if response.is_success(): return response.corporate_dividend else: raise ApiException(response.code, response.message)
def get_corporate_earnings_calendar(self, market, begin_date, end_date): """ 获取公司财报日历 :param market: :param begin_date: 起始时间 :param end_date: 截止时间 :return: """ params = CorporateActionParams() params.action_type = CorporateActionType.EARNINGS_CALENDAR.value params.market = market.value params.begin_date = begin_date params.end_date = end_date request = OpenApiRequest(CORPORATE_ACTION, biz_model=params) response_content = self.__fetch_data(request) if response_content: response = EarningsCalendarResponse() response.parse_response_content(response_content) if response.is_success(): return response.earnings_calendar else: raise ApiException(response.code, response.message)
def get_corporate_dividend(self, symbols, market, begin_date, end_date): """ 获取公司派息数据 :param symbols: 证券代码列表 :param market: 查询的市场. 可选的值为 common.consts.Market 枚举类型, 如 Market.US :param begin_date: 起始时间. 若是时间戳需要精确到毫秒, 为13位整数; 或是日期时间格式的字符串, 如 "2019-01-01" 或 "2019-01-01 12:00:00" :param end_date: 截止时间. 格式同 begin_date :return: pandas.DataFrame, 各 column 的含义如下: symbol: 证券代码 action_type: 固定为 "DIVIDEND" amount: 分红金额 currency: 分红货币类型 announced_date: 公告日期 excute_date: 除权除息日 record_date: 股权登记日 pay_date: 现金到账日 market: 所属市场 exchange: 所属交易所 """ params = CorporateActionParams() params.action_type = CorporateActionType.DIVIDEND.value params.symbols = symbols params.market = market.value params.begin_date = begin_date params.end_date = end_date request = OpenApiRequest(CORPORATE_ACTION, biz_model=params) response_content = self.__fetch_data(request) if response_content: response = CorporateDividendResponse() response.parse_response_content(response_content) if response.is_success(): return response.corporate_dividend else: raise ApiException(response.code, response.message)