|
|
@@ -2,22 +2,20 @@ use std::ops::{Div, Mul};
|
|
|
use std::time::{SystemTime, UNIX_EPOCH};
|
|
|
use rand::Rng;
|
|
|
use rust_decimal::Decimal;
|
|
|
-use rust_decimal_macros::dec;
|
|
|
|
|
|
-// TODO 市场数据汇总(market_info)的下标集合
|
|
|
pub const LEVEL: usize = 1;
|
|
|
pub const TRADE_LENGTH: usize = 2; // 推测应该是交易交易所的数据长度
|
|
|
pub const LENGTH: usize = LEVEL * 4 + TRADE_LENGTH; // 市场数据汇总的总长度
|
|
|
-pub const BID_PRICE_INDEX: usize = LEVEL * 0; // 买入价格下标
|
|
|
-pub const BID_QUANTITY_INDEX: usize = LEVEL * 0 + 1; // 买入数量下标
|
|
|
-pub const ASK_PRICE_INDEX: usize = LEVEL * 2; // 卖出价格下标
|
|
|
-pub const ASK_QUANTITY_INDEX: usize = LEVEL * 2 + 1; // 卖出数量下标
|
|
|
-// 上面是市场数据汇总的下标相关
|
|
|
-pub const MARKET_DELAY_LIMIT: i64 = 30*1000; // 市场信息延迟限制(单位:毫秒)
|
|
|
-pub const GRID: i64 = 1; // 策略资金分成多少份
|
|
|
-pub const STOP_LOSS: Decimal = dec!(0.02); // 风控止损比例,0.02代表2%,是原文的STOPLOSS
|
|
|
-pub const GAMMA: Decimal = dec!(0.999); // gamma默认值
|
|
|
-pub const EFF_RANGE: Decimal = dec!(0.001); // 每1权重需要多少价格距离,0.001代表0.1%,每0.1%代表1权重
|
|
|
+// pub const BID_PRICE_INDEX: usize = LEVEL * 0; // 买入价格下标
|
|
|
+// pub const BID_QUANTITY_INDEX: usize = LEVEL * 0 + 1; // 买入数量下标
|
|
|
+// pub const ASK_PRICE_INDEX: usize = LEVEL * 2; // 卖出价格下标
|
|
|
+// pub const ASK_QUANTITY_INDEX: usize = LEVEL * 2 + 1; // 卖出数量下标
|
|
|
+// // 上面是市场数据汇总的下标相关
|
|
|
+// pub const MARKET_DELAY_LIMIT: i64 = 30*1000; // 市场信息延迟限制(单位:毫秒)
|
|
|
+// pub const GRID: i64 = 1; // 策略资金分成多少份
|
|
|
+// pub const STOP_LOSS: Decimal = dec!(0.02); // 风控止损比例,0.02代表2%,是原文的STOPLOSS
|
|
|
+// pub const GAMMA: Decimal = dec!(0.999); // gamma默认值
|
|
|
+// pub const EFF_RANGE: Decimal = dec!(0.001); // 每1权重需要多少价格距离,0.001代表0.1%,每0.1%代表1权重
|
|
|
|
|
|
// 生成订单的id,可以根据交易所名字来
|
|
|
pub fn generate_client_id(mut exchange_name_some: Option<&str>) -> String {
|