Skip to content

Commit dd6f38a

Browse files
committed
docs: Add release notes for v3.1.8
- Comprehensive release notes with bug fixes and improvements - Migration guide and example usage - Technical details for developers
1 parent 8d338c8 commit dd6f38a

File tree

1 file changed

+79
-0
lines changed

1 file changed

+79
-0
lines changed

RELEASE_NOTES_3.1.8.md

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# Release v3.1.8 - Real-time Data Reliability Improvements
2+
3+
## 🎯 Overview
4+
This release addresses critical issues with real-time data processing for futures contracts, particularly improving support for E-mini futures (NQ, ES) and ensuring consistent bar generation during low-volume trading periods.
5+
6+
## 🐛 Bug Fixes
7+
8+
### Fixed Symbol Resolution for E-mini Futures
9+
- **Issue**: E-mini futures like NQ (which resolves to ENQ) and ES (which resolves to EP) were not receiving real-time updates
10+
- **Root Cause**: Symbol matching logic only checked the original instrument name, not the resolved symbol ID
11+
- **Solution**: Enhanced symbol validation to check both the user-specified instrument and the resolved symbol ID
12+
- **Impact**: All futures contracts now work correctly with real-time data feeds
13+
14+
### Fixed Bar Generation During Low-Volume Periods
15+
- **Issue**: OHLCV bars were only created when new ticks arrived, causing gaps during low-volume periods
16+
- **Root Cause**: No periodic bar creation mechanism for quiet market periods
17+
- **Solution**: Implemented a bar timer task that creates empty bars at proper intervals even without trading activity
18+
- **Impact**: Consistent bar generation across all timeframes regardless of trading volume
19+
20+
## 🔧 Technical Improvements
21+
22+
### Enhanced Error Handling
23+
- Added robust error handling for bar time calculations
24+
- Improved error recovery in bar timer loop to prevent task termination
25+
- Better logging for debugging symbol resolution issues
26+
27+
### Code Quality Improvements
28+
- Fixed asyncio task warnings by properly storing task references
29+
- Improved unit conversion clarity with explicit mapping dictionary
30+
- Optimized DataFrame operations for better performance
31+
32+
## 📊 Affected Components
33+
- `RealtimeDataManager` - Core real-time data processing
34+
- Symbol validation and matching logic
35+
- Bar creation and timing mechanisms
36+
- Event emission system
37+
38+
## 🚀 Migration Guide
39+
No breaking changes. This version is fully backward compatible with v3.1.x.
40+
41+
Simply update to v3.1.8 to benefit from improved real-time data reliability:
42+
```bash
43+
pip install --upgrade project-x-py==3.1.8
44+
```
45+
46+
## 📝 Example Usage
47+
```python
48+
from project_x_py import TradingSuite
49+
50+
# Works with all futures contracts now
51+
suite = await TradingSuite.create(
52+
instrument="NQ", # E-mini Nasdaq now works correctly
53+
timeframes=["1min", "5min"],
54+
initial_days=1
55+
)
56+
57+
# Bars will be created consistently even during low-volume periods
58+
# No gaps in your data during quiet market times
59+
```
60+
61+
## 🎉 Benefits
62+
- **Improved Reliability**: All futures contracts now receive real-time updates correctly
63+
- **Consistent Data**: No more gaps in bar data during low-volume periods
64+
- **Better Trading**: More reliable data for trading strategies, especially for E-mini futures
65+
- **Zero Breaking Changes**: Drop-in replacement for v3.1.7
66+
67+
## 🙏 Acknowledgments
68+
Special thanks to our users for reporting these issues and helping us improve the real-time data system.
69+
70+
## 📚 Documentation
71+
For more details, see:
72+
- [CHANGELOG.md](./CHANGELOG.md) - Complete change history
73+
- [Real-time Data Manager Documentation](./docs/realtime_data_manager.md)
74+
- [Example Scripts](./examples/realtime_data_manager/)
75+
76+
---
77+
*Released: January 2025*
78+
*Version: 3.1.8*
79+
*Status: Production Ready*

0 commit comments

Comments
 (0)