|
|
@@ -1,3 +1,35 @@
|
|
|
-fn main() {
|
|
|
- println!("Hello, world!");
|
|
|
+use std::str::FromStr;
|
|
|
+use tracing::{info, subscriber};
|
|
|
+use strategy::params::Params;
|
|
|
+use strategy::quant::Quant;
|
|
|
+
|
|
|
+// fn get_log(log_level: String) -> tracing::Level {
|
|
|
+// return match log_level.as_str() {
|
|
|
+// "trace" => { tracing::Level::TRACE },
|
|
|
+// "debug" => { tracing::Level::DEBUG },
|
|
|
+// "info" => { tracing::Level::INFO },
|
|
|
+// "warn" => { tracing::Level::WARN },
|
|
|
+// "error" => { tracing::Level::ERROR },
|
|
|
+// _ => { tracing::Level::TRACE }
|
|
|
+// }
|
|
|
+// }
|
|
|
+
|
|
|
+#[tokio::main]
|
|
|
+async fn main() {
|
|
|
+ // 获取本地配置
|
|
|
+ let params = Params::new("config.toml").unwrap();
|
|
|
+
|
|
|
+ // 日志级别配置
|
|
|
+ let tracing_log_level = tracing::Level::from_str(params.log_level.as_str()).unwrap();
|
|
|
+ let sub = tracing_subscriber::fmt()
|
|
|
+ .with_max_level(tracing_log_level)
|
|
|
+ .with_span_events(tracing_subscriber::fmt::format::FmtSpan::FULL)
|
|
|
+ .finish();
|
|
|
+ subscriber::set_global_default(sub).expect("策略模块日志初始化错误");
|
|
|
+
|
|
|
+ info!(?params);
|
|
|
+ info!(?tracing_log_level);
|
|
|
+
|
|
|
+ let mut quant = Quant::new(params);
|
|
|
+ quant.before_trade().await;
|
|
|
}
|