use anyhow::Result;
use lazy_static::lazy_static;
use market_data::{MarketClient, Massive};
use std::env::var;
lazy_static! {
static ref TOKEN: String =
var("Massive_TOKEN").expect("Massive_TOKEN env variable is required");
}
#[tokio::main]
async fn main() -> Result<()> {
let site = Massive::new(TOKEN.to_string());
let client = MarketClient::new(site);
let request = client
.site
.daily_series("GOOGL", "2026-01-01", "2026-02-15", 5000);
let data = client.fetch(request).await?;
let enhanced_data = data
.enhance_data()
.with_sma(10)
.with_ema(20)
.with_rsi(14)
.with_macd(12, 26, 9)
.calculate();
println!("{}", enhanced_data);
Ok(())
}