Posts

Showing posts from May 3, 2026

I Built a BFIU-Compliant AML Detection System in Python (Here's Why the Kaggle Approach Doesn't Work

I Built a BFIU-Compliant AML Detection System in Python (Here's Why the Kaggle Approach Doesn't Work)

Most AML tutorials end with a confusion matrix and a 99% accuracy score. Here's why that doesn't work — and what I built instead. I've been working in fintech compliance data for a while. The one thing I kept noticing: every "fraud detection project" on GitHub or Kaggle uses the same dataset — the UCI credit card fraud dataset from 2013. It has 284,000 rows, 30 features labeled V1-V28, and approximately zero explanatory value for anyone who wants to understand how financial crime actually works. So I built something different. The problem with the standard approach Real transaction monitoring engines don't work like Kaggle competitions. They don't take a CSV, train a model, and output a probability score. They work like this: A rule engine runs first — deterministic, auditable, regulatory-cited rules that generate alerts Those alerts get scored and triaged by risk tier An ML layer reduces false positives among the high-risk alerts ...

How I Used IsolationForest to Detect Anomalies in Nagad Transactions

Image
Photo by Mohamed Nohassi on Unsplash Last quarter, while reviewing a batch of 80,000 MFS transactions from Nagad, I noticed that about 2% of the transactions exceeded the BDT 100,000 threshold. When I was analyzing these high-value transactions, I realized that most of them were legitimate business payments. However, a few transactions seemed suspicious, with no clear pattern or connection to known customers. The Core Problem In my experience, most AML analysts focus on detecting known patterns of money laundering, such as structuring or smurfing. But what about unknown patterns? That's where anomaly detection comes in. I've found that many practitioners miss the importance of identifying unusual transactions that don't fit any known pattern. Short and sweet: anomaly detection is key. It helps us identify transactions that are unlikely to be legitimate, even if they don't match any known money laundering pattern. Technical Breakdown To detect anomalies in Nagad transac...