Back to Catalog
Finance Mifid Compliance icon

Finance Mifid Compliance

Verified

by Dryade

enterprise industry-verticals
0.0 (0 ratings) 0 downloads

Description

MiFID II regulatory compliance checker for investment firms: suitability assessments, best execution analysis, transaction reporting validation, and cost disclosure verification

Screenshots

Details

Finance MiFID II Compliance Checker

Tier: Enterprise | Type: Tool | Category: Finance | Version: 1.0.0

Automated MiFID II compliance validation for investment firms. Checks client suitability assessments, best execution obligations, transaction reporting completeness, and cost disclosure requirements against EU regulatory standards.


1. Overview

Plugin Name: Finance MiFID II Compliance Checker Slug: finance-mifid-compliance Required Tier: enterprise Plugin Type: tool (REST API endpoints) Category: Finance / Regulatory Compliance Author: Dryade License: DSUL

What It Does

Validates investment firm operations against MiFID II (Markets in Financial Instruments Directive) requirements. Performs automated compliance checks on suitability assessments, best execution policies, transaction reports, and cost disclosures, identifying gaps and generating remediation recommendations.

Key Capabilities

  • Client suitability assessment validation (Article 25)
  • Best execution analysis with RTS 27/28 scoring
  • Transaction reporting field validation (MiFIR)
  • Ex-ante and ex-post cost disclosure verification (Article 24)
  • Compliance gap identification with remediation priority

2. User Stories

Primary User Stories

US-1: Pre-Trade Suitability Check

As a compliance officer, I want to validate that proposed instruments match client risk profiles so that I can prevent unsuitable recommendations.

Acceptance Criteria:

  • [ ] System flags derivatives for conservative clients
  • [ ] System flags complex instruments for retail clients
  • [ ] Findings include specific MiFID II article references

US-2: Quarterly Best Execution Review

As a head of trading, I want to analyze execution venue performance so that I can demonstrate best execution compliance.

Acceptance Criteria:

  • [ ] Venue rankings by execution quality metrics
  • [ ] Concentration risk warnings
  • [ ] RTS 28 compliance score

Edge Cases

  • Missing client data: Returns findings with documentation category warnings
  • Unknown instrument types: Treated as complex (conservative approach)

3. Architecture

Component Diagram

