exchange.IO
调用交易所对象相关的其它接口。
exchange.IO(k, ...args)示例
切换保证金模式并调用交易所原始接口(以币安期货为例)。
javascript
function main() {
exchange.SetContractType("swap")
// 当前合约切换为逐仓
exchange.IO("cross", false)
// 第三个参数指定合约:ETH_USDT永续合约切换为全仓
exchange.IO("cross", true, "ETH_USDT.swap")
// 调用交易所未封装的接口
var ret = exchange.IO("api", "GET", "/fapi/v1/time")
Log(ret)
}
python
def main():
exchange.SetContractType("swap")
exchange.IO("cross", False)
exchange.IO("cross", True, "ETH_USDT.swap")
ret = exchange.IO("api", "GET", "/fapi/v1/time")
Log(ret)
rust
fn main() {
let _ = exchange.SetContractType("swap");
// 当前合约切换为逐仓
let _ = exchange.IO(("cross", false));
// 第三个参数指定合约:ETH_USDT永续合约切换为全仓
let _ = exchange.IO(("cross", true, "ETH_USDT.swap"));
// 调用交易所未封装的接口
let ret = exchange.IO(("api", "GET", "/fapi/v1/time"));
Log!(ret);
}返回值
| 类型 | 描述 |
string / number / bool / object / array / any | 返回值由指令决定,部分指令成功时也返回空值;调用失败时返回空值,可通过 |
参数
| 名称 | 类型 | 必填 | 描述 |
k | string | 是 | 调用类型标识符,不同的值对应不同的功能,详见下方各章节说明。 |
args | string / number / bool / object / array / any | 否 | 扩展参数,根据 |
参考
备注
指令一览
| 指令 | 说明 |
|---|---|
api | 调用交易所未封装的原始接口 |
currency | 运行时切换交易对 |
base | 查询或切换接口基地址 |
simulate、cross、dual、unified等 | 切换交易模式,见exchange.IO(mode, value) |
rate / quota | API调用限流 |
各指令的详细说明见本分类下的各个页面;各交易所对象特有的指令见下方索引,参数与说明见交易所页(入口见能力矩阵)。
返回值与错误判断
返回值由指令决定。部分指令(例如一些期货交易所的cross、dual、unified)成功时也返回空值,与调用失败的返回值相同;需要确认是否成功时,调用后用GetLastError读取错误信息。交易所不支持的指令会报错(unsupported io method)并返回空值。
cross、dual、unified这类作用于具体合约的指令,可以在取值之后再传入一个symbol参数指定合约,例如exchange.IO("cross", false, "ETH_USDT.swap");不传时作用于当前交易对、合约。指令是按合约还是对整个账户生效、各指令的返回值,见交易所页的专属IO指令表。
各交易所专属指令
下表列出各交易所对象特有的exchange.IO()指令,参数与说明见交易所页。