资源加载中... loading...

NetSettings

exchange.SetBase


exchange.SetBase(s)

```s```参数用于指定交易所API接口基地址。
s
true
string

```javascript
function main() {
    // 使用默认基地址
    Log(exchange.GetTicker())
    // 切换为https://aws.okx.com
    exchange.SetBase("https://aws.okx.com")
    Log(exchange.GetTicker())
}
def main():
    Log(exchange.GetTicker())
    exchange.SetBase("https://aws.okx.com")
    Log(exchange.GetTicker())
void main() {
    Log(exchange.GetTicker());
    exchange.SetBase("https://aws.okx.com");
    Log(exchange.GetTicker());
}

回测系统中不支持切换交易所API基地址,因为回测系统是一个沙盒模拟环境,并不会真正访问交易所的API接口。

{@fun/Trade/exchange.IO exchange.IO}

exchange.GetBase


当前交易所API接口基地址。
string

exchange.GetBase()

```javascript
function main() {
    Log(exchange.GetBase())
}
def main():
    Log(exchange.GetBase())
void main() {
    Log(exchange.GetBase());
}

{@fun/NetSettings/exchange.SetBase exchange.SetBase}

exchange.SetProxy


exchange.SetProxy(proxy)

```proxy```参数用于指定代理配置。
proxy
true
string

```javascript
function main() {
    exchange.SetProxy("socks5://192.168.1.10:8080")
    // 如果访问不到交易所行情接口,设置一个可用的ss5代理,就可以访问到行情接口了
    Log(exchange.GetTicker())
}
def main():
    exchange.SetProxy("socks5://192.168.1.10:8080")
    Log(exchange.GetTicker())
void main() {
    exchange.SetProxy("socks5://192.168.1.10:8080");
    Log(exchange.GetTicker());
}

配置{@var/EXCHANGE exchange}交易所对象socks5代理:

function main(){
    exchange.SetProxy("ip://10.0.3.15")
    // 发出的请求IP地址为10.0.3.15
    exchange.GetTicker()
}
def main():
    exchange.SetProxy("ip://10.0.3.15")
    exchange.GetTicker()
void main() {
    exchange.SetProxy("ip://10.0.3.15");
    exchange.GetTicker();
}

除了全局指定{@var/EXCHANGE exchange}交易所对象发出请求的IP地址,也支持基于{@var/EXCHANGE exchange}指定ip地址:

如果代理设置失败,在调用exchange.SetProxy()函数时会返回空值。 exchange.SetProxy()函数设置代理的功能仅限rest协议。 每个{@var/EXCHANGE exchange}交易所对象可以设置一个代理,设置代理后访问{@var/EXCHANGE exchange}交易所对象绑定的交易所接口都会通过代理访问。 支持设置socks5代理,以第一个添加的交易所对象{@var/EXCHANGE exchange}即:exchanges[0]为例: - 设置代理,无用户名,无密码:exchange.SetProxy("socks5://127.0.0.1:8889")。 - 设置代理,输入用户名和密码:exchange.SetProxy("socks5://username:password@127.0.0.1:8889")username为用户名,password为密码。 - 切换为正常模式,不使用代理:exchange.SetProxy("")

支持设置{@var/EXCHANGE exchange}交易所对象发出请求的IP地址,全局指定

{@var/EXCHANGE exchange}

exchange.SetTimeout


exchange.SetTimeout(timeout)

```timeout```参数用于指定超时设置的毫秒数。
timeout
true
number

```javascript
function main() {
    exchange.SetTimeout(3000)
    Log(exchange.GetTicker())
}
def main():
    exchange.SetTimeout(3000)
    Log(exchange.GetTicker())
void main() {
    exchange.SetTimeout(3000);
    Log(exchange.GetTicker());
}

参数timeout为毫秒数值,1000毫秒等于1秒。 仅限rest协议,用于设置rest请求时的超时时间,只用设置一次即可生效。 例如:exchange.SetTimeout(3000),设置exchange交易所对象的rest请求超时时间为3秒, 调用exchange.GetTicker()等具有网络请求的函数超过3秒未收到应答则超时,发生超时的函数调用会返回空值。 SetTimeout()不是全局函数,是{@var/EXCHANGE exchange}交易所对象的方法。

{@var/EXCHANGE exchange}

Futures Threads