A comprehensive financial analytics dashboard for commodity market analysis with advanced COT (Commitments of Traders) insights.
- Real-time Price Data: Integration with Yahoo Finance for up-to-date commodity prices
- COT Analysis: Advanced analysis of CFTC Commitments of Traders data
- Merchant Position Tracking: Analysis of commercial trader positions and their success rate
- Signal Generation: Automated trading signals based on merchant positioning
- Interactive Visualization: Bloomberg terminal-style interface with candlestick charts and technical indicators
- Multiple Commodities: Support for major commodities including:
- Crude Oil
- Natural Gas
- Gold
- Silver
- Copper
- Corn
- Soybeans
- Wheat
-
Clone the repository:
git clone https://github.com/norandom/commodity-charter.git cd commodity-charter
-
Run with Docker Compose:
docker-compose up --build
-
Access the application at
http://localhost:8501
-
Clone the repository:
git clone https://github.com/norandom/commodity-charter.git cd commodity-charter
-
Create and activate a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Run the application:
streamlit run app.py
Configure commodity-specific signal ranges in cot_signals.csv
:
- Bullish Range: Percentage of short positions indicating bullish signal
- Bearish Range: Percentage of long positions indicating bearish signal
pytest --cov=./ --cov-report=term-missing
flake8 .
For development with hot-reload:
docker-compose up --build
- Frontend: Streamlit web interface
- Data Sources:
- Yahoo Finance API
- CFTC (Commodity Futures Trading Commission)
- Analysis:
- 50-day trend analysis
- Weekly signal generation
- Merchant position correlation
-
Price Analysis
- Candlestick/Line charts
- 50-day moving average
- Volume tracking
-
COT Analysis
- Merchant position percentages
- Weekly signal generation
- Position success rate tracking
-
Open Interest Analysis
- Trend change detection
- Peak analysis
- Correlation with price movements
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Data provided by Yahoo Finance and CFTC
- Inspired by professional trading terminals
- Built with Streamlit and Python