#[non_exhaustive]pub struct QuoteSummaryResponse {Show 28 fields
pub symbol: String,
pub price: Option<Price>,
pub summary_detail: Option<SummaryDetail>,
pub financial_data: Option<FinancialData>,
pub default_key_statistics: Option<DefaultKeyStatistics>,
pub asset_profile: Option<AssetProfile>,
pub calendar_events: Option<CalendarEvents>,
pub earnings: Option<Earnings>,
pub earnings_trend: Option<EarningsTrend>,
pub earnings_history: Option<EarningsHistory>,
pub recommendation_trend: Option<RecommendationTrend>,
pub insider_holders: Option<InsiderHolders>,
pub insider_transactions: Option<InsiderTransactions>,
pub institution_ownership: Option<InstitutionOwnership>,
pub fund_ownership: Option<FundOwnership>,
pub major_holders_breakdown: Option<MajorHoldersBreakdown>,
pub net_share_purchase_activity: Option<NetSharePurchaseActivity>,
pub quote_type: Option<QuoteTypeData>,
pub summary_profile: Option<SummaryProfile>,
pub sec_filings: Option<SecFilings>,
pub upgrade_downgrade_history: Option<UpgradeDowngradeHistory>,
pub fund_performance: Option<FundPerformance>,
pub fund_profile: Option<FundProfile>,
pub top_holdings: Option<TopHoldings>,
pub index_trend: Option<IndexTrend>,
pub industry_trend: Option<IndustryTrend>,
pub sector_trend: Option<SectorTrend>,
pub equity_performance: Option<EquityPerformance>,
}Expand description
Response from the quoteSummary endpoint
Deserializes all requested modules once on construction to avoid repeated
JSON parsing on every accessor call. Uses Option<T> for each module since
Yahoo Finance may not return all modules for all symbols.
The return type of QuoteProvider::fetch_quote,
so an implementor populates the modules it can serve and leaves the rest
None. Each field mirrors one Yahoo quoteSummary module.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.symbol: StringThe symbol this response is for
price: Option<Price>Last price, change, and market state.
summary_detail: Option<SummaryDetail>Day range, volume, yield, and valuation summary.
financial_data: Option<FinancialData>Margins, returns, cash flow, and analyst targets.
default_key_statistics: Option<DefaultKeyStatistics>Shares outstanding, float, beta, and per-share statistics.
asset_profile: Option<AssetProfile>Company address, sector, industry, and officers.
calendar_events: Option<CalendarEvents>Upcoming earnings and dividend dates.
earnings: Option<Earnings>Quarterly and annual earnings history with estimates.
earnings_trend: Option<EarningsTrend>Analyst estimate trend by period.
earnings_history: Option<EarningsHistory>Reported versus estimated EPS per quarter.
recommendation_trend: Option<RecommendationTrend>Analyst buy, hold, and sell counts over time.
insider_holders: Option<InsiderHolders>Insiders and their reported positions.
insider_transactions: Option<InsiderTransactions>Recent insider buys and sells.
institution_ownership: Option<InstitutionOwnership>Institutional holders and position sizes.
fund_ownership: Option<FundOwnership>Fund holders and position sizes.
major_holders_breakdown: Option<MajorHoldersBreakdown>Insider and institutional ownership percentages.
Net insider share purchase totals.
quote_type: Option<QuoteTypeData>Instrument type, exchange, and naming metadata.
summary_profile: Option<SummaryProfile>Business description and contact details.
sec_filings: Option<SecFilings>Recent SEC filings with links.
upgrade_downgrade_history: Option<UpgradeDowngradeHistory>Analyst rating changes over time.
fund_performance: Option<FundPerformance>Trailing and annual returns for a fund.
fund_profile: Option<FundProfile>Fund category, family, and fee structure.
top_holdings: Option<TopHoldings>A fund’s largest positions and sector weights.
index_trend: Option<IndexTrend>Index-level growth and valuation estimates.
industry_trend: Option<IndustryTrend>Industry-level growth and valuation estimates.
sector_trend: Option<SectorTrend>Sector-level growth and valuation estimates.
equity_performance: Option<EquityPerformance>Performance of the instrument against its peers.
Trait Implementations§
Source§impl Clone for QuoteSummaryResponse
impl Clone for QuoteSummaryResponse
Source§fn clone(&self) -> QuoteSummaryResponse
fn clone(&self) -> QuoteSummaryResponse
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for QuoteSummaryResponse
impl Debug for QuoteSummaryResponse
Source§impl Default for QuoteSummaryResponse
impl Default for QuoteSummaryResponse
Source§fn default() -> QuoteSummaryResponse
fn default() -> QuoteSummaryResponse
Auto Trait Implementations§
impl Freeze for QuoteSummaryResponse
impl RefUnwindSafe for QuoteSummaryResponse
impl Send for QuoteSummaryResponse
impl Sync for QuoteSummaryResponse
impl Unpin for QuoteSummaryResponse
impl UnsafeUnpin for QuoteSummaryResponse
impl UnwindSafe for QuoteSummaryResponse
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more