master
plazmoid 1 month ago
parent b6632299fd
commit ebc5b14e42
  1. 9
      src/main.rs
  2. 3
      src/poloniex.rs

@ -19,11 +19,12 @@ async fn fetch_candles_until_now(
mut start_time: NaiveDateTime, mut start_time: NaiveDateTime,
) -> AppResult<Vec<PoloniuxCandle>> { ) -> AppResult<Vec<PoloniuxCandle>> {
let mut result = vec![]; let mut result = vec![];
let limit = 500;
loop { loop {
println!("pulling candles from {start_time}"); println!("pulling candles from {start_time}");
let candles = poloniex_client let candles = poloniex_client
.get_historical_candles(pair, interval, start_time, Utc::now().naive_utc()) .get_historical_candles(pair, interval, start_time, Utc::now().naive_utc(), limit)
.await?; .await?;
let Some(last_candle) = candles.last() else { let Some(last_candle) = candles.last() else {
@ -46,7 +47,13 @@ async fn fetch_candles_until_now(
break; break;
} }
let candles_count = candles.len();
result.extend(candles); result.extend(candles);
if candles_count < limit {
break;
}
} }
Ok(result) Ok(result)

@ -32,6 +32,7 @@ impl PoloniexClient {
interval: CandleInterval, interval: CandleInterval,
start_date: NaiveDateTime, start_date: NaiveDateTime,
end_date: NaiveDateTime, end_date: NaiveDateTime,
limit: usize,
) -> AppResult<Vec<PoloniuxCandle>> { ) -> AppResult<Vec<PoloniuxCandle>> {
let mut req = self let mut req = self
.rest_base_url .rest_base_url
@ -47,7 +48,7 @@ impl PoloniexClient {
&end_date.and_utc().timestamp_millis().to_string(), &end_date.and_utc().timestamp_millis().to_string(),
) )
.append_pair("interval", interval.as_ref()) .append_pair("interval", interval.as_ref())
.append_pair("limit", "500"); .append_pair("limit", &limit.to_string());
let result = reqwest::get(req).await?; let result = reqwest::get(req).await?;

Loading…
Cancel
Save