YIELD_LAST
YIELD_LAST 表示 last 口径对应的收益率历史数据。它主要用于固定收益产品,不应用普通股票价格思维理解。
官方参考:Historical Bar Data
app.reqHistoricalData( 1015, contract, "", "1 M", "1 day", "YIELD_LAST", 1, 1, False, [],)如果你的报表同时展示债券价格和收益率,建议把 YIELD_LAST 存在独立字段中,例如:
row = { "date": bar.date, "yield_last": float(bar.close), "data_type": "YIELD_LAST",}这样可以避免后续图表、回测或导出报表把收益率误显示为价格。
如果用普通股票请求,常见结果是没有对应收益率历史数据,例如:
BAR_TOTAL_COUNT=reqId=4215;name=yield_last;count=0ERROR=reqId=4215;name=yield_last;code=162;msg=历史市场数据服务错误消息:No historical market data for AAPL/STK@NASDAQBBO LastYield 1d这说明 YIELD_LAST 不是股票 last price 的替代写法。股票成交价历史数据应使用 TRADES。