输入/搜索内容
内置函数
结构体
Ticker
Depth
OrderBook
Trade
Record
Market
Order
Condition
Account
Asset
Position
Funding
其它结构
HttpQuery-options
HttpQuery-return
LogStatus-table
LogStatus-btnTypeOne
LogStatus-btnTypeTwo
状态栏组件
grid
tabs
kpi
stat
progress
gauge
sparkline
chart
heatmap
calendar
histogram
pie
timeline
markdown
alert
badge
Chart-options
Chart-return
KLineChart-options
KLineChart-return
SetData-data
EventLoop-return
exchange.Go-return
DBExec-return
Dial-return
Thread.join-return
内置变量与常量
通用约定
交易所

收益日历:按日的热力格(类似贡献图),或按年 × 月的收益表。

示例

用日K线的每日涨跌幅画收益日历。

javascript
function main() { var r = exchange.GetRecords(PERIOD_D1) if (!r || r.length < 2) return var data = r.slice(1).map(function (b, i) { return [b.Time, b.Close / r[i].Close - 1] }) LogStatus({type: "calendar", title: "每日涨跌", data: data, format: {percent: true, precision: 2}}) }
python
def main(): r = exchange.GetRecords(PERIOD_D1) if not r or len(r) < 2: return data = [[r[i]["Time"], r[i]["Close"] / r[i - 1]["Close"] - 1] for i in range(1, len(r))] LogStatus({"type": "calendar", "title": "每日涨跌", "data": data, "format": {"percent": True, "precision": 2}})
rust
fn main() { let Ok(r) = exchange.GetRecords(None, PERIOD_D1, None) else { return }; if r.len() < 2 { return; } let data: Vec<String> = r.windows(2) .map(|w| format!("[{}, {}]", w[1].Time, w[1].Close / w[0].Close - 1.0)) .collect(); LogStatus!(format!( r#"{{"type": "calendar", "title": "每日涨跌", "data": [{}], "format": {{"percent": true, "precision": 2}}}}"#, data.join(",") )); }

属性

名称类型描述

type

string

必填,固定为 calendar。

data

array

必填。[日期, 数值] 数组:日期为毫秒时间戳,或 YYYY-MM-DD、YYYY-MM 字符串;同一天的值相加。

mode

string

day:按日热力格,最多显示 53 周;month:年 × 月表格,带全年合计。默认 day。

format

object

数值格式 {precision, compact, percent},见状态栏组件。

title

string

标题,显示在组件左上角。

id

string

稳定标识。组件的个数或顺序会变化时设置,状态栏刷新时组件不重建。

span

number

在所在grid中占几列。默认 1。

参考

备注

正值涨色、负值跌色,深浅按绝对值。day 模式只显示精确到日的数据;month 模式把同一个月的值相加。时间戳按浏览器所在时区换算成日期。