
    i                         S SK Jr  S SKJrJrJr  S SKJr  S SKJ	r	J
r
  S SKJr  S SKJrJrJrJr     SS\S	\S
\S\S\S\S\S\S\4S jjrg)    )Series)DictLikeIntIntFloat)Imports)hlc3sma)mad)v_offsetv_pos_defaultv_seriesv_talibNhighlowcloselengthctaliboffsetkwargsreturnc                    [        US5      n[        X5      n [        X5      n[        X#5      nU b  Ub  Uc  g[        US5      n[        U5      n[        U5      n[        S   (       a  U(       a  SSKJn	  U	" XX#5      n
O&[        XX(S9n[        XUS9n[        XS	9nXXM-  -  -
  n
US:w  a  U
R                  U5      n
S
U;   a  U
R                  US
   SS9  SU SU 3U
l        SU
l        U
$ )a  Commodity Channel Index

This indicator attempts to identify "overbought" and "oversold" levels
relative to a mean.

Sources:
    * [tradingview](https://www.tradingview.com/wiki/Commodity_Channel_Index_(CCI))

Parameters:
    high (Series): ```high``` Series
    low (Series): ```low``` Series
    close (Series): ```close``` Series
    length (int): The period. Default: ```14```
    c (float): Scaling Constant. Default: ```0.015```
    talib (bool): If installed, use TA Lib. Default: ```True```
    offset (int): Post shift. Default: ```0```

Other Parameters:
    fillna (value): ```pd.DataFrame.fillna(value)```

Returns:
    (Series): 1 column
   NgQ?r   r   )CCI)r   r   r   r   )r   r   )r   fillnaT)inplaceCCI__momentum)r   r   r   r   r   r   r   r   r	   r
   shiftr   namecategory)r   r   r   r   r   r   r   r   mode_talr   ccitypical_pricemean_typical_pricemad_typical_prices                 Q/var/www/html/trading/venv/lib/python3.13/site-packages/pandas_ta/momentum/cci.pyr$   r$      s   : 62&FD!D
3
CU#E|s{emaAu~HfF wH$U+$uM XN=A4IJJ {ii 6

6(#T
2 fXQqc"CHCLJ    )NNNN)pandasr   pandas_ta._typingr   r   r   pandas_ta.mapsr   pandas_ta.overlapr   r	   pandas_ta.statisticsr
   pandas_ta.utilsr   r   r   r   boolr$    r)   r(   <module>r2      s     5 5 " ' $ F F
 =A&*@
@@&,@69@@#@ @ #+@ 	@r)   