Compare commits

...

2 commits

Author SHA1 Message Date
d79a13b080
fix: cron date calculation
Signed-off-by: Ameya Shenoy <shenoy.ameya@gmail.com>
2021-02-15 00:40:56 +05:30
867933c2c6
fix: attribution docs
Signed-off-by: Ameya Shenoy <shenoy.ameya@gmail.com>
2021-02-15 00:40:25 +05:30
3 changed files with 13 additions and 10 deletions

View file

@ -158,5 +158,5 @@ The code in this repository has been released under the [GNU Affero General Publ
## Attributions
- [Bullish icon](./.assets/images/bullish.png) made by [Freepik](https://www.freepik.com) from [Flaticon](https://www.flaticon.com)
- [Bullish icon](https://www.flaticon.com/free-icon/bull-side-view-black-animal-shape_30480) made by [Freepik](https://www.freepik.com) from [Flaticon](https://www.flaticon.com)

View file

@ -27,4 +27,3 @@ class AppConfig(AppConfig):
repeat=None,
)

View file

@ -53,6 +53,8 @@ def fetch_bhav_copy_equity_data(date=None):
def populate_bhav_copy_data(date=None):
"""Populate DB with Bhav Copy data."""
if date is None:
date = datetime.datetime.now().date()
try:
data = fetch_bhav_copy_equity_data(date=date)
except Exception as err:
@ -72,11 +74,11 @@ def populate_bhav_copy_data(date=None):
def populate_bhav_copy_data_into_redis_v1(data=None, date=None):
if date is None:
raise ValueError("Date is required")
if data is None:
data = fetch_bhav_copy_equity_data(date=date)
del data[0]
if date is None:
date = datetime.datetime.now().date()
logger.info('Populating data into redis')
datestr = date.strftime("%d%m%y")
pipe = cache.pipeline()
@ -95,11 +97,12 @@ def populate_bhav_copy_data_into_redis_v1(data=None, date=None):
def populate_bhav_copy_data_into_redis_v2(data=None, date=None):
if date is None:
raise ValueError("Date required.")
if data is None:
data = fetch_bhav_copy_equity_data(date=date)
del data[0]
if date is None:
date = datetime.datetime.now().date()
logger.info('Populating data into redis v2')
datestr = date.strftime("%d%m%y")
data = stocks_csv_to_json(data)
stocks_key = f"stocks:v2:{datestr}"
@ -110,11 +113,11 @@ def populate_bhav_copy_data_into_redis_v2(data=None, date=None):
@transaction.atomic
def populate_bhav_copy_data_into_postgres(data=None, date=None):
logger.info('Populating data into postgres for %s', date)
if date is None:
raise ValueError("Date required")
if data is None:
data = fetch_bhav_copy_equity_data(date=date)
del data[0]
if date is None:
date = datetime.datetime.now().date()
data = stocks_csv_to_json(data)
for stock in data:
stock['date'] = date
@ -143,7 +146,7 @@ def stocks_csv_to_json(data):
return stocks
def verify_date(date, ret_message) -> Tuple[datetime.datetime, str]:
def verify_date(date: str, ret_message: str) -> Tuple[datetime.datetime, str]:
"""Verify current date.
Check current date and time and return the appropriate date. Also take care
@ -171,7 +174,8 @@ def verify_date(date, ret_message) -> Tuple[datetime.datetime, str]:
ret_message = "Markets are closed on weekends. Returning data for Friday."
req_datetime -= datetime.timedelta(days=day_num-4) # change req to Friday
# Check for day
if req_datetime.date() == curr_datetime.date() and curr_datetime < next_publish_time:
if (req_datetime.date() == curr_datetime.date()
and curr_datetime < next_publish_time):
ret_message = "Today's data not yet published, returning yesterday's data."
req_datetime -= datetime.timedelta(days=1)
return req_datetime, ret_message