@@ -10,6 +10,7 @@ use rust_decimal::prelude::{FromPrimitive, ToPrimitive};
use rust_decimal_macros::dec;
use serde_json::{json, Value};
use tracing::{info};
+use crate::export_ticker::get_gate_ticker_info;
use crate::http::request::get;
#[derive(Debug)]
@@ -217,8 +218,18 @@ pub fn calc_gate_ticker_amplitude(ticker_map: BTreeMap<u64, Ticker>) -> BTreeMap
pub async fn export_gate_ticker(start_at: i64, end_at: i64, time_interval: i64, symbol: String) -> BTreeMap<Decimal, Decimal> {
let mut ticker_map: BTreeMap<u64, Ticker> = BTreeMap::new();
+ let trades_list = get_gate_ticker_info(&symbol,&start_at.to_string(),&end_at.to_string()).await;
+ for trades in trades_list{
+ let key = trades.create_time.parse::<u64>().unwrap();
+ let ticker = Ticker {
+ create_time: Decimal::from_str(&trades.create_time).unwrap(),
+ price: Decimal::from_str(&trades.price).unwrap(),
+ amount:Decimal::from_str(&trades.size).unwrap(),
+ };
+ ticker_map.insert(key, ticker);
+ }
// 获取ticker数据
- pull_gate_ticker(&mut ticker_map, start_at, end_at, time_interval, symbol).await;
+ // pull_gate_ticker(&mut ticker_map, start_at, end_at, time_interval, symbol).await;
let len = ticker_map.len();
info!("网络层执行完毕,总数据量条数:{}。", len);
@@ -57,5 +57,5 @@ async fn main() {
// time_interval -数据请求的时间间隔 毫秒级
//
// 时间范围可以选择:[5M, 10M, 15M, 20M, 30M, 1H, 2H, 3H, 4H, 12H, 1D, 2D, 3D, 5D, 1Z, 2Z, 4Z]
- hl_pr_utile::export_ticker("BAKE_USDT", "GATE", "30M", 1 * 30).await;
+ hl_pr_utile::export_ticker("SOL_USDT", "GATE", "4H", 1 * 30).await;
}