|
@@ -196,7 +196,7 @@ impl ExtendedRestClient {
|
|
|
).await
|
|
).await
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- pub async fn post_order(&mut self, order_type: &str, side: &str, qty: &str, price: &str) -> Result<Response> {
|
|
|
|
|
|
|
+ pub async fn post_order(&mut self, order_type: &str, side: &str, qty: &str, price: &str, reduce_only: bool) -> Result<Response> {
|
|
|
let account = self.account.clone().ok_or_else(|| anyhow!("请将账户传入再进行下单操作"))?;
|
|
let account = self.account.clone().ok_or_else(|| anyhow!("请将账户传入再进行下单操作"))?;
|
|
|
|
|
|
|
|
// 时间戳处理
|
|
// 时间戳处理
|
|
@@ -342,7 +342,7 @@ impl ExtendedRestClient {
|
|
|
"fee": total_fee_rate.to_string(),
|
|
"fee": total_fee_rate.to_string(),
|
|
|
"nonce": nonce,
|
|
"nonce": nonce,
|
|
|
"postOnly": false,
|
|
"postOnly": false,
|
|
|
- "reduceOnly": false,
|
|
|
|
|
|
|
+ "reduceOnly": reduce_only,
|
|
|
"settlement": settlement,
|
|
"settlement": settlement,
|
|
|
"selfTradeProtectionLevel": self_trade_protection_level,
|
|
"selfTradeProtectionLevel": self_trade_protection_level,
|
|
|
});
|
|
});
|
|
@@ -574,7 +574,7 @@ mod tests {
|
|
|
async fn test_create_order() {
|
|
async fn test_create_order() {
|
|
|
let _guard = setup_logging().unwrap();
|
|
let _guard = setup_logging().unwrap();
|
|
|
let mut client = get_client().await;
|
|
let mut client = get_client().await;
|
|
|
- let response_result = client.post_order("LIMIT", "BUY", "0.0001", "100000").await;
|
|
|
|
|
|
|
+ let response_result = client.post_order("LIMIT", "BUY", "0.0001", "100000", false).await;
|
|
|
|
|
|
|
|
match response_result {
|
|
match response_result {
|
|
|
Ok(response) => {
|
|
Ok(response) => {
|