package com.agricultural.stock.service; import com.agricultural.stock.entity.StockData; import com.agricultural.stock.vo.StockAnalysisVO; import com.agricultural.stock.vo.StockTrendVO; import java.time.LocalDateTime; import java.util.List; /** * 股票数据服务接口 * * @author Agricultural Stock Platform Team */ public interface StockService { /** * 获取实时股票数据 * * @return 股票数据列表 */ List getRealtimeStockData(); /** * 根据股票代码获取历史数据 * * @param stockCode 股票代码 * @param startDate 开始日期 * @param endDate 结束日期 * @return 历史股票数据列表 */ List getHistoryData(String stockCode, LocalDateTime startDate, LocalDateTime endDate); /** * 获取涨幅排行榜 * * @param limit 排行数量 * @return 涨幅排行榜 */ List getGrowthRanking(Integer limit); /** * 获取市值排行榜 * * @param limit 排行数量 * @return 市值排行榜 */ List getMarketCapRanking(Integer limit); /** * 获取成交量排行榜 * * @param limit 排行数量 * @return 成交量排行榜 */ List getVolumeRanking(Integer limit); /** * 获取股票趋势分析 * * @param stockCode 股票代码 * @param days 分析天数 * @return 股票趋势分析结果 */ StockTrendVO getStockTrend(String stockCode, Integer days); /** * 获取市场综合分析 * * @return 市场分析结果 */ StockAnalysisVO getMarketAnalysis(); /** * 获取股票预测数据 * * @param stockCode 股票代码 * @param days 预测天数 * @return 预测数据列表 */ List getStockPrediction(String stockCode, Integer days); /** * 搜索股票 * * @param keyword 搜索关键词 * @return 搜索结果 */ List searchStocks(String keyword); /** * 保存股票数据 * * @param stockData 股票数据 * @return 保存结果 */ StockData saveStockData(StockData stockData); /** * 批量保存股票数据 * * @param stockDataList 股票数据列表 * @return 保存数量 */ Integer batchSaveStockData(List stockDataList); }