内置函数
结构体
Ticker
Depth
OrderBook
Trade
Record
Market
Order
Condition
Account
Asset
Position
Funding
其它结构
内置变量与常量
通用约定
交易所
grid
网格布局:把多个组件排成几列,容器变窄时自动减少列数。
示例
一行三张指标卡,显示买一、卖一和最新价。
javascript
function main() {
var ticker = exchange.GetTicker()
if (!ticker) return
LogStatus({
type: "grid", cols: 3, minColWidth: 160, items: [
{type: "kpi", title: "买一", value: ticker.Buy},
{type: "kpi", title: "卖一", value: ticker.Sell},
{type: "kpi", title: "最新价", value: ticker.Last}
]
})
}
python
def main():
ticker = exchange.GetTicker()
if not ticker:
return
LogStatus({
"type": "grid", "cols": 3, "minColWidth": 160, "items": [
{"type": "kpi", "title": "买一", "value": ticker["Buy"]},
{"type": "kpi", "title": "卖一", "value": ticker["Sell"]},
{"type": "kpi", "title": "最新价", "value": ticker["Last"]}
]
})
rust
fn kpi(title: &str, value: f64) -> String {
format!(r#"{{"type": "kpi", "title": "{}", "value": {}}}"#, title, value)
}
fn main() {
let Ok(t) = exchange.GetTicker(None) else { return };
let items = [kpi("买一", t.Buy), kpi("卖一", t.Sell), kpi("最新价", t.Last)];
// 组件是一段 JSON 文本,直接传给 LogStatus!,不用加反引号
LogStatus!(format!(
r#"{{"type": "grid", "cols": 3, "minColWidth": 160, "items": [{}]}}"#,
items.join(",")
));
}属性
| 名称 | 类型 | 描述 |
type | string | 必填,固定为 |
items | array | 必填。子组件数组:任意状态栏组件,也可以是表格、按钮对象。 |
cols | number | 期望列数, |
minColWidth | number | 每列最小宽度(像素),放不下时减少列数。默认 |
gap | string | 间距: |
title | string | 标题,显示在网格上方。 |
id | string | 稳定标识。组件的个数或顺序会变化时设置,状态栏刷新时组件不重建。 |
span | number | 在所在 |
参考
备注
实际列数取「不超过 cols、每列不窄于 minColWidth」的最大值。子组件的 span 按比例缩放:4 列中占 2 列的组件,减到 2 列时占 1 列,减到 1 列时占满一行。
grid 与tabs可以互相嵌套,最多 6 层,更深的部分显示错误卡片。
直接传组件数组(如 LogStatus([a, b]))等同于单列 grid,组件从上到下排列。