
    fi@1                        d Z ddlmZ ddlZddlZddlmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZ ddedej        fdZ	 ddededej        fdZedk    r ed          Z ee            edd
          Z ee            edd
          Z ee            edd
          Z ee            edd
          Z ee            edd
          Z ee            ed	d
          Z ee            edd
          Z ee            edd
          Z ee            edd
          Z ee           dS dS )u   
Date: 2024/2/24 15:18
Desc: 金融期权数据
http://www.sse.com.cn/assortment/options/price/
http://www.szse.cn/market/product/option/index.html
http://www.cffex.com.cn/hs300gzqq/
http://www.cffex.com.cn/zz1000gzqq/
    )BytesION)SH_OPTION_PAYLOADSH_OPTION_PAYLOAD_OTHERSH_OPTION_URL_50SH_OPTION_URL_KING_50SH_OPTION_URL_300SH_OPTION_URL_KING_300SH_OPTION_URL_500SH_OPTION_URL_KING_500SH_OPTION_URL_KC_50SH_OPTION_URL_KC_KING_50SH_OPTION_URL_KC_50_YFDSH_OPTION_URL_KING_50_YFDCFFEX_OPTION_URL_300   华夏科创50ETF期权symbolreturnc                    t           t          t          t          t          d}t          j        ||          t                    }|                                }t          j
        |d                   }d|j        d<   t          j        t          |d                   t          |d                   z   d	          |j        d
<   g d|_        |S )u_  
    期权标的当日行情
    http://www.sse.com.cn/assortment/options/price/
    :param symbol: choice of {"华夏上证50ETF期权", "华泰柏瑞沪深300ETF期权", "南方中证500ETF期权", "华夏科创50ETF期权", "易方达科创50ETF期权"}
    :type symbol: str
    :return: 期权标的当日行情
    :rtype: pandas.DataFrame
    )   华夏上证50ETF期权   华泰柏瑞沪深300ETF期权   南方中证500ETF期权r      易方达科创50ETF期权paramslist510300)r   r   datetimez%Y%m%d%H%M%S)format)r      )	u   代码u   名称	   当前价u   涨跌	   涨跌幅u   振幅u   成交量(手)u   成交额(万元)u   更新日期)r   r   r
   r   r   requestsgetr   jsonpd	DataFrameatto_datetimestrcolumns)r   
symbol_mapr	data_jsonraw_datas        H/usr/local/lib/python3.11/dist-packages/akshare/option/option_finance.pyoption_finance_sse_underlyingr1   "   s     $4*;$5#6&= J 	Z'0ABBBAI|If-..H HKIfYv%6!7!77  HK
 
 
H O       嘉实沪深300ETF期权2306	end_monthc                 T   |dd         }| dk    rt          j        t          j        |          t                    }|                                }t          j        |d                   }t          |d                   t          |d                   z   g|d         z  |_	        g d	|_
        |d         g|d         z  |d
<   |                    d           g d|_
        |S | dk    rt          j        t          j        |          t                    }|                                }t          j        |d                   }t          |d                   t          |d                   z   g|d         z  |_	        g d	|_
        |d         g|d         z  |d
<   |                    d           g d|_
        |S | dk    rt          j        t          j        |          t                    }|                                }t          j        |d                   }t          |d                   t          |d                   z   g|d         z  |_	        g d	|_
        |d         g|d         z  |d
<   |                    d           g d|_
        |S | dk    rt          j        t          j        |          t                    }|                                }t          j        |d                   }t          |d                   t          |d                   z   g|d         z  |_	        g d	|_
        |d         g|d         z  |d
<   |                    d           g d|_
        |S | dk    rt          j        t          j        |          t                    }|                                }t          j        |d                   }t          |d                   t          |d                   z   g|d         z  |_	        g d	|_
        |d         g|d         z  |d
<   |                    d           g d|_
        |S | dk    rtd}dddddd}t          j        ||          }|                                }|d         d         d         }t          j                    }t!          d|dz             D ]l}	ddd|	dd}t          j        ||          }|                                }t          j        |d         d                   }
