
    i\	                     n    S SK Jr  S SKJr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)non_zero_rangev_offsetv_pos_defaultv_seriesNhighlowclosevolumeopen_lengthoffsetkwargsreturnc                 V   [        US5      nSU;   a  US   b  [        US   5      nOUn[        XX5      n	[        X	5      n [        X5      n[        X)5      n[        X95      nU b	  Ub  Ub  Uc  g[	        U5      nUb  [        U5      n[        X$5      n
O
SU-  X-   -
  n
X[        X5      -  -  n
U
R                  XXS9R                  5       UR                  XXS9R                  5       -  nUS:w  a  UR                  U5      nSU;   a  UR                  US   SS	9  S
U 3Ul
        SUl        U$ )a+  Chaikin Money Flow

This indicator attempts to quantify money flow.

Sources:
    * [stockcharts](https://stockcharts.com/school/doku.php?id=chart_school:technical_indicators:chaikin_money_flow_cmf)
    * [tradingview](https://www.tradingview.com/wiki/Chaikin_Money_Flow_(CMF))

Parameters:
    high (Series): ```high``` Series
    low (Series): ```low``` Series
    close (Series): ```close``` Series
    volume (Series): ```volume``` Series
    length (int): The period. Default: ```20```
    offset (int): Post shift. Default: ```0```

Other Parameters:
    open_ (Series): Optional ```open``` Series. Default: ```None```
    fillna (value): ```pd.DataFrame.fillna(value)```

Returns:
    (Series): 1 column

Note:
    Commonly used with Accumulation/Distribution [ad](volume.md/#src.pandas_ta.volume.ad.ad)
   min_periodsN   )r   r   fillnaT)inplaceCMF_r   )r   intmaxr	   r   r   rollingsumshiftr   namecategory)r
   r   r   r   r   r   r   r   r   _lengthadcmfs               O/var/www/html/trading/venv/lib/python3.13/site-packages/pandas_ta/volume/cmf.pyr#   r#      sK   @ 62&F6-#8#D&/0&&GD"D
3
 CU$Ef&F|s{emv~fF E)Y$*%>$,
,,B
**V*
5
9
9
;
...
9
=
=
?@C {ii 6

6(#T
2 fXCHCLJ    )NNN)pandasr   pandas_ta._typingr   r   pandas_ta.utilsr   r   r   r	   r#    r%   r$   <module>r*      sv     + M M )-G
GG&,G6<GG"%G G #+G 	Gr%   