106 lines
2.4 KiB
Java
106 lines
2.4 KiB
Java
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<StockData> getRealtimeStockData();
|
|
|
|
/**
|
|
* 根据股票代码获取历史数据
|
|
*
|
|
* @param stockCode 股票代码
|
|
* @param startDate 开始日期
|
|
* @param endDate 结束日期
|
|
* @return 历史股票数据列表
|
|
*/
|
|
List<StockData> getHistoryData(String stockCode, LocalDateTime startDate, LocalDateTime endDate);
|
|
|
|
/**
|
|
* 获取涨幅排行榜
|
|
*
|
|
* @param limit 排行数量
|
|
* @return 涨幅排行榜
|
|
*/
|
|
List<StockData> getGrowthRanking(Integer limit);
|
|
|
|
/**
|
|
* 获取市值排行榜
|
|
*
|
|
* @param limit 排行数量
|
|
* @return 市值排行榜
|
|
*/
|
|
List<StockData> getMarketCapRanking(Integer limit);
|
|
|
|
/**
|
|
* 获取成交量排行榜
|
|
*
|
|
* @param limit 排行数量
|
|
* @return 成交量排行榜
|
|
*/
|
|
List<StockData> getVolumeRanking(Integer limit);
|
|
|
|
/**
|
|
* 获取股票趋势分析
|
|
*
|
|
* @param stockCode 股票代码
|
|
* @param days 分析天数
|
|
* @return 股票趋势分析结果
|
|
*/
|
|
StockTrendVO getStockTrend(String stockCode, Integer days);
|
|
|
|
/**
|
|
* 获取市场综合分析
|
|
*
|
|
* @return 市场分析结果
|
|
*/
|
|
StockAnalysisVO getMarketAnalysis();
|
|
|
|
/**
|
|
* 获取股票预测数据
|
|
*
|
|
* @param stockCode 股票代码
|
|
* @param days 预测天数
|
|
* @return 预测数据列表
|
|
*/
|
|
List<StockData> getStockPrediction(String stockCode, Integer days);
|
|
|
|
/**
|
|
* 搜索股票
|
|
*
|
|
* @param keyword 搜索关键词
|
|
* @return 搜索结果
|
|
*/
|
|
List<StockData> searchStocks(String keyword);
|
|
|
|
/**
|
|
* 保存股票数据
|
|
*
|
|
* @param stockData 股票数据
|
|
* @return 保存结果
|
|
*/
|
|
StockData saveStockData(StockData stockData);
|
|
|
|
/**
|
|
* 批量保存股票数据
|
|
*
|
|
* @param stockDataList 股票数据列表
|
|
* @return 保存数量
|
|
*/
|
|
Integer batchSaveStockData(List<StockData> stockDataList);
|
|
} |