37 lines
1.4 KiB
Rust
37 lines
1.4 KiB
Rust
// file: kb_lib/src/db/entities/pair_metric.rs
|
|
|
|
//! Pair-metric entity.
|
|
|
|
/// Persisted pair-metric row.
|
|
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize, sqlx::FromRow)]
|
|
pub struct KbPairMetricEntity {
|
|
/// Numeric primary key.
|
|
pub id: i64,
|
|
/// Related pair id.
|
|
pub pair_id: i64,
|
|
/// Optional first observed slot.
|
|
pub first_slot: std::option::Option<i64>,
|
|
/// Optional last observed slot.
|
|
pub last_slot: std::option::Option<i64>,
|
|
/// Optional first observed signature.
|
|
pub first_signature: std::option::Option<std::string::String>,
|
|
/// Optional last observed signature.
|
|
pub last_signature: std::option::Option<std::string::String>,
|
|
/// Total trade count.
|
|
pub trade_count: i64,
|
|
/// Total buy count.
|
|
pub buy_count: i64,
|
|
/// Total sell count.
|
|
pub sell_count: i64,
|
|
/// Optional cumulative raw base volume.
|
|
pub cumulative_base_amount_raw: std::option::Option<std::string::String>,
|
|
/// Optional cumulative raw quote volume.
|
|
pub cumulative_quote_amount_raw: std::option::Option<std::string::String>,
|
|
/// Optional last derived quote-per-base price.
|
|
pub last_price_quote_per_base: std::option::Option<f64>,
|
|
/// Creation timestamp encoded as RFC3339 UTC text.
|
|
pub created_at: std::string::String,
|
|
/// Update timestamp encoded as RFC3339 UTC text.
|
|
pub updated_at: std::string::String,
|
|
}
|