public String candlestick2(String symbol, String groupSec, String rangeHour) { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String param = ""; if ((!"".Equals(symbol)) && symbol != null) { param += symbol; if ((!"".Equals(groupSec)) && groupSec != null) { param += "?group_sec=" + groupSec; if ((!"".Equals(rangeHour)) && rangeHour != null) { param += "&range_hour=" + rangeHour; } } else { if ((!"".Equals(rangeHour)) && rangeHour != null) { param += "?range_hour=" + rangeHour; } } } String result = httpUtil.doRequest("data", "POST", url_prex + CANDLESTICK2_URL + param, new Dictionary <String, String>()); return(result); }
/// <summary> /// 撤销订单 异步 /// </summary> /// <param name="symbol">btc_usd: 比特币 ltc_usd: 莱特币</param> /// <param name="order_id">订单ID(多个订单ID中间以","分隔,一次最多允许撤消3个订单)</param> /// <returns></returns> public void cancelOrderAsync(String symbol, String order_id, HttpAsyncReq.ResponseCallback callback) { try {// 构造参数签名 Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(order_id)) { paras.Add("order_id", order_id); } String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); // 发送post请求 HttpUtilManager httpUtil = HttpUtilManager.getInstance(); httpUtil.requestHttpPostAsync(url_prex, CANCEL_ORDER_URL, paras, callback); } catch (Exception e) { throw e; } }
/// <summary> /// 撤销订单 /// </summary> /// <param name="symbol">btc_usd: 比特币 ltc_usd: 莱特币</param> /// <param name="order_id">订单ID(多个订单ID中间以","分隔,一次最多允许撤消3个订单)</param> /// <returns></returns> public String cancel_order(String symbol, String order_id) { String result = ""; try {// 构造参数签名 Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(order_id)) { paras.Add("order_id", order_id); } String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); // 发送post请求 HttpUtilManager httpUtil = HttpUtilManager.getInstance(); result = httpUtil.requestHttpPost(url_prex, CANCEL_ORDER_URL, paras); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 现货历史交易信息 /// </summary> /// <param name="symbol">btc_usd:比特币 ltc_usd :莱特币</param> /// <param name="since">不加since参数时,返回最近的60笔交易</param> /// <returns></returns> public String trades(String symbol, String since) { String result = ""; try { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String param = ""; if (!StringUtil.isEmpty(symbol)) { if (!param.Equals("")) { param += "&"; } param += "symbol=" + symbol; } if (!StringUtil.isEmpty(since)) { if (!param.Equals("")) { param += "&"; } param += "since=" + since; } result = httpUtil.requestHttpGet(url_prex, TRADES_URL, param); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 批量下单 /// </summary> /// <param name="symbol">btc_usd: 比特币 ltc_usd: 莱特币</param> /// <param name="type">买卖类型: 限价单(buy/sell) 市价单(buy_market/sell_market)</param> /// <param name="orders_data">JSON类型的字符串 例:[{price:3,amount:5},{price:3,amount:3}] 最大下单量为5,price和amount参数参考trade接口中的说明</param> /// <returns></returns> public String batch_trade(String symbol, String type, String orders_data) { String result = ""; try { // 构造参数签名 Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(type)) { paras.Add("type", type); } if (!StringUtil.isEmpty(orders_data)) { paras.Add("orders_data", orders_data); } String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); // 发送post请求 HttpUtilManager httpUtil = HttpUtilManager.getInstance(); result = httpUtil.requestHttpPost(url_prex, BATCH_TRADE_URL, paras); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 查询用户借款信息 /// </summary> /// <param name="symbol">btc_usd: 比特币 ltc_usd: 莱特币 usd: 美元 </param> /// <returns></returns> public String borrows_info(String symbol) { String result = ""; try { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); //发送post请求 result = httpUtil.requestHttpPost(url_prex, BORROWS_INFO_URL, paras); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 取消提币BTC/LTC /// </summary> /// <param name="symbol">btc_usd: 比特币 ltc_usd: 莱特币 </param> /// <param name="withdraw_id">提币申请Id </param> /// <returns></returns> public String cancel_withdraw(String symbol, String withdraw_id) { String result = ""; try { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(withdraw_id)) { paras.Add("withdraw_id", withdraw_id); } String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); //发送post请求 result = httpUtil.requestHttpPost(url_prex, CANCEL_WITHDRAW_RUL, paras); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 未还款列表 /// </summary> /// <param name="symbol">btc_usd: 比特币 ltc_usd: 莱特币 usd: 美元 </param> /// <param name="current_page">当前页数</param> /// <param name="page_length">每页数据条数,最多不超过50条</param> /// <returns></returns> public String unrepayments_info(String symbol, String current_page, String page_length) { String result = ""; try { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(current_page)) { paras.Add("current_page", current_page); } if (!StringUtil.isEmpty(page_length)) { paras.Add("page_length", page_length); } String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); //发送post请求 result = httpUtil.requestHttpPost(url_prex, UNREPAYMENTS_INFO_URL, paras); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 用户还全款 /// </summary> /// <param name="borrow_id">借款单ID</param> /// <returns></returns> public String repayment(String borrow_id) { String result = ""; try { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); if (!StringUtil.isEmpty(borrow_id)) { paras.Add("borrow_id", borrow_id); } String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); //发送post请求 result = httpUtil.requestHttpPost(url_prex, REPAYMENT_URL, paras); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 用户逐仓持仓查询 /// </summary> /// <param name="symbol">btc_usd:比特币 ltc_usd :莱特币</param> /// <param name="contractType">合约类型: this_week:当周 next_week:下周 month:当月 quarter:季度</param> /// <returns></returns> public String future_position_4fix(String symbol, String contractType) { String result = ""; try { // 构造参数签名 Dictionary <String, String> paras = new Dictionary <String, String>(); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(contractType)) { paras.Add("contract_type", contractType); } paras.Add("api_key", api_key); String sign = MD5Util.buildMysignV1(paras, secret_key); paras.Add("sign", sign); // 发送post请求 HttpUtilManager httpUtil = HttpUtilManager.getInstance(); result = httpUtil.requestHttpPost(url_prex, FUTURE_POSITION_4FIX_URL, paras); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 期货账户信息 /// </summary> /// <returns></returns> public String future_userinfo() { String result = ""; try { // 构造参数签名 Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); // 发送post请求 HttpUtilManager httpUtil = HttpUtilManager.getInstance(); result = httpUtil.requestHttpPost(url_prex, FUTURE_USERINFO_URL, paras); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 获取当前可用合约总持仓量 /// </summary> /// <param name="symbol">btc_usd:比特币, ltc_usd:莱特币 (必填字段)</param> /// <param name="contract_type">合约类型。this_week:当周;next_week:下周;quarter:季度</param> /// <returns></returns> public String future_hold_amount(String symbol, String contract_type) { String result = ""; try { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String param = ""; if (!StringUtil.isEmpty(symbol)) { if (!param.Equals("")) { param += "&"; } param += "symbol=" + symbol; } if (!StringUtil.isEmpty(contract_type)) { if (!param.Equals("")) { param += "&"; } param += "contract_type=" + contract_type; } result = httpUtil.requestHttpGet(url_prex, FUTURE_HOLD_AMOUNT_URL, param); } catch (Exception e) { throw e; } return(result); }
/// <summary> /// 获取历史交易信息 /// </summary> /// <param name="symbol">btc_usd:比特币 ltc_usd :莱特币 </param> /// <param name="since">从某一tid开始访问600条数据(必填项) </param> /// <returns></returns> public String trade_history(String symbol, String since) { String result = ""; try { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); Dictionary <String, String> paras = new Dictionary <String, String>(); paras.Add("api_key", api_key); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(since)) { paras.Add("since", since); } String sign = MD5Util.buildMysignV1(paras, this.secret_key); paras.Add("sign", sign); //发送post请求 result = httpUtil.requestHttpPost(url_prex, TRADE_HISTORY_URL, paras); } catch (Exception e) { throw e; } return(result); }
public String marketlist() { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String param = ""; String result = httpUtil.requestHttpGet(url_prex, MARKETLIST_URL, param); return(result); }
public String balance() { Dictionary <String, String> Params = new Dictionary <String, String>(); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + BALANCE_URL, Params); return(result); }
public String tickers() { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String param = ""; String result = httpUtil.requestHttpGet(url_prex, TICKERS_URL, param); return(result); }
public String depositAddress(String symbol) { Dictionary <String, String> Params = new Dictionary <String, String>(); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + DEPOSITADDRESS_URL, Params); return(result); }
/// <summary> /// 获取期货合约的K线数据 /// </summary> /// <param name="symbol">btc_usd:比特币, ltc_usd:莱特币 </param> /// <param name="type"> /// 1min : 1分钟 ///3min : 3分钟 ///5min : 5分钟 ///15min : 15分钟 /// 30min : 30分钟 ///1day : 1日 ///3day : 3日 ///1week : 1周 ///1hour : 1小时 ///2hour : 2小时 ///4hour : 4小时 ///6hour : 6小时 ///12hour : 12小时 /// </param> /// <param name="contract_type">合约类型。this_week:当周;next_week:下周;quarter:季度</param> /// <param name="size">指定获取数据的条数</param> /// <param name="since">时间戳(eg:1417536000000)。 返回该时间戳以后的数据</param> /// <returns></returns> public String future_kline(String symbol, String type, String contract_type, String size, String since) { String result = ""; try { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String param = ""; if (!StringUtil.isEmpty(symbol)) { if (!param.Equals("")) { param += "&"; } param += "symbol=" + symbol; } if (!StringUtil.isEmpty(type)) { if (!param.Equals("")) { param += "&"; } param += "type=" + type; } if (!StringUtil.isEmpty(contract_type)) { if (!param.Equals("")) { param += "&"; } param += "contract_type=" + contract_type; } if (!StringUtil.isEmpty(size)) { if (!param.Equals("")) { param += "&"; } param += "size=" + size; } if (!StringUtil.isEmpty(since)) { if (!param.Equals("")) { param += "&"; } param += "since=" + since; } result = httpUtil.requestHttpGet(url_prex, FUTURE_KLINE_URL, param); } catch (Exception e) { Console.WriteLine("重新连接"); future_kline(symbol, type, contract_type, size, since); } return(result); }
public String openOrders() { Dictionary <String, String> Params = new Dictionary <String, String>(); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + OPENORDERS_URL, Params); return(result); }
public String cancelOrders(String orderJson) { Dictionary <String, String> Params = new Dictionary <String, String>(); Params.Add("orders_json", orderJson); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + CANCELORDERS_URL, Params); return(result); }
public String myTradeHistory(String currencyPair) { Dictionary <String, String> Params = new Dictionary <String, String>(); Params.Add("currencyPair", currencyPair); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + MYTRADEHISTORY_URL, Params); return(result); }
public String ticker(String symbol) { HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String param = ""; param += "/" + symbol; String result = httpUtil.requestHttpGet(url_prex, TICKER_URL + param, ""); return(result); }
/// <summary> /// 期货下单 /// </summary> /// <param name="symbol">btc_usd:比特币 ltc_usd :莱特币</param> /// <param name="contractType">合约类型: this_week:当周 next_week:下周 month:当月 quarter:季度</param> /// <param name="price">价格</param> /// <param name="amount">委托数量</param> /// <param name="type">1:开多 2:开空 3:平多 4:平空</param> /// <param name="matchPrice">是否为对手价 0:不是 1:是 ,当取值为1时,price无效</param> /// <param name="leverRate">杠杆率,10或20</param> /// <returns></returns> public String future_trade_ex(String symbol, String contractType, String price, String amount, String type, String matchPrice, String leverRate) { String result = ""; try { // 构造参数签名 Dictionary <String, String> paras = new Dictionary <String, String>(); if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(contractType)) { paras.Add("contract_type", contractType); } if (!StringUtil.isEmpty(api_key)) { paras.Add("api_key", api_key); } if (!StringUtil.isEmpty(price)) { paras.Add("price", price); } if (!StringUtil.isEmpty(amount)) { paras.Add("amount", amount); } if (!StringUtil.isEmpty(type)) { paras.Add("type", type); } if (!StringUtil.isEmpty(matchPrice)) { paras.Add("match_price", matchPrice); } if (!StringUtil.isEmpty(leverRate)) { paras.Add("lever_rate", leverRate); } String sign = MD5Util.buildMysignV1(paras, secret_key); paras.Add("sign", sign); // 发送post请求 HttpUtilManager httpUtil = HttpUtilManager.getInstance(); result = httpUtil.requestHttpPost(url_prex, FUTURE_TRADE_URL, paras); } catch (Exception e) { throw e; } return(result); }
public String depositsWithdrawals(String startTime, String endTime) { Dictionary <String, String> Params = new Dictionary <String, String>(); Params.Add("start", startTime); Params.Add("end", endTime); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + DEPOSITESWITHDRAWALS_URL, Params); return(result); }
public String cancelAllOrders(String type, String currencyPair) { Dictionary <String, String> Params = new Dictionary <String, String>(); Params.Add("type", type); Params.Add("currencyPair", currencyPair); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + CANCELALLORDERS_URL, Params); return(result); }
public String getOrder(String orderNumber, String currencyPair) { Dictionary <String, String> Params = new Dictionary <String, String>(); Params.Add("orderNumber", orderNumber); Params.Add("currencyPair", currencyPair); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + GETORDER_URL, Params); return(result); }
public String sell(String currencyPair, String rate, String amount) { Dictionary <String, String> Params = new Dictionary <String, String>(); Params.Add("currencyPair", currencyPair); Params.Add("rate", rate); Params.Add("amount", amount); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + SELL_URL, Params); return(result); }
public String withdraw(String currency, String amount, String address) { Dictionary <String, String> Params = new Dictionary <String, String>(); Params.Add("currency", currency); Params.Add("amount", amount); Params.Add("address", address); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + WITHDRAW_URL, Params); return(result); }
/// <summary> /// 获取用户订单信息 /// </summary> /// <param name="symbol">btc_usd:比特币 ltc_usd :莱特币</param> /// <param name="contractType">合约类型: this_week:当周 next_week:下周 month:当月 quarter:季度</param> /// <param name="orderId">订单ID(-1查询全部未成交订单,否则查询相应单号的订单)</param> /// <param name="status">查询状态:1:未完成(最近七天的数据) 2:已完成(最近七天的数据)</param> /// <param name="currentPage">当前页数</param> /// <param name="pageLength">每页获取条数,最多不超过50</param> /// <returns></returns> public String future_order_info(String symbol, String contractType, String orderId, String status, String currentPage = null, String pageLength = null) { String result = ""; try { // 构造参数签名 Dictionary <String, String> paras = new Dictionary <String, String>(); if (!StringUtil.isEmpty(contractType)) { paras.Add("contract_type", contractType); } if (!StringUtil.isEmpty(currentPage)) { paras.Add("current_page", currentPage); } if (!StringUtil.isEmpty(orderId)) { paras.Add("order_id", orderId); } if (!StringUtil.isEmpty(api_key)) { paras.Add("api_key", api_key); } if (!StringUtil.isEmpty(pageLength)) { paras.Add("page_length", pageLength); } if (!StringUtil.isEmpty(symbol)) { paras.Add("symbol", symbol); } if (!StringUtil.isEmpty(status)) { paras.Add("status", status); } String sign = MD5Util.buildMysignV1(paras, secret_key); paras.Add("sign", sign); // 发送post请求 HttpUtilManager httpUtil = HttpUtilManager.getInstance(); result = httpUtil.requestHttpPost(url_prex, FUTURE_ORDER_INFO_URL, paras); } catch (Exception e) { throw e; } return(result); }
public String openOrders(String currencyPair) { if (currencyPair == null || "".Equals(currencyPair)) { return(openOrders()); } else { Dictionary <String, String> Params = new Dictionary <String, String>(); Params.Add("currencyPair", currencyPair); HttpUtilManager httpUtil = HttpUtilManager.getInstance(); String result = httpUtil.doRequest("data", "post", url_prex + OPENORDERS_URL, Params); return(result); } }