zfin/src/analytics/reconcile.zig

40 lines
2.1 KiB
Zig

//! Portfolio-vs-brokerage reconciliation: pure compute lifted out of
//! the `audit` command so it is unit-testable and reusable (finrev
//! consumes it too). The ANSI renderers stay in `commands/audit/`.
//!
//! - `common` broker-agnostic comparison engine (compareAccounts,
//! cdLotAllowance, findAbsentAccounts, ...)
//! - `schwab` Schwab positions CSV + summary reconcilers
//! - `fidelity` Fidelity positions CSV reconciler
//! - `wells_fargo` Wells Fargo positions spreadsheet reconciler
pub const common = @import("reconcile/common.zig");
pub const schwab = @import("reconcile/schwab.zig");
pub const fidelity = @import("reconcile/fidelity.zig");
pub const wells_fargo = @import("reconcile/wells_fargo.zig");
// ── Flat convenience re-exports ──────────────────────────────
pub const value_tolerance = common.value_tolerance;
pub const cash_tolerance = common.cash_tolerance;
pub const AccountValueExpectation = common.AccountValueExpectation;
pub const SymbolComparison = common.SymbolComparison;
pub const AccountComparison = common.AccountComparison;
pub const AbsentAccount = common.AbsentAccount;
pub const cdLotAllowance = common.cdLotAllowance;
pub const accountValueExpectation = common.accountValueExpectation;
pub const compareAccounts = common.compareAccounts;
pub const hasAccountDiscrepancies = common.hasAccountDiscrepancies;
pub const presentNumbers = common.presentNumbers;
pub const findAbsentAccounts = common.findAbsentAccounts;
pub const RatioSuggestion = common.RatioSuggestion;
pub const ratioSuggestions = common.ratioSuggestions;
pub const SchwabAccountComparison = schwab.SchwabAccountComparison;
pub const compareSchwabSummary = schwab.compareSchwabSummary;
pub const reconcileCsv = schwab.reconcileCsv;
pub const reconcileSummary = schwab.reconcileSummary;
pub const hasSchwabDiscrepancies = schwab.hasSchwabDiscrepancies;
pub const summaryRatioSuggestions = schwab.summaryRatioSuggestions;
pub const reconcileFidelity = fidelity.reconcile;
pub const reconcileWellsFargo = wells_fargo.reconcile;