{"id":23419667,"url":"https://github.com/0xnu/day_trading_agents","last_synced_at":"2025-10-30T06:31:24.707Z","repository":{"id":268628774,"uuid":"904334060","full_name":"0xnu/day_trading_agents","owner":"0xnu","description":"ADTA leverages CrewAI and OpenAI's LLM Model for market analysis, signal generation, and risk management—operating strictly during US market hours.","archived":false,"fork":false,"pushed_at":"2024-12-20T14:28:22.000Z","size":61,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-08T01:11:16.232Z","etag":null,"topics":["ai-agents","bollinger-bands","financial-markets","llm","macd","market","market-data","money-market","rsi"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/0xnu.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-16T17:27:45.000Z","updated_at":"2025-01-02T06:58:58.000Z","dependencies_parsed_at":"2024-12-18T00:25:57.232Z","dependency_job_id":"749398d5-8fdc-44f5-93a2-c2630e601e8f","html_url":"https://github.com/0xnu/day_trading_agents","commit_stats":null,"previous_names":["0xnu/day_trading_agents"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xnu%2Fday_trading_agents","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xnu%2Fday_trading_agents/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xnu%2Fday_trading_agents/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xnu%2Fday_trading_agents/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0xnu","download_url":"https://codeload.github.com/0xnu/day_trading_agents/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238937842,"owners_count":19555380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agents","bollinger-bands","financial-markets","llm","macd","market","market-data","money-market","rsi"],"created_at":"2024-12-23T01:19:56.871Z","updated_at":"2025-10-30T06:31:24.362Z","avatar_url":"https://github.com/0xnu.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Automated Day Trading Agents (ADTA)\n\nADTA leverages [CrewAI](https://www.crewai.com/) and OpenAI's [LLM Model](https://platform.openai.com/docs/models/) for market analysis, signal generation, and risk management—operating strictly during US market hours.\n\n\u003e [!WARNING]\n\u003e Disclaimer: ADTA provides simulated trading signals for educational purposes only. Real-time trading behaviour may differ. Not intended for actual investment decisions. Consult a qualified financial advisor.\n\n### Features\n\n* Real-time market data collection and validation (WIP; might evolve in the future)\n* Technical analysis using RSI, MACD, and Bollinger Bands®\n* Risk management and portfolio protection\n* Data processing with Polars DataFrames\n* Market schedule awareness (9:30 AM - 4:00 PM ET, weekdays only)\n* Multi-agent system using CrewAI framework\n\n### Prerequisites\n\n* Python 3.8+\n* OpenAI API key\n* Required Python packages:\n    - crewai\n    - langchain-openai\n    - polars\n    - pandas\n    - numpy\n    - tqdm\n    - icecream\n    - python-dotenv\n    - pydantic\n    - requests\n\n### Installation\n\n1. Clone the repository:\n\n```bash\ngit clone git@github.com:0xnu/day_trading_agents.git\ncd day_trading_agents\n```\n\n2. Install dependencies:\n\n```bash\n## Prerequisites\npython3 -m venv .venv\nsource .venv/bin/activate\nuv pip install -r requirements.txt\npython3 -m pip install --upgrade pip\n\n## When you finish\ndeactivate\n```\n\n3. Set up environment variables:\n\n```bash\ncp .env.example .env\n# Edit .env file with your OpenAI and Alpha Vantage API keys\n```\n\n### Project Structure\n\n```bash\nday_trading_agents/\n├── scripts/\n│   ├── day_trading_agents.py\n│   ├── day_trading_agents_advanced.py\n│   └── market_news_agent_terminal.py\n├── trading_data/\n│   ├── signals/\n│   │   ├── csv/    # Polars DataFrame storage\n│   │   └── json/   # JSON signal storage\n│   └── results/    # Trading session results\n├── requirements.txt\n└── .env\n```\n\n### Debug Mode\n\nEnable debug tracking:\n\n```python\n# In scripts/day_trading_agents.py\nDEBUG = True  # Enables icecream logging\n```\n\nDebug features include:\n\n* Configuration validation\n* Agent initialisation tracking\n* Signal processing progress\n* File storage operations\n* Exception details\n\n### Market Hours\n\nDisable and bypass market hours:\n\n```python\n# In scripts/day_trading_agents_advanced.py\nenforce_market_hours=False\n```\n\n### Usage\n\nRun the trading system:\n\n```bash\npython3 -m scripts.day_trading_agents ## Simple\n\npython3 -m scripts.day_trading_agents_advanced ## Advanced\n\npython3 -m scripts.market_news_agent_terminal ## Market News Terminal\n```\n\nThe system will:\n\n1. Verify market hours (US Eastern Time)\n2. Process each stock with progress tracking\n3. Generate and store trading signals\n4. Track all operations with debug logging when enabled\n\n### Agents (Simple)\n\n#### MarketDataAgent\n\nCollects and validates real-time market data using GPT-4 Turbo, ensuring data quality and completeness.\n\n#### TechnicalAnalysisAgent\n\nAnalyses market data using technical indicators (RSI, MACD, Bollinger Bands®) to generate trading signals with confidence scores.\n\n#### RiskManagementAgent\n\nEvaluates trading signals, manages risk parameters, and provides portfolio protection strategies.\n\n### Data Models\n\n* `Config`: System configuration and parameters\n* `StockInfo`: Basic stock information\n* `MarketData`: Market data validation model\n* `TechnicalSignal`: Technical analysis signals with confidence scores\n\n### Agents (Advanced)\n\n#### MarketDataAgent\n\nHandles real-time market data collection and validation using [Alpha Vantage API](https://www.alphavantage.co/). The agent:\n\n- Retrieves current and historical price data with rate limiting (5 calls/minute)\n- Implements caching to minimise API calls (60-second expiry)\n- Validates data quality and completeness\n- Processes batch requests for multiple stock symbols\n- Stores data in both CSV and JSON formats for analysis\n\n#### TechnicalAnalysisAgent \n\nPerforms technical analysis using multiple indicators:\n\n- RSI (Relative Strength Index)\n  - Calculates momentum with 14-period default\n  - Generates buy signals below 30\n  - Generates sell signals above 70\n\n- MACD (Moving Average Convergence Divergence)\n  - Uses 12/26/9 standard periods\n  - Identifies trend reversals and momentum\n  - Generates signals based on line crossovers\n\n- Bollinger Bands®\n  - Implements 20-period moving average with 2 standard deviations\n  - Generates buy signals at lower band crosses\n  - Generates sell signals at upper band crosses\n\n#### RiskManagementAgent\n\nEvaluates trading signals and manages portfolio risk:\n\n- Analyses confidence scores for each technical signal\n- Monitors signal metadata and technical indicators\n- Provides risk assessments based on market conditions\n- Generates trade recommendations with risk parameters\n- Stores assessment results for future analysis\n\n#### Data Models\n\n##### `Config`: Advanced configuration model with settings:\n\n- API keys for OpenAI and Alpha Vantage (SecretStr for security)\n- Model selection and parameters (temperature, max tokens)\n- File paths for data and signal storage\n- Market hours enforcement flags\n- Stock symbol list with descriptions\n- Debugging and logging settings\n\n##### `StockInfo`: Detailed stock information model containing:\n\n- Trading symbol\n- Company name\n- Market sector\n- Market capitalisation\n- Average trading volume\n\n##### `MarketData`: Market data validation model with temporal features:\n\n- Trading symbol\n- Timestamp with timezone awareness\n- OHLC (Open, High, Low, Close) prices\n- Trading volume\n- Data validation status\n\n##### `TechnicalSignal`: Technical analysis signal model:\n\n- Trading symbol and timestamp\n- Indicator type (RSI, MACD, Bollinger Bands®)\n- Signal value and direction (Buy, Sell, Hold)\n- Confidence score (0-1 range)\n- Technical metadata dictionary containing:\n  - RSI values\n  - MACD line and signal line\n  - Bollinger Band values (upper, middle, lower)\n  - Additional indicator-specific data\n\n##### `SignalStorage`: Storage handler for trading signals:\n- Structured storage in CSV and JSON formats\n- Timestamp-based file organisation\n- Historical signal retrieval\n- Data persistence and backup\n- Signal aggregation and filtering\n\n### Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Commit your changes\n4. Push to the branch\n5. Create a Pull Request\n\n### License\n\nThis project is licensed under the [BSD 3-Clause](LICENSE) License.\n\n### Citation\n\n```tex\n@misc{afoadta2024,\n  author       = {Oketunji, A.F.},\n  title        = {Automated Day Trading Agents (ADTA)},\n  year         = 2024,\n  version      = {2.0.1},\n  publisher    = {Zenodo},\n  doi          = {10.5281/zenodo.14536356},\n  url          = {https://doi.org/10.5281/zenodo.14536356}\n}\n```\n\n### Copyright\n\n(c) 2024 [Finbarrs Oketunji](https://finbarrs.eu). All Rights Reserved.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xnu%2Fday_trading_agents","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0xnu%2Fday_trading_agents","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xnu%2Fday_trading_agents/lists"}