240 lines
6.2 KiB
Python
Raw Permalink Normal View History

"""
Chart Layers Package
This package contains the modular layer system for building complex charts
with multiple indicators, signals, and subplots.
Components:
- BaseChartLayer: Abstract base class for all layers
- CandlestickLayer: OHLC price chart layer
- VolumeLayer: Volume subplot layer
- LayerManager: Orchestrates multiple layers
- SMALayer: Simple Moving Average indicator overlay
- EMALayer: Exponential Moving Average indicator overlay
- BollingerBandsLayer: Bollinger Bands overlay with fill area
- RSILayer: RSI oscillator subplot
- MACDLayer: MACD lines and histogram subplot
- TradingSignalLayer: Buy/sell/hold signal markers
- TradeExecutionLayer: Trade entry/exit point visualization
- Bot Integration: Automated data fetching and bot-integrated layers
"""
from .base import (
BaseChartLayer,
CandlestickLayer,
VolumeLayer,
LayerManager,
LayerConfig
)
from .indicators import (
BaseIndicatorLayer,
IndicatorLayerConfig,
SMALayer,
EMALayer,
BollingerBandsLayer,
create_sma_layer,
create_ema_layer,
create_bollinger_bands_layer,
create_common_ma_layers,
create_common_overlay_indicators
)
from .subplots import (
BaseSubplotLayer,
SubplotLayerConfig,
RSILayer,
MACDLayer,
create_rsi_layer,
create_macd_layer,
create_common_subplot_indicators
)
from .signals import (
BaseSignalLayer,
SignalLayerConfig,
TradingSignalLayer,
BaseTradeLayer,
TradeLayerConfig,
TradeExecutionLayer,
BaseSupportResistanceLayer,
SupportResistanceLayerConfig,
SupportResistanceLayer,
CustomStrategySignalInterface,
BaseCustomStrategyLayer,
CustomStrategySignalConfig,
CustomStrategySignalLayer,
SignalStyleConfig,
SignalStyleManager,
EnhancedSignalLayer,
create_trading_signal_layer,
create_buy_signals_only_layer,
create_sell_signals_only_layer,
create_high_confidence_signals_layer,
create_trade_execution_layer,
create_profitable_trades_only_layer,
create_losing_trades_only_layer,
create_support_resistance_layer,
create_support_only_layer,
create_resistance_only_layer,
create_trend_lines_layer,
create_key_levels_layer,
create_custom_strategy_layer,
create_pairs_trading_layer,
create_momentum_strategy_layer,
create_arbitrage_layer,
create_mean_reversion_layer,
create_breakout_strategy_layer,
create_enhanced_signal_layer,
create_professional_signal_layer,
create_colorblind_friendly_signal_layer,
create_dark_theme_signal_layer,
create_minimal_signal_layer
)
from .bot_integration import (
BotFilterConfig,
BotDataService,
BotSignalLayerIntegration,
bot_data_service,
bot_integration,
get_active_bot_signals,
get_active_bot_trades,
get_bot_signals_by_strategy,
get_bot_performance_summary
)
from .bot_enhanced_layers import (
BotSignalLayerConfig,
BotTradeLayerConfig,
BotIntegratedSignalLayer,
BotIntegratedTradeLayer,
BotMultiLayerIntegration,
bot_multi_layer,
create_bot_signal_layer,
create_bot_trade_layer,
create_complete_bot_layers
)
__all__ = [
# Base layers
'BaseChartLayer',
'CandlestickLayer',
'VolumeLayer',
'LayerManager',
'LayerConfig',
# Indicator layers (overlays)
'BaseIndicatorLayer',
'IndicatorLayerConfig',
'SMALayer',
'EMALayer',
'BollingerBandsLayer',
# Subplot layers
'BaseSubplotLayer',
'SubplotLayerConfig',
'RSILayer',
'MACDLayer',
# Signal layers
'BaseSignalLayer',
'SignalLayerConfig',
'TradingSignalLayer',
# Trade layers
'BaseTradeLayer',
'TradeLayerConfig',
'TradeExecutionLayer',
# Support/Resistance layers
'BaseSupportResistanceLayer',
'SupportResistanceLayerConfig',
'SupportResistanceLayer',
# Custom Strategy layers
'CustomStrategySignalInterface',
'BaseCustomStrategyLayer',
'CustomStrategySignalConfig',
'CustomStrategySignalLayer',
# Signal Styling
'SignalStyleConfig',
'SignalStyleManager',
'EnhancedSignalLayer',
# Bot Integration
'BotFilterConfig',
'BotDataService',
'BotSignalLayerIntegration',
'bot_data_service',
'bot_integration',
# Bot Enhanced Layers
'BotSignalLayerConfig',
'BotTradeLayerConfig',
'BotIntegratedSignalLayer',
'BotIntegratedTradeLayer',
'BotMultiLayerIntegration',
'bot_multi_layer',
# Convenience functions
'create_sma_layer',
'create_ema_layer',
'create_bollinger_bands_layer',
'create_common_ma_layers',
'create_common_overlay_indicators',
'create_rsi_layer',
'create_macd_layer',
'create_common_subplot_indicators',
'create_trading_signal_layer',
'create_buy_signals_only_layer',
'create_sell_signals_only_layer',
'create_high_confidence_signals_layer',
'create_trade_execution_layer',
'create_profitable_trades_only_layer',
'create_losing_trades_only_layer',
'create_support_resistance_layer',
'create_support_only_layer',
'create_resistance_only_layer',
'create_trend_lines_layer',
'create_key_levels_layer',
'create_custom_strategy_layer',
'create_pairs_trading_layer',
'create_momentum_strategy_layer',
'create_arbitrage_layer',
'create_mean_reversion_layer',
'create_breakout_strategy_layer',
'create_enhanced_signal_layer',
'create_professional_signal_layer',
'create_colorblind_friendly_signal_layer',
'create_dark_theme_signal_layer',
'create_minimal_signal_layer',
'get_active_bot_signals',
'get_active_bot_trades',
'get_bot_signals_by_strategy',
'get_bot_performance_summary',
'create_bot_signal_layer',
'create_bot_trade_layer',
'create_complete_bot_layers'
]
__version__ = "0.1.0"
# Package metadata
# __version__ = "0.1.0"
# __package_name__ = "layers"
# Layers will be imported once they are created
# from .base import BaseCandlestickLayer
# from .indicators import IndicatorLayer
# from .subplots import SubplotManager
# from .signals import SignalLayer
# Public exports (will be populated as layers are implemented)
# __all__ = [
# # "BaseCandlestickLayer",
# # "IndicatorLayer",
# # "SubplotManager",
# # "SignalLayer"
# ]