+------------------+     +------------------+     +------------------+
|   Plugin Router  | --> |  Compliance Rules | --> |  Data Provider   |
|  /finance-mifid  |     |  routes.py        |     |  (mock / real)   |
+------------------+     +------------------+     +------------------+
                                |
                          +-----v------+
                          |  Demo Data |
                          |  data/*.json|
                          +------------+

Components

| Component | File | Responsibility | |-----------|------|----------------| | Router | routes.py | API endpoints, request validation | | Plugin | plugin.py | Lifecycle, config, data loading | | Data | data/ | Demo compliance datasets |

Dependencies

  • Internal: core.plugins.PluginProtocol, core.plugin_config_store.PluginConfigStore
  • External: None (all rules embedded)
  • Plugin: None

4. API Spec / Agent Capabilities

REST Endpoints

| Method | Path | Description | Auth | |--------|------|-------------|------| | POST | /check-suitability | Validate client suitability assessment | Yes | | POST | /analyze-best-execution | Analyze best execution obligations | Yes | | POST | /validate-transaction-report | Validate transaction report fields | Yes | | POST | /verify-cost-disclosure | Verify cost disclosure completeness | Yes | | GET | /status | Health check | No |

Request/Response Examples

Check Suitability

// Request
{
    "client_id": "CLT-001",
    "risk_profile": "conservative",
    "investment_objectives": ["preservation"],
    "knowledge_level": "retail",
    "proposed_instruments": ["derivative"]
}

// Response { "success": true, "client_id": "CLT-001", "compliant": false, "score": 0.55, "findings": [ { "rule_id": "MIFID-SUIT-001", "severity": "critical", "category": "suitability", "description": "Derivative instruments proposed for conservative risk profile client", "remediation": "Review instrument selection per Article 25(2)" } ] }


5. Data Flow

Processing Pipeline

1. User request arrives at plugin router
2. Request validated against Pydantic models
3. Mock compliance rules applied to input data
4. Findings generated with severity and remediation
5. Structured response returned with compliance score

Data Sources

| Source | Type | Format | Update Frequency | |--------|------|--------|-----------------| | Suitability rules | embedded | Python | Per release | | Demo assessments | mock | JSON | Static |

Demo Data Description

The data/ directory contains:

  • sample_suitability_assessment.json: Client risk profiling with instrument checks (1 assessment)
  • sample_best_execution_report.json: Venue analysis with RTS 28 scoring (5 venues)
  • sample_transaction_report.json: MiFIR transaction records (4 transactions)
  • sample_cost_disclosure.json: Ex-ante cost breakdown (6 categories)
  • sample_compliance_gaps.json: Full MiFID II audit gap analysis (5 categories)

Total: 5 demo files covering all MiFID II compliance domains.


6. Security Considerations

Data Handling

  • PII: Yes - Client IDs, LEI codes, advisor IDs in transaction data
  • Encryption: Plugin does not store data; relies on core encryption
  • Data Retention: No persistent storage; all data is request-scoped

External API Keys

| Key | Environment Variable | Required | Purpose | |-----|---------------------|----------|---------| | None | N/A | No | No external APIs in mock mode |

Isolation

  • Plugin runs in sandboxed context via core plugin loader
  • No direct database access -- uses core API only
  • All compliance rules are stateless and deterministic

Threat Model

  • Malformed input: Pydantic validation rejects invalid requests
  • Rule bypass: All checks are server-side, no client-side validation

7. Test Plan

Test Classes

| Class | Tests | Coverage Target | |-------|-------|----------------| | TestPluginAttributes | Manifest consistency | 100% manifest fields | | TestPluginRouter | Endpoint mounting, responses | All 5 routes | | TestPluginConfig | Config schema, mock/real toggle | Config validation | | TestDemoData | Data presence, loadability | All 5 data files | | TestMarketplace | Marketplace metadata | Slug, category, fields |

Running Tests

cd dryade-plugins
python -m pytest enterprise/finance_mifid_compliance/tests/ -x -v --tb=short

Coverage Target

  • Minimum: 80% line coverage
  • Critical paths: 100% (suitability rules, field validation)

8. Deployment Notes

Requirements

No additional Python packages required beyond core dependencies.

Environment Variables

| Variable | Required | Default | Description | |----------|----------|---------|-------------| | None | No | N/A | No environment variables needed |

Configuration

Default plugin configuration (set via plugin settings UI or API):

{
    "data_source": "mock"
}

Compatibility

  • Min Dryade Version: 1.0.0
  • Python: >=3.11
  • Notes: All compliance rules embedded; no external API dependencies

9. User Guide

Getting Started

  1. Ensure your Dryade instance has an enterprise tier license
  2. Install the plugin via the marketplace or dryade-pm push
  3. Navigate to Plugins > Finance MiFID II Compliance in the workbench
  4. Use the API endpoints to validate compliance data

Common Workflows

Workflow 1: Pre-Trade Suitability Check

  1. Submit client profile and proposed instruments to /check-suitability
  2. Review findings for critical/high severity issues
  3. Address remediation items before proceeding with trade

Workflow 2: Quarterly Best Execution Review

  1. Submit venue execution data to /analyze-best-execution
  2. Review RTS 28 compliance score and venue rankings
  3. Document findings for regulatory reporting

FAQ

Q: Does this replace a compliance management system? A: No. This plugin automates specific MiFID II checks. It complements existing compliance systems by providing automated validation.

Q: Can I customize the compliance rules? A: In mock mode, rules are embedded. In real mode, you can configure rule thresholds via the plugin config API.


10. Screenshots

Screenshots will be added when UI components are available.

| # | Description | Path | |---|-------------|------| | 1 | Suitability check results | screenshots/suitability.png | | 2 | Best execution analysis | screenshots/best-execution.png |


11. Changelog

1.0.0 (2026-03-05)

  • Initial release
  • Suitability assessment validation with 4 compliance rules
  • Best execution analysis with RTS 28 scoring
  • Transaction reporting field validation
  • Cost disclosure completeness checking
  • 5 demo data files covering all MiFID II domains

Future Roadmap

  • [ ] Real-time compliance monitoring integration
  • [ ] Automated RTS 28 report generation
  • [ ] Multi-jurisdiction support (UK MiFID adaptation)
  • [ ] Historical compliance trend analysis
Subscribe & Install

Requires enterprise tier subscription

Plugin Info

Version 1.0.0
Author Dryade
Tier enterprise
Category industry-verticals
Type backend
Downloads 0
Updated Mar 15, 2026

Tags

enterprisefinancemifidcompliance