Files
zszq-trs/YLErpDAL/Modules/DataCacheModule/IUnderlyingDataSource.cs
T
2024-05-09 14:06:26 +08:00

53 lines
1.4 KiB
C#

using YLErp.Abstract.DataProviders;
namespace YLErp.Modules.DataCacheModule
{
/// <summary>
/// 标的数据源缓存接口
/// </summary>
public interface IUnderlyingDataSource : Abstract.IDataSource<underlying_manager>, IPriceProvider
{
/// <summary>
/// 根据标的代码获取标的信息,标的代码不区分大小写(包含组合标的)
/// </summary>
underlying_manager GetData(string underlyingCode);
/// <summary>
/// 更新价格
/// </summary>
bool UpdatePrices(bool delay);
/// <summary>
/// 获取组合标的
/// </summary>
SyntheticUnderlying GetSyntheticUnderlying(string underlyingCode);
/// <summary>
/// 获取数量转份额的乘积因子(最小为1)
/// </summary>
int GetCountRatio(string underlyingCode);
/// <summary>
/// 更新标的资产启用状态
/// </summary>
void UpdateLauchState();
/// <summary>
/// 获取价格
/// </summary>
double GetPrice(int underlyingId);
/// <summary>
/// 获取价格
/// </summary>
bool TryGetPrice(int underlyingId, out double price);
/// <summary>
/// 初始化数据
/// </summary>
/// <param name="underlyingCodes"></param>
/// <returns></returns>
bool InitData(List<string> underlyingCodes);
}
}