BennyThadikaran/eod2

Protocol to handle delayed NSE delivery reports

BennyThadikaran opened this issue · 1 comments

In rare cases, NSE may delay updating its delivery reports by a day or more. EOD2 will wait for all reports to update before syncing data. See issue #59 for details.

This is inconvenient as latest EOD data is not available because of a single report.

To remedy this issue and prevent future disruptions, here is the final protocol EOD2 will follow going forward:

  1. If delivery report if unavailable, continue with updating all other data. Empty string will be used in place of Delivery data. (This is interpreted as NAN values in Pandas/Numpy).
  2. Add the date to a pending list.
  3. On every sync, loop over this list and attempt to download and update the delivery report for that date.
  4. If update is successful, remove the date from the pending list.
  5. If delivery report is not updated after 5 days, abort any future attempts. (Thanks to user @rohit1409 for his inputs 👍 )

This feature has been implemented and will be updated on the repo soon. 😺

Awesome, Thanks Benny 👍