Skip to main content

A rule-based and machine learning-based anomaly detection library for financial transactions.

Project description

Finomaly

PyPI & Source Code

PyPI: https://pypi.org/project/finomaly/

Source Code: https://github.com/Barisaksel/finomaly

Finomaly is a modular, open-source Python library for anomaly detection in financial transactions. It supports both rule-based and machine learning-based detection, multi-language reporting, and professional reporting formats.

Features

  • Rule-based anomaly detection (JSON-configurable, customer-specific rules)
  • Machine learning models: IsolationForest, RandomForest, XGBoost
  • Profile-based analysis (behavioral deviation, unusual time, etc.)
  • Multi-language support (TR/EN) for all messages and reports
  • Centralized message and rule management
  • Professional reporting: Excel, HTML, PDF (with optional charts)
  • Visual analytics: anomaly distribution, scatter plots
  • Easy integration, clean API, and extensible modular structure

Installation

pip install finomaly

Quick Start

import pandas as pd
from finomaly.core.anomaly_system import CorporateAnomalySystem

# Load your data
train_df = pd.read_excel('train.xlsx')
predict_df = pd.read_excel('predict.xlsx')

# Define features and rules
features = ['Tutar', 'Saat']
rules_path = 'rules.json'

# Initialize system
system = CorporateAnomalySystem(features, rules_path=rules_path, ml_method='isolation_forest', lang='en')

# Train model
system.fit('train.xlsx', customer_col='MusteriID', amount_col='Tutar')

# Predict anomalies
output_path = system.predict('predict.xlsx', customer_col='MusteriID', amount_col='Tutar')
result = pd.read_excel(output_path)
print(result.head())

Reporting & Visualization

from finomaly.report.visualizer import Visualizer
from finomaly.report.pdf_reporter import PDFReporter

visualizer = Visualizer()
visualizer.plot_anomaly_distribution(result, amount_col='Tutar', anomaly_col='ML_Anomaly')

pdf_reporter = PDFReporter()
pdf_reporter.generate_pdf_report(result, 'report.pdf')

Project Structure

  • core/ : Rule engine, model management, utilities
  • ml/ : ML models (IsolationForest, RandomForest, XGBoost)
  • profile/ : Profile-based analysis (behavioral, time-based)
  • report/ : Reporting and visualization (Excel, HTML, PDF, charts)

Contributing

Finomaly is open-source and welcomes contributions. Please open issues or pull requests for improvements, bug fixes, or new features.

License

MIT License

Author

Barış

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

finomaly-0.1.4.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

finomaly-0.1.4-py3-none-any.whl (3.5 kB view details)

Uploaded Python 3

File details

Details for the file finomaly-0.1.4.tar.gz.

File metadata

  • Download URL: finomaly-0.1.4.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for finomaly-0.1.4.tar.gz
Algorithm Hash digest
SHA256 c179099699ce1de268561b92fab394782a65aed088dafa6f2d5423a8e27a6651
MD5 f1dcf3e34238aacb8c4fe9dc16abfb54
BLAKE2b-256 059a8fa3c6a96ea66e6f6a7a517ec0dd8a5f2611aa805a0d616d43dc96f9c04b

See more details on using hashes here.

File details

Details for the file finomaly-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: finomaly-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 3.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for finomaly-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 421a2560b47ef6b4797c985e13d9508865b17b04aaf3138b7c610e1117ffecf2
MD5 9b824aeea927c83cde8bddc7a719f249
BLAKE2b-256 44ce40b30247fec146c8509d82405e9e57000c77dbd660b7a71679636109e9ea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page