Signet Forge 0.1.0
C++20 Parquet library with AI-native extensions
DEMO
Loading...
Searching...
No Matches
signet::forge::MiFID2Reporter Class Reference

MiFID II RTS 24 algorithmic trading compliance report generator. More...

#include <mifid2_reporter.hpp>

Static Public Member Functions

static expected< ComplianceReportgenerate (const std::vector< std::string > &log_files, const ReportOptions &opts={})
 Generate a MiFID II RTS 24 compliance report from decision log files.
 
static std::string csv_header ()
 Get the static CSV column header line (Annex I field order).
 
static std::string record_to_csv_row (const DecisionRecord &rec, const std::string &firm_id="")
 Serialize a single DecisionRecord as a CSV row.
 

Detailed Description

MiFID II RTS 24 algorithmic trading compliance report generator.

Reads DecisionLog Parquet files written by DecisionLogWriter and generates MiFID II RTS 24-compliant reports covering algorithmic trading decisions.

Maps DecisionRecord fields to RTS 24 Annex I fields (1–16) for regulatory submission. Supports JSON, NDJSON, and CSV output formats.

See also
ComplianceStandard::MIFID2_RTS24
DecisionLogWriter

Definition at line 81 of file mifid2_reporter.hpp.

Member Function Documentation

◆ csv_header()

static std::string signet::forge::MiFID2Reporter::csv_header ( )
inlinestatic

Get the static CSV column header line (Annex I field order).

Returns
A CSV header string with trailing newline.

Definition at line 201 of file mifid2_reporter.hpp.

◆ generate()

static expected< ComplianceReport > signet::forge::MiFID2Reporter::generate ( const std::vector< std::string > &  log_files,
const ReportOptions opts = {} 
)
inlinestatic

Generate a MiFID II RTS 24 compliance report from decision log files.

Reads all records from the supplied DecisionLog Parquet files, filters by opts.start_ns / opts.end_ns, optionally verifies hash chains, and serializes the result in the requested format.

Parameters
log_filesPaths to DecisionLog Parquet files.
optsReport options (time window, format, verification).
Returns
The generated ComplianceReport, or an error.

Definition at line 92 of file mifid2_reporter.hpp.

◆ record_to_csv_row()

static std::string signet::forge::MiFID2Reporter::record_to_csv_row ( const DecisionRecord rec,
const std::string &  firm_id = "" 
)
inlinestatic

Serialize a single DecisionRecord as a CSV row.

Useful for streaming output where records are emitted one at a time. Chain fields (chain_seq, chain_hash) are left empty in the output.

Parameters
recThe decision record to serialize.
firm_idFirm identifier for MiFID II field 1 (defaults to strategy_id if empty).
Returns
A CSV row string with trailing newline.

Definition at line 218 of file mifid2_reporter.hpp.


The documentation for this class was generated from the following file: