buy sell 모두 해결
This commit is contained in:
@@ -83,14 +83,13 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
signals_SU.Clear();
|
||||
|
||||
//시작시 한번만 하면됨(양방향)
|
||||
//ChangeFuturePositionMode(FuturePositionMode.hedge_mode);
|
||||
|
||||
ChangeFuturePositionMode(FuturePositionMode.hedge_mode);
|
||||
GetFutureAccountList();
|
||||
//order 로직
|
||||
//FutureOrder("XRPUSDT", FutureMarginMode.isolated, 10, (double)0.531, FutureSide.BuyShort, OrderType.limit, 10);
|
||||
|
||||
|
||||
|
||||
var orderData = FutureOrder("XRPUSDT", FutureMarginMode.isolated, 10, (double)0.541, FutureSide.BuyShort, OrderType.limit, 10);
|
||||
var sellData = FutureOrder("XRPUSDT", FutureMarginMode.isolated, 10, 0, FutureSide.SellShort, OrderType.market, 10, "1230644068203786241");
|
||||
|
||||
|
||||
|
||||
// 추후 공통화 및 소스정리 필요
|
||||
while (true)
|
||||
@@ -1091,13 +1090,13 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
|
||||
if (futureSide == FutureSide.BuyShort)
|
||||
{
|
||||
id = new Guid().ToString();
|
||||
id = Guid.NewGuid().ToString();
|
||||
side = "sell";
|
||||
tradeSide = "open";
|
||||
}
|
||||
else if (futureSide == FutureSide.BuyLong)
|
||||
{
|
||||
id = new Guid().ToString();
|
||||
id = Guid.NewGuid().ToString();
|
||||
side = "buy";
|
||||
tradeSide = "Open";
|
||||
}
|
||||
@@ -1125,9 +1124,9 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
{
|
||||
//change margin mode 이후 leverage 처리 해야 함
|
||||
var changeMarginModeStr = "{\"symbol\": \"" + symbol + "\", \"productType\": \"usdt-futures\", \"marginCoin\": \"USDT\", \"marginMode\": \"" + Utils.Convertor.GetEnumDescription((Enum)marginMode) + "\"}";
|
||||
|
||||
|
||||
var nvcMargin = new NameValueCollection {
|
||||
{"ACCESS-KEY", YHKIM_AccessKey},
|
||||
{"ACCESS-KEY", YHKIM_AccessKey},
|
||||
{"ACCESS-SIGN", GenerateSignString(timestamp, "POST", "/api/v2/mix/account/set-margin-mode", "", changeMarginModeStr, YHKIM_SecreteKey)},
|
||||
{"ACCESS-PASSPHRASE", YHKIM_PassphraseKey },
|
||||
{"ACCESS-TIMESTAMP", timestamp}
|
||||
@@ -1152,23 +1151,24 @@ namespace BitgetAPI.IndicatorConditionSetup
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// sell은 ClientOID 가 필요
|
||||
var orderDetailStr = "/api/v2/mix/order/detail";
|
||||
timestamp = (((DateTimeOffset)timeSpan).ToUnixTimeSeconds() * 1000).ToString();
|
||||
var orderDetailnvc = new NameValueCollection {
|
||||
{"ACCESS-KEY", YHKIM_AccessKey},
|
||||
{"ACCESS-SIGN", GenerateSignString(timestamp, "GET", orderDetailStr, "symbol="+symbol.ToString()+"&orderId="+id.ToString()+"&productType=usdt-future", null, YHKIM_SecreteKey) },
|
||||
{"ACCESS-PASSPHRASE", YHKIM_PassphraseKey },
|
||||
{"ACCESS-TIMESTAMP",timestamp}
|
||||
};
|
||||
//else
|
||||
//{
|
||||
// // sell은 ClientOID 가 필요
|
||||
// var orderDetailStr = "/api/v2/mix/order/detail";
|
||||
// timestamp = (((DateTimeOffset)timeSpan).ToUnixTimeSeconds() * 1000).ToString();
|
||||
// var orderDetailnvc = new NameValueCollection {
|
||||
// {"ACCESS-KEY", YHKIM_AccessKey},
|
||||
// {"ACCESS-SIGN", GenerateSignString(timestamp, "GET", orderDetailStr, "symbol="+symbol.ToString()+"&orderId="+id.ToString()+"&productType=USDT-FUTURES", null, YHKIM_SecreteKey) },
|
||||
// {"ACCESS-PASSPHRASE", YHKIM_PassphraseKey },
|
||||
// {"ACCESS-TIMESTAMP",timestamp}
|
||||
// };
|
||||
|
||||
var orderDetail = (Dictionary<string, object>)WebConnection.SendWebServer(ExchangeWebReqType.BitgetOrderDetail_Future, BitgetURL_OrderDetail_Future, null, MCandleTimeType.M1, "", "", orderDetailnvc);
|
||||
if (orderDetail["msg"]?.ToString() != "success") return null;
|
||||
var data = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(orderDetail["data"]));
|
||||
id = data["clientOid"].ToString();
|
||||
}
|
||||
// var orderDetail = (Dictionary<string, object>)WebConnection.SendWebServer(ExchangeWebReqType.BitgetOrderDetail_Future, BitgetURL_OrderDetail_Future + "?symbol=" + symbol.ToString() + "&orderId=" + id.ToString() + "&productType=USDT-FUTURES", null, MCandleTimeType.M1, "", "", orderDetailnvc);
|
||||
// if (orderDetail == null || orderDetail["msg"]?.ToString() != "success") return null;
|
||||
|
||||
// var data = JsonConvert.DeserializeObject<Dictionary<string, object>>(JsonConvert.SerializeObject(orderDetail["data"]));
|
||||
// //id = data["clientOid"].ToString();
|
||||
//}
|
||||
|
||||
var postStr = "{\"symbol\": \"" + symbol + "\", \"productType\": \"usdt-futures\", \"marginMode\": \"" + Utils.Convertor.GetEnumDescription((Enum)marginMode) + "\", \"marginCoin\": \"USDT\", \"size\": \""
|
||||
+ size.ToString() + "\", \"price\": \"" + price.ToString() + "\", \"side\": \"" + side + "\", " + "\"tradeSide\": \"" + tradeSide + "\", \"orderType\": \"" + Utils.Convertor.GetEnumDescription((Enum)orderType)
|
||||
|
||||
Reference in New Issue
Block a user