@@ -9,17 +9,19 @@ A **high-performance Python client** for the TopStepX ProjectX Gateway API, desi
99
1010## 📊 Project Status
1111
12- ** Current Version** : v1.0.2 (Production Ready with Performance Optimizations )
12+ ** Current Version** : v1.0.5 (Enhanced with Complete TA-Lib Overlap Indicators )
1313
1414✅ ** Production Ready Features** :
1515- Complete futures trading API integration with connection pooling
1616- Historical and real-time market data with intelligent caching
17- - Advanced technical indicators (25 +) with computation caching
17+ - Advanced technical indicators (40 +) with computation caching
1818- Institutional-grade orderbook analysis with memory management
1919- Portfolio and risk management tools
2020- ** NEW** : 50-70% performance improvements through optimization
2121- ** NEW** : 60% memory usage reduction with sliding windows
2222- ** NEW** : Sub-second response times for cached operations
23+ - ** NEW** : Complete TA-Lib overlap indicators (17 total) with full compatibility
24+ - ** NEW** : Enhanced indicator discovery and documentation
2325
2426🚀 ** Performance Highlights** :
2527- ** Connection pooling** reduces API overhead by 50-70%
@@ -62,7 +64,7 @@ ProjectX Client (Core API)
6264- ** Historical OHLCV** : Multi-timeframe data with intelligent caching
6365- ** Real-time Streaming** : WebSocket feeds with shared connections
6466- ** Tick-level Data** : High-frequency market data
65- - ** Technical Indicators** : 25 + indicators with computation caching
67+ - ** Technical Indicators** : 40 + indicators with computation caching (Full TA-Lib compatibility)
6668
6769### Advanced Market Microstructure
6870- ** Level 2 Orderbook** : Real-time market depth processing
@@ -177,33 +179,59 @@ portfolio_pnl = position_manager.get_portfolio_pnl()
177179
178180### High-Performance Indicators with Caching
179181``` python
180- from project_x_py.indicators import RSI , SMA , EMA , MACD , BBANDS
182+ from project_x_py.indicators import RSI , SMA , EMA , MACD , BBANDS , KAMA , SAR , T3
181183
182184# Load data once
183185data = client.get_data(" MGC" , days = 60 , interval = 60 )
184186
185187# Chained operations with automatic caching
186188analysis = (
187189 data
188- .pipe(SMA , period = 20 ) # Cached on subsequent calls
189- .pipe(SMA , period = 50 ) # Different parameters = separate cache
190- .pipe(EMA , period = 21 ) # Exponential moving average
191- .pipe(RSI , period = 14 ) # Optimized RSI calculation
190+ .pipe(SMA , period = 20 ) # Simple Moving Average
191+ .pipe(EMA , period = 21 ) # Exponential Moving Average
192+ .pipe(KAMA , period = 30 ) # Kaufman Adaptive Moving Average
193+ .pipe(T3, period = 14 ) # Triple Exponential Moving Average (T3)
194+ .pipe(RSI , period = 14 ) # Relative Strength Index
192195 .pipe(MACD , fast_period = 12 , slow_period = 26 , signal_period = 9 )
193- .pipe(BBANDS , period = 20 , std_dev = 2.0 )
196+ .pipe(BBANDS , period = 20 , std_dev = 2.0 ) # Bollinger Bands
197+ .pipe(SAR , acceleration = 0.02 ) # Parabolic SAR
194198)
195199
200+ # TA-Lib compatible functions
201+ from project_x_py.indicators import calculate_sma, calculate_kama, calculate_sar
202+ sma_data = calculate_sma(data, period = 20 )
203+ kama_data = calculate_kama(data, period = 30 )
204+ sar_data = calculate_sar(data, acceleration = 0.02 )
205+
196206# Performance monitoring
197207rsi_indicator = RSI()
198208print (f " RSI cache size: { len (rsi_indicator._cache)} " )
199209```
200210
201- ### Available Indicators (25 +)
202- - ** Overlap Studies** : SMA, EMA, BBANDS, DEMA, TEMA, WMA, MIDPOINT
203- - ** Momentum** : RSI, MACD, STOCH, WILLR, CCI, ROC, MOM, STOCHRSI
204- - ** Volatility** : ATR, ADX, NATR, TRANGE, ULTOSC
211+ ### Available Indicators (40 +)
212+ - ** Overlap Studies** : SMA, EMA, BBANDS, DEMA, TEMA, WMA, MIDPOINT, MIDPRICE, HT_TRENDLINE, KAMA, MA, MAMA, MAVP, SAR, SAREXT, T3, TRIMA
213+ - ** Momentum** : RSI, MACD, STOCH, WILLR, CCI, ROC, MOM, STOCHRSI, ADX, AROON, APO, CMO, DX, MFI, PPO, TRIX, ULTOSC
214+ - ** Volatility** : ATR, NATR, TRANGE
205215- ** Volume** : OBV, VWAP, AD, ADOSC
206216
217+ ### Indicator Discovery & Documentation
218+ ``` python
219+ from project_x_py.indicators import get_indicator_groups, get_all_indicators, get_indicator_info
220+
221+ # Explore available indicators
222+ groups = get_indicator_groups()
223+ print (" Available groups:" , list (groups.keys()))
224+ print (" Overlap indicators:" , groups[" overlap" ])
225+
226+ # Get all indicators
227+ all_indicators = get_all_indicators()
228+ print (f " Total indicators: { len (all_indicators)} " )
229+
230+ # Get detailed information
231+ print (" KAMA info:" , get_indicator_info(" KAMA" ))
232+ print (" SAR info:" , get_indicator_info(" SAR" ))
233+ ```
234+
207235## 🔄 Real-time Operations
208236
209237### Multi-Timeframe Real-time Data
@@ -546,7 +574,7 @@ We welcome contributions! Please follow these guidelines:
546574- [x] ** High-Performance Architecture** - Connection pooling, caching, memory management
547575- [x] ** Core Trading API** - Complete order management with optimization
548576- [x] ** Advanced Market Data** - Real-time streams with intelligent caching
549- - [x] ** Technical Indicators** - 25 + indicators with computation caching
577+ - [x] ** Technical Indicators** - 40 + indicators with computation caching (Full TA-Lib compatibility)
550578- [x] ** Market Microstructure** - Level 2 orderbook with memory management
551579- [x] ** Performance Monitoring** - Built-in metrics and health tracking
552580- [x] ** Production-Ready** - Enterprise-grade reliability and performance
@@ -563,6 +591,35 @@ We welcome contributions! Please follow these guidelines:
563591- [ ] ** Custom Indicators** - User-defined technical analysis tools
564592- [ ] ** Mobile Support** - iOS/Android companion applications
565593
594+ ## 📝 Changelog
595+
596+ ### Version 1.0.5 (Latest)
597+ ** 🎯 Complete TA-Lib Overlap Indicators**
598+ - ✅ ** New Overlap Indicators (10 added)** : HT_TRENDLINE, KAMA, MA, MAMA, MAVP, MIDPRICE, SAR, SAREXT, T3, TRIMA
599+ - ✅ ** Enhanced WMA** : Fixed Weighted Moving Average implementation
600+ - ✅ ** Full TA-Lib Compatibility** : All overlap indicators now match TA-Lib signatures
601+ - ✅ ** Indicator Discovery** : Helper functions for exploring available indicators
602+ - ✅ ** Comprehensive Documentation** : Detailed descriptions for all indicators
603+ - ✅ ** Total Indicators** : Now 40+ indicators across all categories
604+
605+ ** New Indicators Details:**
606+ - ** KAMA** : Kaufman Adaptive Moving Average - adapts to market volatility
607+ - ** SAR/SAREXT** : Parabolic SAR with standard and extended parameters
608+ - ** T3** : Triple Exponential Moving Average with volume factor
609+ - ** MAMA** : MESA Adaptive Moving Average with fast/slow limits
610+ - ** HT_TRENDLINE** : Hilbert Transform Instantaneous Trendline
611+ - ** TRIMA** : Triangular Moving Average with double smoothing
612+ - ** MIDPRICE** : Midpoint Price using high/low ranges
613+ - ** MA** : Generic Moving Average with selectable types
614+ - ** MAVP** : Moving Average with Variable Period support
615+
616+ ### Version 1.0.2-1.0.4
617+ ** 🚀 Performance & Reliability**
618+ - ✅ Connection pooling and intelligent caching
619+ - ✅ Memory management optimizations
620+ - ✅ Real-time WebSocket improvements
621+ - ✅ Enhanced error handling and retries
622+
566623## 📄 License
567624
568625This project is licensed under the MIT License - see the [ LICENSE] ( LICENSE ) file for details.
0 commit comments