t          j        ||
gd          }mg d |_
        t          j        |d!                   |d!<   |d!         j        j                            t                    j                            d"          |d#<   ||d#         |k             }|d#= |                    dd$           |S | d%k    rd&d'i}t          j        t.          |(          }t          j        t3          |j                  d)*          }|d+         j                            d,d-          j        dddf         j                            d.          |d#<   ||d#         |k             }|d#= |                    dd$           |S | d/k    rd&d'i}d0}t          j        ||(          }t          j        t3          |j                  d)*          }|d+         j                            d,d-          j        dddf         j                            d.          |d#<   ||d#         |k             }|d#= |                    dd$           |S | d1k    rd&d'i}d2}t          j        ||(          }t          j        t3          |j                  d)*          }|d+         j                            d,d-          j        dddf         j                            d.          |d#<   ||d#         |k             }|d#= |                    dd$           |S t          j                    S )3u  
    期权当前交易日的行情数据
    主要为三个: 华夏上证50ETF期权, 华泰柏瑞沪深300ETF期权, 嘉实沪深300ETF期权,
    沪深300股指期权, 中证1000股指期权, 上证50股指期权, 华夏科创50ETF期权, 易方达科创50ETF期权
    http://www.sse.com.cn/assortment/options/price/
    http://www.szse.cn/market/product/option/index.html
    http://www.cffex.com.cn/hs300gzqq/
    http://www.cffex.com.cn/zz1000gzqq/
    :param symbol: choice of {"华夏上证50ETF期权", "华泰柏瑞沪深300ETF期权", "南方中证500ETF期权",
    "华夏科创50ETF期权", "易方达科创50ETF期权", "嘉实沪深300ETF期权", "沪深300股指期权", "中证1000股指期权", "上证50股指期权"}
    :type symbol: str
    :param end_month: 2003; 2020 年 3 月到期的期权
    :type end_month: str
    :return: 当日行情
    :rtype: pandas.DataFrame
    Nr   r   r   r   r   total)   合约交易代码r!   r"   	   前结价	   行权价   数量T)inplace)u   日期r9   r!   r"   r:   r;   r<   r   r   r   r   r3   z-http://www.szse.cn/api/report/ShowReport/dataJSONysplbrbtab11z0.10642298535346595)SHOWTYPE	CATALOGIDTABKEYPAGENOrandomr   metadata	pagecount   data)ignore_index)u   合约编码u   合约简称u   标的名称u   类型r;   u   合约单位   期权行权日u   行权交收日rL      r5   )r=   drop   沪深300股指期权z
User-AgentzoMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36)headers,)sep
instrument-)expand      中证1000股指期权z$http://www.cffex.com.cn/quote_MO.txt   上证50股指期权z$http://www.cffex.com.cn/quote_HO.txt)r#   r$   r   r   r   r%   r&   r'   r*   indexr+   reset_indexr	   r   r   r   rangeconcatr)   dtmonthastypezfillr   
read_tabler   contentsplitilocslice)r   r5   r-   r.   r/   urlr   page_numbig_dfpagetemp_dfrP   raw_dfs                r0   option_finance_boardrl   H   s   & "##I***L!(33*
 
 
 FFHH	<	& 122i/003y7H3I3IIJYN
 
 fee'01Ig4FFT***
 
 
 	3	3	3L"))44*
 
 
 FFHH	<	& 122i/003y7H3I3IIJYN
 
 fee'01Ig4FFT***
 
 
 	-	-	-L"))44*
 
 
 FFHH	<	& 122i/003y7H3I3IIJYN
 
 fee'01Ig4FFT***
 
 
 	,	,	,L$+I66*
 
 
 FFHH	<	& 122i/003y7H3I3IIJYN
 
 fee'01Ig4FFT***
 
 
 	/	/	/L%,Y77*
 
 
 FFHH	<	& 122i/003y7H3I3IIJYN
 
 fee'01Ig4FFT***
 
 
 	-	-	-="+
 
 LV,,,FFHH	Q<
+K8!X\** 	E 	ED"& / F S000AIl9Q<#788GY0tDDDFF	
 	
 	
 %'N6:K3L$M$M !$%67:@GGLLPVVWXYY{{+y89;4d333	*	*	*  L
 L-w???wqy11s;;;< s4((!!!Q$  	 	{ {+y89;4d333	+	+	+  L
 5Lg...wqy11s;;;< s4((!!!Q$  	 	{ {+y89;4d333	)	)	)  L
 5Lg...wqy11s;;;< s4((!!!Q$  	 	{ {+y89;4d333|~~r2   __main__)r   r   )r   r5   r   r   r   rO   rW   rX   )r   )r3   r4   )__doc__ior   pandasr&   r#   akshare.option.consr   r   r   r   r   r	   r
   r   r   r   r   r   r   r*   r'   r1   rl   __name__ option_finance_sse_underlying_dfprintoption_finance_board_df r2   r0   <module>rw      s5                                           "# ## #bl # # # #N @Fj jj9<j\j j j jZ z'D'D(( ( ($ 
E
*+++22(F   
E
!"""22/6   
E
!"""22)V   
E
!"""22(F   
E
!"""22+v   
E
!"""22)V   
E
!"""22&&   
E
!"""22'6   
E
!"""22%   
E
!"""""c r2   