RETURN_TO_ROOT
★ 3-TIER RELATIONAL ARCHITECTURE
> DATABASE ENGINE // MYSQL & POSTGRESQL SUITE

Financial Risk Suite

Transaction Security, Credit Risk Scoring & Real-Time Portfolio Analytics

> System_Overview

Financial Data Analysis & Risk Management System is an enterprise-grade portfolio of three specialized relational database systems designed to tackle critical challenges in fintech: payment fraud anomaly detection, automated credit underwriting, and time-series portfolio valuation.

Across all three subsystems, schemas were strictly 3NF normalized, optimized with compound B-Tree indices, and tested against benchmark datasets exceeding 10,000 records to guarantee sub-200ms query latency.

> Three_Engineered_Subsystems

1. Bank Transaction Anomaly Analyzer

FRAUD MONITORING

Normalized schemas for high-frequency transactional data. Leveraged multi-table JOIN, window functions (ROW_NUMBER(), LAG()), and standard deviation aggregates to detect velocity bursts and geo-velocity fraud anomalies in real time.

2. Loan Risk Assessment Scoring Engine

CREDIT UNDERWRITING

Built an automated underwriting scoring matrix directly in SQL using weighted CASE statements, debt-to-income (DTI) calculations, and applicant credit tier stratification. Reduced simulated default rates by 22%.

3. Real-Time Portfolio Tracker

TIME-SERIES ASSETS

Designed dynamic database VIEW entities modeling time-series equities data, calculating daily return percentages, sector exposure concentrations, and realized vs unrealized profit/loss across multi-currency assets.

> SQL_Query: Risk Assessment Engine

-- Automated Loan Risk Scoring & Approval Matrix (MySQL)
SELECT 
    applicant_id,
    credit_score,
    (monthly_debt / monthly_income) AS dti_ratio,
    CASE 
        WHEN credit_score >= 750 AND (monthly_debt / monthly_income) < 0.35 THEN 'TIER_1_AUTO_APPROVE'
        WHEN credit_score >= 670 AND (monthly_debt / monthly_income) < 0.45 THEN 'TIER_2_MANUAL_REVIEW'
        ELSE 'TIER_3_HIGH_RISK_REJECT'
    END AS risk_classification,
    ROUND((loan_amount * (interest_rate / 1200)) / (1 - POWER(1 + (interest_rate / 1200), -term_months)), 2) AS monthly_payment
FROM loan_applicants
WHERE application_status = 'PENDING'
ORDER BY credit_score DESC;

> Key_Achievements_&_Metrics

<200ms
Query Response Time over 10k+ Records
-22%
Simulated Loan Default Rate Reduction
3NF
Strictly Normalized Relational Schemas

> Project_Meta

ROLE: Database Architect & SQL Analyst
RDBMS: MySQL & PostgreSQL
DATASETS: 10,000+ Time-Series Records
YEAR: 2025
KEY CONCEPTS: Views, Window Functions, 3NF, B-Trees
> PREV_PROJECT
Colour Extractor
> FIRST_PROJECT
Block Blocker