FB-006: period-end force close is hard-wired to the last (thin, untradeable) tick [silent-wrong in practice]
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 56/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- python
- Domain
- backend, fintech-quant
Research direction
Start with engine.py:222-226 and trace how the period’s last date and clock[-1] determine EOD_FORCE fills. Check existing engine tests for period-end close behavior. Done means the engine supports force_close_time="15:15:00" on the period’s last date and the tests cover the resulting fill time.
Written by the indexing model from the issue text.
Description
Severity: silent-wrong in practice · Source: BUGS_FASTBT.md (2026-10-09)
engine.py:222-226 always closes at clock[-1], which is 15:30:59 on expiry day. That bar is thin, and from 2026-08-03 spot is frozen after 15:15 (CAS break), so EOD_FORCE fills there are not tradeable prices. There is no force_close_time, so every multi-day strategy has to code its own expiry-day exit.
Workaround: exit on the expiry date at 15:15 in strategy code, and treat any EOD_FORCE as a bug.
Fix: add an engine force_close_time="15:15:00" applied on the period's last date.
- Dominant language
- Python
- Stars
- 28
- Forks
- 17
- Avg merge
- 8h 50m
- Merged PRs (30d)
- 2
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from uberdeveloper/fastbt
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 48/100
uberdeveloper/fastbt#31 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 52/100
uberdeveloper/fastbt#30 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 48/100
uberdeveloper/fastbt#28 ·
-
FB-008: close_trade mixes price and tick; stale exits are silent (zero-P&L fallback) [silent-wrong]Openbug
Difficulty 3/5 1-2 days Newbie friendliness 70/100
uberdeveloper/fastbt#27 ·
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 55/100
uberdeveloper/fastbt#26 ·
All issues in uberdeveloper/fastbt
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
noontide-co/mainbranch#1211 · 1 comment ·
Maintainers usually reply within 1 day
-
[1.x Bug] run-operation --sql reports success but rolls back writes on transaction-capable adaptersOpentriage
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
dbt-labs/dbt#16784 · 1 comment ·
Maintainers usually reply within 1 day
-
bug needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Maintainers usually reply within 1 day
-
bug settings ui
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
DewaldOosthuizen/py-tray-command-launcher#162 ·
Maintainers usually reply within 1 day
-
run_all sleeps after the final job despite documenting delays between jobsPossibly taken @Gambit-Checkmate claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 74/100