
    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 ddlmZ 	 	 	 dd	ed
edededededefdZy)    )sqrt)Series)DictLikeInt)Imports)v_offsetv_pos_defaultv_seriesv_talib   )varianceNcloselengthddoftaliboffsetkwargsreturnc                    t        |d      }t        | |      } | yt        |t              rd|cxk  r|k  rn nt        |      nd}t	        |      }t        |      }t        d   r|rddlm}  || |      }n"t        | |||      j                  t              }|dk7  r|j                  |      }d|v r|j                  |d   d	
       d| |_        d|_        |S )a  Rolling Standard Deviation

    Calculates a rolling Standard Deviation.

    Parameters:
        close (Series): ```close``` Series
        length (int): The period. Default: ```30```
        ddof (int): Delta Degrees of Freedom. 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

    Note:
        * TA Lib does not have a ```ddof``` parameter.
        * The divisor used in calculations is: ```N - ddof```, where ```N```
          is the number of elements. To use ```ddof```, set ```talib=False```.
       Nr   r   r   )STDDEV)r   r   r   r   fillnaT)inplaceSTDEV_
statistics)r	   r
   
isinstanceintr   r   r   r   r   r   applyr   shiftr   namecategory)	r   r   r   r   r   r   mode_talr   stdevs	            h/Users/jameslopez/projects/TradingBot25/.venv/lib/python3.12/site-packages/pandas_ta/statistics/stdev.pyr#   r#      s    8 62&FUF#E}"4-!t2Df2D3t9!Du~HfF wH uf%T

%+ 	
 {F# 6VH%t4 &"EJ!ENL    )NNNN)numpyr   pandasr   pandas_ta._typingr   r   pandas_ta.mapsr   pandas_ta.utilsr   r	   r
   r   r   boolr#    r%   r$   <module>r-      sh      + " F F 
 "&$(;;;
;!; ; #+; 	;r%   