
    Q-j                         d dl mZ 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mZmZ  ed      d        Z	 	 dd
edededededefdZy	)    )njit)Series)DictLikeInt)Imports)nb_idiffv_offsetv_pos_defaultv_seriesv_talibT)cachec                     t        | |      S )N)r   )xns     d/Users/jameslopez/projects/TradingBot25/.venv/lib/python3.12/site-packages/pandas_ta/momentum/mom.pynb_momr      s    Aq>    Ncloselengthtaliboffsetkwargsreturnc                    t        |d      }t        | |dz         } | yt        |      }t        |      }t        d   r|rddlm}  || |      }n3| j                         }t        ||      }	t        |	| j                        }|dk7  r|j                  |      }d|v r|j                  |d   d	
       d| |_        d|_        |S )aA  Momentum

    This indicator attempts to quantify speed by using the differences over
    a bar length.

    Sources:
        * [onlinetradingconcepts](http://www.onlinetradingconcepts.com/TechnicalAnalysis/Momentum.html)

    Parameters:
        close (Series): ```close``` Series
        length (int): The period. Default: ```1```
        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
    
      Nr   r   )MOM)indexfillnaT)inplaceMOM_momentum)r
   r   r   r	   r   r   r   to_numpyr   r   r   shiftr   namecategory)
r   r   r   r   r   mode_talr   momnp_close_moms
             r   r(   r(      s    2 62&FUFQJ'E}u~HfF wH% >>#h'T- {ii 6

6(#T
2 fXCHCLJr   )NNN)numbar   pandasr   pandas_ta._typingr   r   pandas_ta.mapsr   pandas_ta.utilsr   r	   r
   r   r   r   boolr(    r   r   <module>r2      ss      + "  D 
 6:777.277"*7 7r   