greed 0.5.2

A rust tool to automate trades 📈
Documentation
pub mod convert_bar_request;
mod convert_time_frame;

use crate::greed_error_from;
use crate::platform::bar::Bar;
use crate::platform::bars::Bars;
use apca::RequestError;

impl From<apca::data::v2::bars::Bar> for Bar {
    fn from(value: apca::data::v2::bars::Bar) -> Self {
        Self {
            timestamp: value.time,
            open: value.open.to_f64().unwrap_or(0.0),
            close: value.close.to_f64().unwrap_or(0.0),
            high: value.high.to_f64().unwrap_or(0.0),
            low: value.low.to_f64().unwrap(),
            volume: value.volume,
        }
    }
}

impl From<apca::data::v2::bars::Bars> for Bars {
    fn from(value: apca::data::v2::bars::Bars) -> Self {
        Self {
            symbol: value.symbol.parse().unwrap(),
            bars: value.bars.into_iter().map(|b| b.into()).collect(),
        }
    }
}

greed_error_from!(RequestError<apca::data::v2::bars::ListError>);