Browse Source

changed pos = [] to *pos in date_parser decorator

switch-to-decimal
Gourav Kumar 2 years ago
parent
commit
60f25de710
  1. 4
      fincal/core.py
  2. 4
      fincal/fincal.py

4
fincal/core.py

@ -17,14 +17,14 @@ class Frequency:
symbol: str
def date_parser(pos):
def date_parser(*pos):
def parse_dates(func):
def wrapper_func(*args, **kwargs):
date_format = kwargs.get("date_format", None)
args = list(args)
sig = inspect.signature(func)
params = [i[0] for i in sig.parameters.items()]
# print(params)
for j in pos:
kwarg = params[j]
date = kwargs.get(kwarg, None)

4
fincal/fincal.py

@ -184,7 +184,7 @@ class TimeSeries(TimeSeriesCore):
return self.__class__(new_ts, frequency=self.frequency.symbol)
@date_parser(pos=[1])
@date_parser(1)
def calculate_returns(
self,
as_on: Union[str, datetime.datetime],
@ -277,7 +277,7 @@ class TimeSeries(TimeSeriesCore):
returns = returns ** (1 / years)
return (current[0] if return_actual_date else as_on), returns - 1
@date_parser(pos=[1, 2])
@date_parser(1, 2)
def calculate_rolling_returns(
self,
from_date: Union[datetime.date, str],

Loading…
Cancel
Save