
    Q-j                     j    d dl mZ d dlmZmZ d dlmZ d dlmZm	Z	m
Z
 	 	 ddededed	ed
ededefdZy)    )Series)DictLikeInt)Imports)v_offsetv_seriesv_talibNhighlowclosetaliboffsetkwargsreturnc                    t        |       } t        |      }t        |      }t        |      }t        |      }| ||yt        d   r|r|j                  rddlm}  || ||      }nL| j                         |j                         z   |j                         z   dz  }	t        |	|j                        }|dk7  r+|j                  |      }d|v r|j                  |d   d	       d
|_        d|_        |S )a  HLC3

    HLC3 is the average of high, low and close.

    Parameters:
        high (Series): ```high``` Series
        low (Series): ```low``` Series
        close (Series): ```close``` Series
        offset (int): Post shift. Default: ```0```

    Other Parameters:
        fillna (value): ```pd.DataFrame.fillna(value)```.
            Only works when offset.

    Returns:
        (Series): 1 column
    Nr   r   )TYPPRICEg      @)indexfillnaT)inplaceHLC3overlap)r   r	   r   r   sizer   r   to_numpyr   r   shiftr   namecategory)
r
   r   r   r   r   r   mode_talr   hlc3avgs
             d/Users/jameslopez/projects/TradingBot25/.venv/lib/python3.12/site-packages/pandas_ta/overlap/hlc3.pyr   r   	   s    , D>D
3-CUOEu~HfF|s{em wH"c5)}}/%..2BBcIc- {zz&! vKKx($K7 DIDMK    )NN)pandasr   pandas_ta._typingr   r   pandas_ta.mapsr   pandas_ta.utilsr   r   r	   boolr    r!   r    <module>r(      s\     + " 7 7
 =A3
33&,35933"*3 3r!   