Metadata-Version: 2.2
Name: sys_research
Version: 0.1.0
Summary: Secure research system for quantitative analysis
Home-page: https://github.com/dabiggestpoppa/rose-research-backtester
Author: DaBiggestPoppa
Author-email: dabiggestpoppa@gmail.com
License: MIT
Keywords: quant research security distributed-training
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: Microsoft :: Windows
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Financial and Insurance Industry
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.24.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: fastapi>=0.100.0
Requires-Dist: uvicorn>=0.23.0
Requires-Dist: websockets>=11.0.3
Requires-Dist: aiohttp>=3.8.5
Requires-Dist: cryptography>=41.0.0
Requires-Dist: pyotp>=2.8.0
Requires-Dist: torch>=2.0.0
Requires-Dist: transformers>=4.30.0
Requires-Dist: pytest>=7.4.0
Requires-Dist: pytest-asyncio>=0.21.0
Requires-Dist: watchdog>=3.0.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# MCP Auto-Sync System

## Installation Instructions

1. First install required packages:
```bash
pip install -r requirements.txt
```

2. Configure ports in main.py to use port 3000 for local development
3. Make sure no other processes are using port 3000 before starting

## Deployment on DigitalOcean

1. Create a new DigitalOcean Droplet
2. Configure your domain and SSL certificates
3. Set up environment variables in your deployment environment
4. Deploy using Docker or direct installation

## Running the Project

1. Once deployed, make sure the dependencies from `requirements.txt` are installed
2. Start the project
3. Your app will be available at your configured domain

## System Components

- **Real-Time Git Sync**: Changes saved in Windsurf are automatically committed and pushed
- **Security**: HMAC-SHA256 signed commits using MCP_VAULT secret
- **DigitalOcean Integration**: Direct deployment from GitHub without Docker

## Recent Updates
- Fixed port binding issues by standardizing on port 3000
- Improved Redis connection handling and shutdown process
- Added health check endpoint to monitor Redis connectivity

## Configuration
- **MCP_VAULT**: Required for HMAC-SHA256 signed commits
- **REDIS_URL**: Optional, defaults to "redis://redis-mcp:6380"
- **PORT**: Fixed to 3000 for local development

## Environment Setup

Make sure to set these environment variables in your deployment environment:
1. Set the following environment variables:
   - `REDIS_URL`: Your Redis connection URL (optional)
   - `MCP_VAULT`: Your secure vault key for HMAC-SHA256 signing

## Features

- **FastAPI Backend**: Running on port 3000
- **Real-Time Updates**: WebSocket support for live data
- **Auto-Cleanup**: Automatic cleanup of old results
- **CORS Enabled**: Frontend can connect from any origin
- **Validation Features**:
  - **Walk-Forward Analysis**: Anchored and rolling window validation
  - **Monte Carlo Simulation**: Multiple path generation methods
  - **Validation Metrics**: Sharpe & Sortino ratios, Maximum drawdown, Win rate & profit factor, Ulcer index, Pain ratio, Calmar ratio

## Troubleshooting
- If port 3000 is in use, stop other processes using: `lsof -i :3000`
- Check Redis connectivity using the /health endpoint
- Verify HMAC-SHA256 signatures in commit logs
- If the app doesn't start, check the deployment logs for error messages
- Make sure all required environment variables are set
- Check that port 3000 is properly exposed in the deployment configuration

Last Updated: 2025-02-07
