
    i                         S SK Jr  S SK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Jr  \" SS9S	 5       r  SS\S\	S\S\	S\S\4S jjrg
)    )njit)convolveones)Series)DictLikeInt)Imports)
nb_prependv_offsetv_pos_defaultv_seriesv_talibT)cachec                 `    [        [        U5      U-  U 5      US-
  SU-
   n[        X!S-
  5      $ )N   )r   r   r
   )xnresults      P/var/www/html/trading/venv/lib/python3.13/site-packages/pandas_ta/overlap/sma.pynb_smar      s4    d1gk1%a!eAE2Ff!e$$    Ncloselengthtaliboffsetkwargsreturnc                    [        US5      nSU;   a  US   b  [        US   5      nOUn[        U [        X5      5      n U c  g[	        U5      n[        U5      n[        S   (       a  U(       a  US:  a  SSKJn  U" X5      nO.U R                  5       n	[        X5      n[        XR                  S9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  Simple Moving Average

This indicator is the the textbook moving average, a rolling sum of
values divided by the window period (or length).

Sources:
    * [tradingtechnologies](https://www.tradingtechnologies.com/help/x-study/technical-indicator-definitions/simple-moving-average-sma/)

Parameters:
    close (Series): ```close``` Series
    length (int): The period. Default: ```10```
    talib (bool): If installed, use TA Lib. Default: ```True```
    offset (int): Post shift. Default: ```0```

Other Parameters:
    adjust (bool): Adjust the values. Default: ```True```
    presma (bool): If True, uses SMA for initial value.
    fillna (value): ```pd.DataFrame.fillna(value)```

Returns:
    (Series): 1 column

   min_periodsNr   r   r   )SMA)indexfillnaT)inplaceSMA_overlap)r   intr   maxr   r   r	   r   r!   to_numpyr   r   r"   shiftr#   namecategory)
r   r   r   r   r   r    mode_talr!   smanp_closes
             r   r.   r.      s    6 62&F6-#8#D&/0UC45E}u~HfF wH!% >>#X&S, {ii 6

6(#T
2 fXCHCLJr   )NNN)numbar   numpyr   r   pandasr   pandas_ta._typingr   r   pandas_ta.mapsr	   pandas_ta.utilsr
   r   r   r   r   r   boolr.    r   r   <module>r8      sv        + "  D% % 6:===.2=="*= =r   