pub struct MarketPerformance { /* private fields */ }Expand description
Market Performance API endpoints
Implementations§
Source§impl MarketPerformance
impl MarketPerformance
Sourcepub async fn get_sector_performance(&self) -> Result<Vec<SectorPerformance>>
pub async fn get_sector_performance(&self) -> Result<Vec<SectorPerformance>>
Get current sector performance
Returns the current day’s performance for all market sectors.
§Example
let client = FmpClient::new()?;
let sectors = client.market_performance().get_sector_performance().await?;
for sector in sectors {
println!("{}: {}", sector.sector, sector.changes_percentage.unwrap_or_default());
}Sourcepub async fn get_sectors_historical(
&self,
limit: Option<u32>,
) -> Result<Vec<SectorHistorical>>
pub async fn get_sectors_historical( &self, limit: Option<u32>, ) -> Result<Vec<SectorHistorical>>
Get historical sector performance
Returns historical performance data for all sectors over time.
§Arguments
limit- Maximum number of records to return (optional)
§Example
let client = FmpClient::new()?;
let history = client.market_performance().get_sectors_historical(Some(30)).await?;
for record in history.iter().take(5) {
println!("{}: Tech {:.2}%, Healthcare {:.2}%",
record.date,
record.technology_changes_percentage.unwrap_or(0.0),
record.healthcare_changes_percentage.unwrap_or(0.0));
}Sourcepub async fn get_market_hours(&self) -> Result<Vec<MarketHours>>
pub async fn get_market_hours(&self) -> Result<Vec<MarketHours>>
Get market hours for exchanges
Returns trading hours, holidays, and current market status.
§Example
let client = FmpClient::new()?;
let hours = client.market_performance().get_market_hours().await?;
for market in hours {
if let Some(name) = &market.stock_exchange_name {
println!("Exchange: {}", name);
println!("Is Open: {}", market.is_the_stock_market_open.unwrap_or(false));
}
}Sourcepub async fn get_gainers(&self) -> Result<Vec<StockMover>>
pub async fn get_gainers(&self) -> Result<Vec<StockMover>>
Get stock market gainers
Returns the top gaining stocks for the current trading day.
§Example
let client = FmpClient::new()?;
let gainers = client.market_performance().get_gainers().await?;
for stock in gainers.iter().take(10) {
println!("{} ({}): +{:.2}% at ${:.2}",
stock.name.as_deref().unwrap_or(""),
stock.symbol,
stock.changes_percentage.unwrap_or(0.0),
stock.price.unwrap_or(0.0));
}Sourcepub async fn get_losers(&self) -> Result<Vec<StockMover>>
pub async fn get_losers(&self) -> Result<Vec<StockMover>>
Get stock market losers
Returns the top losing stocks for the current trading day.
§Example
let client = FmpClient::new()?;
let losers = client.market_performance().get_losers().await?;
for stock in losers.iter().take(10) {
println!("{} ({}): {:.2}% at ${:.2}",
stock.name.as_deref().unwrap_or(""),
stock.symbol,
stock.changes_percentage.unwrap_or(0.0),
stock.price.unwrap_or(0.0));
}Sourcepub async fn get_most_active(&self) -> Result<Vec<StockMover>>
pub async fn get_most_active(&self) -> Result<Vec<StockMover>>
Get most active stocks
Returns the most actively traded stocks by volume.
§Example
let client = FmpClient::new()?;
let active = client.market_performance().get_most_active().await?;
for stock in active.iter().take(10) {
println!("{} ({}): {} shares at ${:.2}",
stock.name.as_deref().unwrap_or(""),
stock.symbol,
stock.volume.unwrap_or(0),
stock.price.unwrap_or(0.0));
}Sourcepub async fn get_pre_post_market(&self) -> Result<Vec<PrePostMarket>>
pub async fn get_pre_post_market(&self) -> Result<Vec<PrePostMarket>>
Get pre-market and after-hours trading data
Returns pre-market and after-hours price information for active stocks.
§Example
let client = FmpClient::new()?;
let extended = client.market_performance().get_pre_post_market().await?;
for stock in extended.iter().take(10) {
println!("{}: Pre ${:.2} ({:+.2}%), After ${:.2} ({:+.2}%)",
stock.symbol,
stock.pre_market_price.unwrap_or(0.0),
stock.pre_market_change_percentage.unwrap_or(0.0),
stock.after_hours_price.unwrap_or(0.0),
stock.after_hours_change_percentage.unwrap_or(0.0));
}Auto Trait Implementations§
impl Freeze for MarketPerformance
impl !RefUnwindSafe for MarketPerformance
impl Send for MarketPerformance
impl Sync for MarketPerformance
impl Unpin for MarketPerformance
impl !UnwindSafe for MarketPerformance
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
Mutably borrows from an owned value. Read more