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}
当前交易所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(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(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