exchange.GetTickers
获取已订阅交易品种的聚合行情数据(由Ticker结构组成的数组)。
exchange.GetTickers()示例
在回测系统中调用exchange.GetTickers()函数时,仅返回已订阅合约的聚合行情数据。
javascript
/*backtest
start: 2024-07-01 00:00:00
end: 2024-07-07 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_CTP","currency":"FUTURES"}]
*/
function main() {
var arrSymbol = ["rb2501", "MA888", "i2501", "p2501", "TA501"]
var tbl = {type: "table", title: "test tickers", cols: ["Symbol", "Buy", "Sell", "Open", "Last", "High", "Low", "Volume", "Time", "OpenInterest"], rows: []}
for (var i = 0; i < 10; i++) {
if (exchange.IO("status")) {
for (var symbol of arrSymbol) {
exchange.SetContractType(symbol)
}
var tickers = exchange.GetTickers()
for (var ticker of tickers) {
tbl.rows.push([ticker.Symbol, ticker.Buy, ticker.Sell, ticker.Open, ticker.Last, ticker.High, ticker.Low, ticker.Volume, ticker.Time, ticker.OpenInterest])
}
LogStatus(_D(), "\n", "`" + JSON.stringify(tbl) + "`")
return
}
Sleep(1000)
}
}
python
'''backtest
start: 2024-07-01 00:00:00
end: 2024-07-07 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_CTP","currency":"FUTURES"}]
'''
import json
def main():
arrSymbol = ["rb2501", "MA888", "i2501", "p2501", "TA501"]
tbl = {"type": "table", "title": "test tickers", "cols": ["Symbol", "Buy", "Sell", "Open", "Last", "High", "Low", "Volume", "Time", "OpenInterest"], "rows": []}
for i in range(10):
if exchange.IO("status"):
for symbol in arrSymbol:
exchange.SetContractType(symbol)
tickers = exchange.GetTickers()
for ticker in tickers:
tbl["rows"].append([ticker["Symbol"], ticker["Buy"], ticker["Sell"], ticker["Open"], ticker["Last"], ticker["High"], ticker["Low"], ticker["Volume"], ticker["Time"], ticker["OpenInterest"]])
LogStatus(_D(), "\n", "`" + json.dumps(tbl) + "`")
return
Sleep(1000)
rust
/*backtest
start: 2024-07-01 00:00:00
end: 2024-07-07 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_CTP","currency":"FUTURES"}]
*/
fn main() {
let arr_symbol = ["rb2501", "MA888", "i2501", "p2501", "TA501"];
for _i in 0..10 {
if exchange.IO("status").is_ok_and(|v| v.as_i64() == Some(1)) {
for symbol in arr_symbol {
exchange.SetContractType(symbol).unwrap();
}
// Rust 中直接拼接 JSON 字符串构造状态栏表格
let tickers = exchange.GetTickers().unwrap();
let mut rows: Vec<String> = Vec::new();
for ticker in &tickers {
rows.push(format!(
r#"["{}", {}, {}, {}, {}, {}, {}, {}, {}, {}]"#,
ticker.Symbol, ticker.Buy, ticker.Sell, ticker.Open, ticker.Last, ticker.High, ticker.Low, ticker.Volume, ticker.Time, ticker.OpenInterest
));
}
let tbl = format!(
r#"{{"type": "table", "title": "test tickers", "cols": ["Symbol", "Buy", "Sell", "Open", "Last", "High", "Low", "Volume", "Time", "OpenInterest"], "rows": [{}]}}"#,
rows.join(", ")
);
LogStatus!(_D(None), "\n", format!("`{}`", tbl));
return;
}
Sleep(1000);
}
}返回值
| 类型 | 描述 |
| 在数据请求成功时返回 |
参考
备注
注意事项:
-
exchange.GetTickers()函数支持实盘交易与回测系统。 -
exchange.GetTickers()函数仅返回已订阅品种的相关数据。