
    fiH                         d Z ddlZddlZ	 ddededej        fdZ	 ddededej        fd	Zed
k    r2 edd          Z	 e
e	            edd          Z e
e           dS dS )um   
Date: 2022/9/20 17:46
Desc: 中国债券信息网-中债指数-中债指数族系-总指数-综合类指数
    N   财富   总值	indicatorperiodreturnc                    i ddddddddd	d
dddddddddddddddddddddd d!d"}d#d$d%d&d'd(d)d*d+d,d-d.d/d0}d1}d2d3||         d3d3d3||          d3||          d3d4d3d3d5}t          j        ||6          }|                                }t          j                            |||           d7||                   d89          }|                    d:;           d<d=g|_        |d<                             t                    |d<<   t          j
        |d<         d>d?d:@          j                            dA          j        j        |d<<   t          j        |d=         d?B          |d=<   |S )Cu  
    中国债券信息网-中债指数-中债指数族系-总指数-综合类指数-中债-新综合指数
    https://yield.chinabond.com.cn/cbweb-mn/indices/single_index_query
    :param indicator: choice of {"全价", "净价", "财富", "平均市值法久期", "平均现金流法久期", "平均市值法凸性", "平均现金流法凸性", "平均现金流法到期收益率", "平均市值法到期收益率", "平均基点价值", "平均待偿期", "平均派息率", "指数上日总市值", "财富指数涨跌幅", "全价指数涨跌幅", "净价指数涨跌幅", "现券结算量"}
    :type indicator: str
    :param period: choice of {"总值", "1年以下", "1-3年", "3-5年", "5-7年", "7-10年", "10年以上", "0-3个月", "3-6个月", "6-9个月", "9-12个月", "0-6个月", "6-12个月"}
    :type period: str
    :return: 新综合指数
    :rtype: pandas.DataFrame
       全价QJZS   净价JJZSr   CFZS   平均市值法久期PJSZFJQ   平均现金流法久期PJXJLFJQ   平均市值法凸性PJSZFTX   平均现金流法凸性PJXJLFTX!   平均现金流法到期收益率PJDQSYL   平均市值法到期收益率
PJSZFDQSYL   平均基点价值PJJDJZ   平均待偿期PJDCQ   平均派息率PJPXL   指数上日总市值ZSZSZ   财富指数涨跌幅CFZSZDF   全价指数涨跌幅QJZSZDF   净价指数涨跌幅JJZSZDF   现券结算量XQJSL00010203040506070809101112r   u
   1年以下u   1-3年u   3-5年u   5-7年u   7-10年u   10年以上u	   0-3个月u	   3-6个月u	   6-9个月u
   9-12个月u	   0-6个月u
   6-12个月@https://yield.chinabond.com.cn/cbweb-mn/indices/singleIndexQuery 8a8b2ca0332abed20134ea76d8885831 1)indexidr:   qxlxtr:   ltcslxr:   zslxtr:   r?   r:   lxr:   localeparams_indexorientTinplacedatevaluemscoerce)uniterrorsutczAsia/Shanghai)rO   )requestspostjsonpd	DataFrame	from_dictreset_indexcolumnsastypefloatto_datetimedt
tz_convertrJ   
to_numeric	r   r   indicator_map
period_mapurlrC   r	data_jsontemp_dfs	            B/usr/local/lib/python3.11/dist-packages/akshare/bond/bond_cbond.pybond_new_composite_index_cbondrg      sN   && 	& 	 	
 	#J 	  	#J 	,Y 	), 	h 	7 	7 	  	  	   	 !" 	7#M(  J MC5F#y)y) F 	c&)))AIl$$]9-DD
60BDDE %  G %%%w'GOfo,,U33GFO
wvT(MMM	JJ''	D FO
 }WW%5hGGGGGN    c                 R   i ddddddddd	d
dddddddddddddddddddddd d!d"}d#d$d%d&d'd(d)d*d+d,d-d.d/d0}d1}d2d3||         d3||          d3d4d3d3d5	}t          j        ||6          }|                                }t          j                            |||           d7||                   d89          }|                    d:;           d<d=g|_        t          j        |d<         d>?          j	        j
        |d<<   t          j        |d=                   |d=<   |S )@u~  
    中国债券信息网-中债指数-中债指数族系-总指数-综合类指数-中债-综合指数
    https://yield.chinabond.com.cn/cbweb-mn/indices/single_index_query
    :param indicator: choice of {"全价", "净价", "财富", "平均市值法久期", "平均现金流法久期", "平均市值法凸性", "平均现金流法凸性", "平均现金流法到期收益率", "平均市值法到期收益率", "平均基点价值", "平均待偿期", "平均派息率", "指数上日总市值", "财富指数涨跌幅", "全价指数涨跌幅", "净价指数涨跌幅", "现券结算量"}
    :type indicator: str
    :param period: choice of {"总值", "1年以下", "1-3年", "3-5年", "5-7年", "7-10年", "10年以上", "0-3个月", "3-6个月", "6-9个月", "9-12个月", "0-6个月", "6-12个月"}
    :type period: str
    :return: 新综合指数
    :rtype: pandas.DataFrame
    r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8    2c90818811afed8d0111c0c672b31578r:   r;   )	r<   r:   r=   r:   r?   r:   r@   r:   rA   rB   rD   rE   rF   TrH   rJ   rK   rL   )rN   )rQ   rR   rS   rT   rU   rV   rW   rX   r[   r\   rJ   r^   r_   s	            rf   bond_composite_index_cbondrk   ]   s   && 	& 	 	
 	#J 	  	#J 	,Y 	), 	h 	7 	7 	  	  	   	 !" 	7#M(  J MC5F#y)
 
F 	c&)))AIl$$]9-DD
60BDDE %  G %%%w'GOnWV_4@@@CHGFO}WW%566GGNrh   __main__)r   r   )r   r   )__doc__pandasrT   rQ   strrU   rg   rk   __name__!bond_new_composite_index_cbond_dfprintbond_composite_index_cbond_df rh   rf   <module>ru      s#   
      .6N NN'*N\N N N Nd .6E EE'*E\E E E EP z(F(F8) ) )% 
E
+,,,$>$>8% % %! 
E
'((((( rh   