|
|
@@ -46,9 +46,24 @@ pub async fn kucoin_swap_run(bool_v1 :Arc<AtomicBool>, type_num: i8, quant_arc:
|
|
|
}
|
|
|
kucoin_exc.custom_subscribe(bool_v1, symbol_arr).await;
|
|
|
});
|
|
|
+
|
|
|
+ // 新增获取余额的协程
|
|
|
+ let account_quant_arc = quant_arc.clone();
|
|
|
+ spawn(async move {
|
|
|
+ loop {
|
|
|
+ // 每30秒重新获取一次
|
|
|
+ sleep(Duration::from_secs(30)).await;
|
|
|
+
|
|
|
+ {
|
|
|
+ let mut quant = account_quant_arc.lock().await;
|
|
|
+ quant.update_equity_rest_swap().await;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
spawn(async move {
|
|
|
let bot_arc_clone = Arc::clone(&quant_arc);
|
|
|
- let run_symbol = symbols.clone()[0].clone();
|
|
|
+ // let run_symbol = symbols.clone()[0].clone();
|
|
|
// trade
|
|
|
let mut max_buy = Decimal::ZERO;
|
|
|
let mut min_sell = Decimal::ZERO;
|
|
|
@@ -83,12 +98,12 @@ pub async fn kucoin_swap_run(bool_v1 :Arc<AtomicBool>, type_num: i8, quant_arc:
|
|
|
quant._update_ticker(ticker.ticker, ticker.name);
|
|
|
}
|
|
|
} else if data.channel == "availableBalance.change" {
|
|
|
-
|
|
|
- let account = standard::handle_info::HandleSwapInfo::handle_account_info(KucoinSwap, data, run_symbol.clone());
|
|
|
- {
|
|
|
- let mut quant = bot_arc_clone.lock().await;
|
|
|
- quant.update_equity(account);
|
|
|
- }
|
|
|
+ // 取消原有推送解析,因为推送的信息不准确
|
|
|
+ // let account = standard::handle_info::HandleSwapInfo::handle_account_info(KucoinSwap, data, run_symbol.clone());
|
|
|
+ // {
|
|
|
+ // let mut quant = bot_arc_clone.lock().await;
|
|
|
+ // quant.update_equity(account);
|
|
|
+ // }
|
|
|
} else if data.channel == "symbolOrderChange" {
|
|
|
trace_stack.on_before_format();
|
|
|
let orders = standard::handle_info::HandleSwapInfo::handle_order(KucoinSwap, data.clone(), multiplier);
|