UNPKG

@barfinex/types

Version:

Core TypeScript type definitions and shared interfaces for the Barfinex ecosystem. Provides strongly-typed contracts for modules, services, and plugins.

81 lines 2.4 kB
export type DecisionQualityDimension = 'signalQuality' | 'timingQuality' | 'riskQuality' | 'regimeFitQuality' | 'executionQuality' | 'outcomeQuality'; export interface QualityDimensionBreakdown { signalQuality: number; timingQuality: number; riskQuality: number; regimeFitQuality: number; executionQuality: number; outcomeQuality: number; } export interface DecisionAttribution { strategyId: string; strategyFamily?: string; strategyVersion?: string; detectorSource?: string; triggerSource?: string; experimentTag?: string; experimentCohort?: string; mergedSignalCount?: number; } export interface DecisionOutcome { outcome: 'WIN' | 'LOSS' | 'IGNORE' | 'ERROR'; directionCorrect: boolean; priceAtDecision: number; priceAfterWindow: number; pnlPct: number; maxFavorableExcursionPct: number; maxAdverseExcursionPct: number; edgePersistenceMs: number; } export interface DecisionQualityScore { overallQualityScore: number; dimensions: QualityDimensionBreakdown; } export interface StrategyExperimentState { strategyId: string; status: 'active' | 'suppressed' | 'candidate' | 'disabled'; rankingScore: number; qualityScore: number; suppressionReason?: string; lastEvaluatedAt?: string; sampleSize: number; experimentTag?: string; experimentCohort?: string; } export interface StrategyQualityStats { strategyId: string; strategyFamily?: string; strategyVersion?: string; symbol?: string; totalDecisions: number; wins: number; losses: number; ignores: number; errors: number; winRate: number; avgPnlPct: number; avgOverallQualityScore: number; avgSignalQuality: number; avgTimingQuality: number; avgRiskQuality: number; avgRegimeFitQuality: number; avgExecutionQuality: number; avgOutcomeQuality: number; avgMfePct: number; avgMaePct: number; firstEvaluationTs?: string; latestEvaluationTs?: string; } export interface DecisionEvaluation { decisionId: string; symbol: string; evaluatedAt: number; confidenceAtDecision: number; convictionMultiplier: number; riskMode?: string; marketRegime?: string; attribution: DecisionAttribution; outcome: DecisionOutcome; quality: DecisionQualityScore; } //# sourceMappingURL=decision-quality.interface.d.ts.map