MCPcopy Create free account
hub / github.com/Open-Quant/openquant / parse_vertical_barriers

Function parse_vertical_barriers

crates/pyopenquant/src/helpers.rs:60–80  ·  view source on GitHub ↗
(
    values: Option<Vec<(String, String)>>,
)

Source from the content-addressed store, hash-verified

58}
59
60pub fn parse_vertical_barriers(
61 values: Option<Vec<(String, String)>>,
62) -> PyResult<Option<Vec<(chrono::NaiveDateTime, chrono::NaiveDateTime)>>> {
63 let Some(values) = values else {
64 return Ok(None);
65 };
66
67 let mut out = Vec::with_capacity(values.len());
68 for (start, end) in values {
69 let start_ts =
70 chrono::NaiveDateTime::parse_from_str(&start, "%Y-%m-%d %H:%M:%S").map_err(|e| {
71 PyValueError::new_err(format!("invalid start barrier datetime '{start}': {e}"))
72 })?;
73 let end_ts =
74 chrono::NaiveDateTime::parse_from_str(&end, "%Y-%m-%d %H:%M:%S").map_err(|e| {
75 PyValueError::new_err(format!("invalid end barrier datetime '{end}': {e}"))
76 })?;
77 out.push((start_ts, end_ts));
78 }
79 Ok(Some(out))
80}
81
82pub fn parse_one_naive_datetime(value: &str) -> PyResult<chrono::NaiveDateTime> {
83 chrono::NaiveDateTime::parse_from_str(value, "%Y-%m-%d %H:%M:%S")

Callers 2

labeling_get_eventsFunction · 0.85
build_labeling_eventsFunction · 0.85

Calls 1

lenMethod · 0.80

Tested by

no test coverage detected