订阅行情并展示

使用 TradingAIMarket 订阅实时行情,配合 SDUI 或 StatusBar 展示。

订阅与取消订阅

dart
// 订阅多个标的
await context.market.subscribe('AAPL');
await context.market.subscribe('MSFT');

// 取消订阅
await context.market.unsubscribe('AAPL');

接收实时推送

通过 onQuoteUpdate 注册回调,每次行情更新时触发:

dart
context.market.onQuoteUpdate((MarketQuote quote) {
  // quote.symbol, quote.price, quote.change, quote.changePercent,
  // quote.volume, quote.timestamp
  print('${quote.symbol}: ${quote.price} (${quote.changePercent}%)');
});

获取快照

需要单次查询时使用 getQuote

dart
final quote = await context.market.getQuote('GOOGL');
if (quote != null) {
  await context.window.showMessage('${quote.symbol}: \$${quote.price}');
}

状态栏展示

将最新价格显示在状态栏:

dart
await context.statusBar.createItem(
  id: 'my_plugin.ticker',
  text: 'AAPL: $price',
  tooltip: 'Last update: $timestamp',
  alignment: 'right',
  priority: 100
);

// 行情更新时
context.market.onQuoteUpdate((quote) {
  context.statusBar.updateItem('my_plugin.ticker', text: '${quote.symbol}: \$${quote.price}');
});

参考

相关 APITradingAIMarketTradingAIChart

示例:extensions/market_dashboard_plugin/lib/features/market_monitor.dart,完整行情订阅、图表指标、价格提醒实现。