using YLErp.Configuration.Enums;
using static YLErp.DBModels.Consts.ConsReport;
namespace YLErp.Configuration
{
public interface IErpConfig
{
///
///
///
CompanyEnum Company { get; }
///
/// 公司名称缩写,如GTJA
///
string CompanyAbbreviation { get; }
///
/// 公司名称
///
string CompanyName { get; }
///
/// 公司英文名称
///
string CompanyEnName { get; }
///
/// 公司简称,如:国泰君安
///
string CompanyShortName { get; }
///
/// 公司全名
///
string CompanyFullName { get; }
///
/// 波动率模式
///
VolModeEnum VolMode { get; }
///
/// 是否检查密码符合监管要求
///
bool CheckPassword { get; }
///
/// 是否在风险对冲页面采用自动对冲策略
///
bool IsUseHedgingRule { get; }
///
/// 自动生成交易确认书、结算单、提前终止确认书等
///
bool IsAutoGenerateContracts { get; }
///
/// 是否支持简洁版的出入金导入
///
bool SupportEntryExitSimpleVersion { get; }
///
/// RealTime相关信息通知的角色
///
string RealTimeServiceNotifyRoles { get; }
///
/// 是否显示RealTime相关信息通知
///
bool ShowRealTimeServiceNotify { get; }
///
/// 资金记录页面是否显示和客户的其他资金往来记录
///
bool IsShowOtherClientCash { get; }
///
/// 部署组件版本
///
ComponentVersion ComponentVersion { get; }
///
/// 默认True需要设置限制的交易品种, 如果为false,新增授信页不限制交易品种,不用显示“是否限制交易品种”选项
///
bool CanSelectCreditVariety { get; }
///
/// 银行账户只能在下拉中选择
///
bool IsBankOnlyDropDown { get; }
///
/// 授信控制
///
bool IsCreditLimit { get; }
///
///
///
bool IsEodSendMaturityEmail { get; }
///
/// 交易审核是否显示交易信息
///
bool IsTradeCheckInfo { get; }
///
/// 持仓市值(Pv)计算是否包含保底收益
///
bool IsPVIncludePrincipal { get; }
///
/// 是否用权利金单价计算
///
bool IsTradeSinglePriceCalcu { get; }
///
///
///
bool UseOldGenerateBook { get; }
///
///
///
bool ShowAccruedTotalPnL { get; }
///
///
///
bool IsExportEntryexit { get; }
///
///
///
bool UseSingleLogin { get; }
bool UseDisplayNotional { get; }
///
/// 已经弃用的配置,看到就可以删掉了
///
bool IsShowCompanyCash { get; }
///
/// 是否在盯市报告资金状态里面显示总盈亏
///
bool TradeMarketShowTotalNetSettlement { get; }
///
///
///
bool IsAmendableAfterConfirm { get; }
///
/// 是否是在确认书生成后才能执行
///
bool ExecuteAfterGeneratedConfirmDoc { get; }
///
/// 美式提前行权是否和到期行权用相同的结算单模板),默认值为True
///
bool IsSingleExecutionTemplate { get; }
///
/// GenerateAmendDoc如果为true,在保存修改信息时,生成一个交易变更确认书文档并下载
///
bool IsGenerateAmendDoc { get; }
///
/// 持仓市值是否进行四舍五入处理
///
bool IsPVRounded { get; }
///
/// 自定义交易收盘时是否跳过验证自定义风险指标
///
bool IsMustRiskManual { get; }
///
/// 确认成交,是否进行“资金状况”提示
///
bool IsAvailableForClient { get; }
///
/// 收盘时交易是否自动延期结算
///
bool IsAutoDelaySettlement { get; }
///
/// 持仓使用固定预付金比例计算是否使用期初价格
///
bool EodFixedMarginUseSpotPrice { get; }
///
/// 模板或者其他相关文件的路径
///
string DocPath { get; }
///
/// 追保通知里是否加上额外追保
///
bool NeedAdditionalMargin { get; }
///
/// 在收盘时使用老的EodPnLExplainer方法
///
bool UseOldEodPnLExplainer { get; }
///
/// 平值期权报价,当到期日是非交易日时,是否向前移;如果false,则向后移
///
bool AtmQuotePreviousBizDayAdjust { get; }
///
/// 是否采用SkewMap的方法构造波动率,目前只有光大光子采用此模式
///
bool SkewMapVolConstruction { get; }
///
/// 在报价中,TTM是否精确到分钟级别
///
bool PrecisionOfMinuteInQuote { get; }
///
/// 波动率曲面上的日期节点的shift规则
///
VolSurfaceKeyDateShiftEnum VolSurfaceKeyDateShift { get; }
///
/// 波动率曲面的期限,是否不包含截止日期
/// 例如,估值日为2019-04-09,1M期限:
/// 当VolSurfaceTermExcludeEndDate为true,则到期日为2019-05-08
/// 当VolSurfaceTermExcludeEndDate为false,则到期日为2019-05-09
///
bool VolSurfaceTermExcludeEndDate { get; }
///
/// 双向预付金
///
bool TwoSideMargin { get; }
///
/// 是否展示计算维持预付金的Spv
///
bool NeedShowSpv { get; }
///
/// 是否是权益类预付金算法
///
bool IsStockMargin { get; }
///
/// 结算报告是否显示持仓预付金
///
bool PositionDetialShowMargin { get; }
///
/// TapConsoleWebServer
///
string TapConsoleWebServer { get; }
///
/// Web Base Url
///
string YLErpWebUrl { get; }
///
/// 是否使用更加精确的波动率
///
bool VolMoreAccurate { get; }
///
/// 是否包含客户端
///
bool HasClientSide { get; }
///
/// 客户端是否可以注册
///
bool HasClientSign { get; }
///
/// 公司ID(由镒链分配)
///
string CompanyID { get; }
///
/// 客户上传文件审核是否启用
///
bool ClientFileAudit { get; }
///
/// 客户上传文件审核记录
///
string ClientFileAuditItems { get; }
///
/// Qdp计算的并行度,小于等于1时代表不并行;该数字不要超过机器的CPU核数
///
int QdpParallelDegree { get; }
///
/// 外部定价引擎服务的Url地址
///
string ExternalPricingServiceUrl { get; }
///
/// 确认书用印记录
///
bool ConfirmBookStampStatus { get; }
///
/// 板块性质别名配置
///
string UnderlyingBlockConfig { get; set; }
///
/// 交易编号必须大写
///
bool UpperTradeNumber { get; }
///
/// 交易编号是否允许修改
///
bool CanEditTradeNumber { get; }
///
/// 能否设置和导出成交溢价和了结溢价
///
bool CanSetTradePremium { get; set; }
///
/// 场内期权是否使用行情价收盘
///
bool ExchangeOptionSettleByPrice { get; }
///
/// 多标的组合交易时使用单标的最大名义本金
///
bool UseStockEqvNotionalMax { get; }
///
/// 是否在实时风险中计算凤凰和雪球的所有greeks
///
bool CalcAutocallGreeksInRisk { get; }
///
/// 券商环境
///
bool SecuritiesEnvironment { get; }
///
/// 证券业报送定期报告最大可报告月
///
int ReportMaxMonth { get; }
///
/// 只使用结算确认书页面
///
bool SettlementPageV2 { get; }
bool SAC_FtpUsePassive { get; }
///
/// 远程地址
///
string SAC_RemotePath { get; set; }
///
/// 发件箱远程地址
///
string SAC_RemotePath_Outbox { get; }
///
/// FTP是否启用SSL
///
bool SAC_EnableSsl { get; }
///
/// 登录远程地址的用户名
///
string SAC_RemoteUser { get; set; }
///
/// 登录远程地址的密码
///
string SAC_RemotePassword { get; set; }
///
/// 金仕达视图附件FTP远程地址
///
string KingstarView_RemotePath { get; set; }
///
/// 金仕达视图附件FTP是否启用SSL
///
bool KingstarView_EnableSsl { get; }
///
/// 金仕达视图附件FTP登录远程地址的用户名
///
string KingstarView_RemoteUser { get; set; }
///
/// 金仕达视图附件FTP登录远程地址的密码
///
string KingstarView_RemotePassword { get; set; }
///
/// 金仕达视图附件FTP连接方式是否为被动模式
///
bool KingstarView_FtpUsePassive { get; set; }
///
/// 金仕达视图附件本地存放目录
///
string KingstarView_LocalViewAttDir { get; set; }
///
/// 金仕达视图附件FTP远程文件服务器存放根路径
///
string KingstarView_RemoteFileRootPath { get; set; }
///
/// FDEP收件箱目录
///
string SAC_FDEPInboxPath { get; }
///
/// FDEP发件箱目录
///
string SAC_FDEPOutboxPath { get; }
///
/// 子系统发件箱目录
/// 只支持本地系统
///
string SAC_SubSystemOutboxPath { get; }
///
/// 子系统收件箱目录
/// 只支持本地系统
///
string SAC_SubSystemInboxPath { get; }
///
/// 证券业报送中定期报告取值模式
/// 1=Db;
/// 2=Excel模板;
/// 3=Db+Excel模板(该方式中涉及百分比汇总计算时仍使用模板中数据)
/// 4=金仕达视图(该方式只涉及互换确认书及存续期的数据)
/// 5=Db+金仕达视图
/// 6=Excel+金仕达视图
/// 7=Db+Excel+金仕达视图
///
SAC_ReportDataSourceEnum SAC_ReportDataSource { get; }
///
/// 金仕达视图链接字符串
///
string KingstarViewConnectionString { get; }
///
/// 金仕达视图链接名
///
string KingstarViewTableSchema { get; }
///
/// 是否隔离报备信息
///
bool NeedIsolateSACInfo { get; }
///
/// 严格的权限验证
///
bool StrictAuthorize { get; }
///
/// 禁用账号密码登录(仅允许SSO)
///
bool DisablePasswordLogin { get; }
///
/// 风险对冲累积总盈亏是否统计已过期的场内交易
///
bool RiskAccPnl_SumExpiredExchangeTrades { get; }
///
/// 收盘配置
///
string SettlementConfig { get; }
///
/// 用友科目编码
///
string YongYouKeMuCode { get; }
///
/// 成交首日结算波动率扣除比例
///
string TradeOpenVolOff { get; }
///
/// 接口审批
/// 0:不开启接口审批
/// 1:仅使用接口审批
/// 2:使用接口审批和系统审批(目前仅控制客户开户管理页面是否显示审批按钮)
///
int InterfaceApprovalMode { get; }
///
/// 收盘时是否执行数据采集相关逻辑
///
bool UseSettleDataAcquisition { get; }
///
/// EodVar中百分比的默认值;
///
double EodVarPvPercent { get; }
///
/// 文件上传允许的文件类型(多个类型用'|'分隔),样例:.xlsx|.docx
///
string UploadFileAccepts { get; }
///
/// 交易定价要素配置(querystring格式)
///
string TradePricingCfg { get; }
///
/// 是否限制客户名义本金规模
///
bool UseClientStockEqvNotional { get; }
///
/// 平滑过渡日历处理模式
///
SmoothingDaycountMode SmoothingDaycountMode { get; }
///
/// 销售模式
///
SaleMode SaleMode { get; }
///
/// 累计转远期:远期多空和买卖方向赋值配置
///
OptionTypeAndBuySell OptionTypeAndBuySell { get; }
///
/// 远期开仓是否补偿远期价值
///
ForwardValueIsSupplyOrPay ForwardValueIsSupplyOrPay { get; }
///
/// 标的资产信息缓存配置
///
string UnderlyingCacheCfg { get; }
///
/// 是否禁止匿名访问文件(比如App_Docs文件夹中的文件)
///
bool DisableAnonymousAccessFiles { get; }
///
/// 远期交易价格模式
///
ForwardTradePriceModel ForwardTradePriceModel { get; }
///
/// (累计期权)使用'杠杆倍数
///
bool AccumulatorShowMultiplier1 { get; }
///
/// 实时风险-跳过特定交易类型的计算
///
string RealtimeRisk_SkipTradeTypes { get; }
string SalesCommissionCalculation { get; }
///
/// 启用外部API
///
bool ExternalAPIForCustomCalcEnable { get; set; }
///
/// 计算自定义交易的api地址
/// 目前仅有自定义结构变更和自定义交易计算时会用到
/// 接口文档参考<广期自定义交易结算API对接>文件应该在腾讯文档上
///
string ExternalAPIForCustomCalc { get; set; }
///
/// 调用外部Api计算自定义交易时的超时时间(秒)
/// 目前仅有自定义结构变更和自定义交易计算时会用到
/// 接口文档参考<广期自定义交易结算API对接>文件应该在腾讯文档上
///
int ExternalAPIForCustomCalcTimeOut { get; set; }
bool IsForwardTradeToBuy { get; set; }
///
/// 是否需要计算实时预警
///
bool IsCalcRealtimeWarning { get; set; }
///
/// 是否允许远程访问admin
///
bool AdminEnableRemote { get; }
///
/// 文件上传大小限制(单位KB)
///
int UploadFileSizeLimit { get; }
///
/// 对冲交易接口网址
///
string HedgingTradeUrl { get; }
///
/// 自定义报送结构类型
///
string CustomStructureTypeSm { get; }
///
/// 亚式期权观察日是否包含起算日
///
bool AsianOptionObDatesIncludeStartDate { get; }
///
/// 客户资金表是否要统计其他资金
///
bool IsSumOthersOnClientCash { get; }
///
/// 限制用户每分钟可以发送的最大邮件数量,如每分钟内发送的量超过限制,
/// 邮件将停留在发件箱,邮件被延迟到下一分钟,并最终被发送成功
///
int MailMessageRateLimit { get; }
///
/// 是否支持多币种結算
///
bool SupportMultiCurrency { get; }
///
/// 是否支持多日历
///
bool SupportMultiCalendar { get; }
///
/// 监管报告-场外业务持仓表-配置
///
string Supervise_Position { get; }
///
/// 日终结算时,到期的场内期权持仓自动执行平仓操作
///
bool AutoCloseExpiriedExchangeOptionPosition { get; }
///
/// 支持专业版雪球
///
bool SuppotSnowballSpecialist { get; }
///
/// 结算报告累计期权每观察日的了结数量是否包含乘数
///
bool IsSettlementReportAccOptionContainMultiplier { get; }
///
/// 结算报告配置(querystring格式)
///
string TradeMarketReportCfg { get; }
///
/// 场内期权波动率类型(Normal:跟随系统波动率模式,ImpliedVol:隐含波动率)
///
ExchangeOptionVolType ExchangeOptionVolType { get; }
///
/// 是否使用电子章系统对确认书进行自动用印并上传用印文件
///
bool IsAutoSealAndUploadFiles { get; }
///
/// 电子用印接口地址
///
string SealApi { get; }
///
/// 电子章用印关键字
///
string SealKeyWord { get; }
///
/// 确认书生成时是否自动用印
///
bool IsAutoSealAfterGeneratedBook { get; }
///
/// 收益互换浮动收益端默认为我方收取,并隐藏收支方向
///
bool SwapFloatingIncomeReceiveOnlyMode { get; }
///
/// 衡泰内证账号
///
public string HTAccount { get; }
///
/// 报送文件开始编号
///
int ReportFileBeginNumber { get; }
///
/// 登录Token过期时间(秒)
///
int LoginTokenExpireSeconds { get; }
///
/// 密码错误次数限制
///
int PasswordErrorLimit { get; }
///
/// 密码错误锁定时间(分钟)
///
int PasswordErrorLockMinutes { get; }
///
/// 收盘回调地址
///
string EodExecCallbackUrl { get; }
}
}