Conversation
- Implement actual signal generation in ScreenerSignalAdapter - Replace stub with rolling window iteration - Call real screener logic at each bar for point-in-time simulation - Add map_signal helper to convert ScreenerResult to +1/-1/0 - Fix ATR NaN handling bug in BacktestEngine - Add bfill() before fillna(0) to prevent division-by-zero - Eliminates risk of infinite position sizes in early bars - Add comprehensive RiskManager unit tests (100% coverage) - Test stop-loss calculations for long/short positions - Test position sizing with edge cases (zero risk, tight stops) - Test order validation (max positions, max exposure) - Add Download module integration tests - Test successful fetch and retry logic - Test retry exhaustion scenarios - Test batch download pipeline - Fix retry counter bug in DataFetcher - Update backtesting engine to use real signals - Remove isinstance() checks for screener types - Use adapter.compute_signals() uniformly Test Results: 34/34 passing (100%) Coverage: 11% → 28% (RiskManager: 100%, DataFetcher: 91%)
- Rewrote README.md and architecture_documentation.md to reflect current codebase - Optimized Download module to use batch downloading via yfinance (reduces HTTP requests by ~50x) - Added batch fetch support to YFinanceProvider and DataFetcher - Updated tests to mock provider abstraction instead of yf.Ticker - Fixed integration tests for download and pipeline
- Added --strict CLI flag for rigorous trend filtering (Growth > 0.3%, Vol < 0.10, Strong Up only) - Decluttered charts by removing SMA 10/30 and Donchian Mid band - Enabled dynamic columns in PDF reports (Growth, Volatility, Score, etc.)
…-price bias - Updated TrendlineScreener to calculate slope based on percentage change from start of period - Ensures consistent trend angles across all price ranges - Applies to both strict and standard modes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.