Skip to content

About

TradeSmart is a web-based trading journal built to solve a problem most trading journaling tools ignore

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

TradeSmart: Intelligent Trading Journal & Performance Analytics System

Python Django PostgreSQL License

TradeSmart is a web-based trading journal built to solve a problem most journaling tools ignore: traders don't underperform because they lack market data they underperform because of psychological patterns like revenge trading, overconfidence, and fear-driven exits. TradeSmart automatically detects these emotional trading patterns directly from trade data and notes, without requiring the trader to self-report anything.

This was my final year project at Bowen University, Iwo (BSc. Computer Science).

Key Features

  • Behaviour Detector flags revenge trading, overconfidence, and fear/hesitation per day using anomaly detection (Isolation Forest) on trade parameters
  • AI Emotional Analysis sentiment scoring of trade notes (VADER) that classifies a trader's mindset (e.g. CALM) alongside each trade
  • Live Trade Monitor a Neural Prediction Engine that assesses open positions in real time and returns GOOD / WARNING / NEUTRAL signals with plain-language explanations
  • Performance Dashboard & Calendar Heatmap daily P&L, win rate, and profit factor at a glance
  • Monthly Reports auto-generated deep-dive reports covering 30+ analytical dimensions: streaks, best/worst assets, time-of-day performance, and a trading personality profile
  • Position Sizing Calculator recommends trade size based on account balance and risk tolerance
  • Strategy Checklist customizable pre-trade rule checklists to reduce impulsive entries
  • Three Data Import Methods broker API sync (SnapTrade OAuth), CSV/file upload, or manual entry
  • Key Performance Indicators profit factor, max drawdown, win rate, and more, computed automatically from trade history

How It Works

Trade data is ingested via broker sync, file upload, or manual entry, then processed with Pandas and NumPy to compute performance metrics. A rule-based behavioural analysis layer combines each trade's numerical attributes with VADER sentiment scoring of the trader's written notes to detect emotional patterns no self-reporting required. For open positions, the live prediction pipeline pulls real-time market data via yfinance and applies SMA/RSI-based analysis to generate live GOOD/WARNING/NEUTRAL signals.

Tech Stack

Component Technology
Backend Python 3.10, Django 4.2
Database PostgreSQL (production) / SQLite (development)
Data Processing Pandas, NumPy
Behavioural Analysis Rule-based logic (Python), Isolation Forest
Sentiment Analysis VADER (vaderSentiment)
Live Market Data yfinance, SMA/RSI computation
Frontend HTML5, CSS3, JavaScript, Chart.js
Broker Integration SnapTrade OAuth API
Testing Django TestCase, unittest.mock

Testing

Validated using Django's automated testing framework across 5 test classes covering authentication, core analytics, data import, live monitoring, and settings management 100% pass rate, 0% faults. The behavioural detection module correctly labelled all 6 tested emotional trade scenarios, and the live prediction engine returned 88% confidence on GOOD signals and 25% on WARNING conditions during live testing.

Getting Started

# Clone the repository
git clone https://github.com/danielTunmise/TRADESMART.git
cd TRADESMART

# Create a virtual environment
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Run migrations
python manage.py migrate

# Start the development server
python manage.py runserver

Requirements

  • Python 3.10+
  • Django 4.2+
  • PostgreSQL 14+ (or SQLite for local development)
  • Pandas, NumPy, Scikit-learn, vaderSentiment, yfinance, Requests

Project Background

This system was developed to close a gap identified in existing trading journal tools: most either passively record trades or focus purely on statistics, without addressing the behavioural/psychological side of trading performance and none offer real-time analytical support for open positions. TradeSmart tackles both.

📄 License

MIT

About

TradeSmart is a web-based trading journal built to solve a problem most trading journaling tools ignore

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages