NetSettings
exchange.SetBase
exchange.SetBase()函数用于设置exchange交易所对象所使用的交易所API接口基地址。
exchange.SetBase(s)示例
javascript
function main() {
// 使用默认基地址
Log(exchange.GetTicker())
// 切换为https://aws.okx.com
exchange.SetBase("https://aws.okx.com")
Log(exchange.GetTicker())
}
python
def main():
Log(exchange.GetTicker())
exchange.SetBase("https://aws.okx.com")
Log(exchange.GetTicker())
rust
fn main() {
// 使用默认基地址
Log!(exchange.GetTicker(None));
// 切换为https://aws.okx.com
exchange.SetBase("https://aws.okx.com");
Log!(exchange.GetTicker(None));
}
c++
void main() {
Log(exchange.GetTicker());
exchange.SetBase("https://aws.okx.com");
Log(exchange.GetTicker());
}参数
| 名称 | 类型 | 必填 | 描述 |
s | string | 是 |
|
参考
备注
回测系统不支持切换交易所API接口基地址,因为回测系统是一个沙盒模拟环境,不会真正访问交易所的API接口。
exchange.GetBase
exchange.GetBase() 函数用于获取当前交易所 API 接口的基础地址。
exchange.GetBase()示例
javascript
function main() {
Log(exchange.GetBase())
}
python
def main():
Log(exchange.GetBase())
rust
fn main() {
Log!(exchange.GetBase());
}
c++
void main() {
Log(exchange.GetBase());
}返回值
| 类型 | 描述 |
string | 当前交易所 API 接口的基础地址。 |
参考
exchange.SetProxy
exchange.SetProxy()函数用于设置exchange交易所对象的代理配置。
exchange.SetProxy(proxy)示例
-
为
exchange交易所对象配置socks5代理:javascriptfunction main() { exchange.SetProxy("socks5://192.168.1.10:8080") // 如果无法访问交易所行情接口,设置一个可用的socks5代理即可访问行情接口 Log(exchange.GetTicker()) }pythondef main(): exchange.SetProxy("socks5://192.168.1.10:8080") Log(exchange.GetTicker())rustfn main() { exchange.SetProxy("socks5://192.168.1.10:8080"); // 如果无法访问交易所行情接口,设置一个可用的socks5代理即可访问行情接口 Log!(exchange.GetTicker(None)); }c++void main() { exchange.SetProxy("socks5://192.168.1.10:8080"); Log(exchange.GetTicker()); } -
除了**全局指定**
exchange交易所对象发出请求所使用的IP地址外,也支持基于exchange单独指定IP地址:javascriptfunction main(){ exchange.SetProxy("ip://10.0.3.15") // 发出请求的IP地址为10.0.3.15 exchange.GetTicker() }pythondef main(): exchange.SetProxy("ip://10.0.3.15") exchange.GetTicker()rustfn main() { exchange.SetProxy("ip://10.0.3.15"); // 发出请求的IP地址为10.0.3.15 let _ = exchange.GetTicker(None); }c++void main() { exchange.SetProxy("ip://10.0.3.15"); exchange.GetTicker(); }
参数
| 名称 | 类型 | 必填 | 描述 |
proxy | string | 是 |
|
参考
备注
如果代理设置失败,调用exchange.SetProxy()函数时将返回空值。
exchange.SetProxy()函数的代理设置功能仅支持rest协议。每个exchange交易所对象可以设置一个代理,设置代理后,对该exchange交易所对象所绑定交易所接口的访问都会通过该代理进行。
支持设置socks5代理,以第一个添加的交易所对象exchange(即exchanges[0])为例:
-
设置代理,无用户名、无密码:
exchange.SetProxy("socks5://127.0.0.1:8889")。 -
设置代理,指定用户名和密码:
exchange.SetProxy("socks5://username:[email protected]:8889"),其中username为用户名,password为密码。 -
切换为正常模式,不使用代理:
exchange.SetProxy("")。
exchange.SetTimeout
exchange.SetTimeout()函数用于设置exchange交易所对象rest请求的超时时间。
exchange.SetTimeout(timeout)示例
javascript
function main() {
exchange.SetTimeout(3000)
Log(exchange.GetTicker())
}
python
def main():
exchange.SetTimeout(3000)
Log(exchange.GetTicker())
rust
fn main() {
exchange.SetTimeout(3000);
Log!(exchange.GetTicker(None));
}
c++
void main() {
exchange.SetTimeout(3000);
Log(exchange.GetTicker());
}参数
| 名称 | 类型 | 必填 | 描述 |
timeout | number | 是 |
|
参考
备注
参数timeout为毫秒数值,1000毫秒等于1秒。该设置仅适用于rest协议,用于设置rest请求的超时时间,只需设置一次即可生效。例如:exchange.SetTimeout(3000),将exchange交易所对象的rest请求超时时间设置为3秒;调用exchange.GetTicker()等涉及网络请求的函数时,若超过3秒未收到应答则判定为超时,发生超时的函数调用将返回空值。
SetTimeout()不是全局函数,而是exchange交易所对象的方法。