zfin/src/models/dividend.zig

27 lines
743 B
Zig

const Date = @import("date.zig").Date;
pub const DividendType = enum {
regular,
special,
supplemental,
irregular,
unknown,
};
/// A single dividend payment record.
pub const Dividend = struct {
/// Date the stock begins trading without the dividend
ex_date: Date,
/// Date the dividend is paid (may be null if unknown)
pay_date: ?Date = null,
/// Date of record for eligibility
record_date: ?Date = null,
/// Cash amount per share
amount: f64,
/// How many times per year this dividend is expected
frequency: ?u8 = null,
/// Classification of the dividend
distribution_type: DividendType = .unknown,
/// Currency code (e.g., "USD")
currency: ?[]const u8 = null,
};