https://github.com/bukosabino/ta
Tip revision: 187a1654abf04486c4631c1eb3f57028950e6af8 authored by Darío López Padial on 14 July 2018, 15:21:31 UTC
Merge pull request #4 from coire/ultimateosc
Merge pull request #4 from coire/ultimateosc
Tip revision: 187a165
others.py
# -*- coding: utf-8 -*-
"""
.. module:: others
:synopsis: Others Indicators.
.. moduleauthor:: Dario Lopez Padial (Bukosabino)
"""
import pandas as pd
def daily_return(close, fillna=False):
"""Daily Return (DR)
Args:
close(pandas.Series): dataset 'Close' column.
fillna(bool): if True, fill nan values.
Returns:
pandas.Series: New feature generated.
"""
dr = (close / close.shift(1)) - 1
dr *= 100
if fillna:
dr = dr.fillna(0)
return pd.Series(dr, name='d_ret')
def cumulative_return(close, fillna=False):
"""Cumulative Return (CR)
Args:
close(pandas.Series): dataset 'Close' column.
fillna(bool): if True, fill nan values.
Returns:
pandas.Series: New feature generated.
"""
cr = (close / close.iloc[0]) - 1
cr *= 100
if fillna:
cr = cr.fillna(method='backfill')
return pd.Series(cr, name='cum_ret')