(
timestamps_us: Vec<i64>,
symbols: Vec<String>,
open: Vec<f64>,
high: Vec<f64>,
low: Vec<f64>,
close: Vec<f64>,
volume: Vec<f64>,
adj_close: Vec<f64>,
interval_sec
| 86 | Ok(out_report.into_pyobject(py).unwrap().into_any().unbind()) |
| 87 | } |
| 88 | |
| 89 | #[pyfunction(name = "align_calendar")] |
| 90 | fn data_align_calendar( |
| 91 | timestamps_us: Vec<i64>, |
| 92 | symbols: Vec<String>, |
| 93 | open: Vec<f64>, |
| 94 | high: Vec<f64>, |
| 95 | low: Vec<f64>, |
| 96 | close: Vec<f64>, |
| 97 | volume: Vec<f64>, |
| 98 | adj_close: Vec<f64>, |
| 99 | interval_seconds: i64, |
| 100 | ) -> PyResult<( |
| 101 | Vec<i64>, |
| 102 | Vec<String>, |
| 103 | Vec<Option<f64>>, |
| 104 | Vec<Option<f64>>, |
| 105 | Vec<Option<f64>>, |
| 106 | Vec<Option<f64>>, |
| 107 | Vec<Option<f64>>, |
| 108 | Vec<Option<f64>>, |
| 109 | Vec<bool>, |
| 110 | )> { |
| 111 | let cols = |
| 112 | build_ohlcv_columns(timestamps_us, symbols, open, high, low, close, volume, adj_close)?; |
| 113 | let out = align_calendar_columns(&cols, interval_seconds).map_err(to_py_err)?; |
| 114 | Ok(( |
| 115 | out.timestamps_us, |
| 116 | out.symbols, |
| 117 | out.open, |
| 118 | out.high, |
| 119 | out.low, |
| 120 | out.close, |
| 121 | out.volume, |
| 122 | out.adj_close, |
| 123 | out.is_missing_bar, |
| 124 | )) |
| 125 | } |
| 126 |
nothing calls this directly
no test coverage detected