/**
 * 实时敞口信息返回
 */
export interface ErmcpRealExposureModel {
    AreaUserID	:number;//所属机构
    BuyFutureQty	:number;//买入期货数量
    BuyPlanQty	:number;//采购计划数量
    BuyPricedQty	:number;//采购合同已定价数量
    MiddleGoodsCode	:string;//套保品种代码
    MiddleGoodsHedgeRatio	:number;//套保比例
    MiddleGoodsID	:number;//套保品种
    MiddleGoodsName	:string;//套保品种名称
    NeedHedgeExposoure	:number;//应套保敞口(套保敞口)
    NeedHedgeRatio	:number;//应套保敞口比例
    OriBuyFutureQty	:number;//期初买入期货数量
    OriBuyPlanQty	:number;//期初采购计划数量
    OriBuyPricedQty	:number;//期初采购合同已定价数量
    OriSellFutureQty	:number;//期初卖出期货数量
    OriSellPlanQty	:number;//期初销售计划数量
    OriSellPricedQty	:number;//期初销售合同已定价数量
    SellFutureQty	:number;//卖出期货数量
    SellPlanQty	:number;//销售计划数量
    SellPricedQty	:number;//销售合同已定价数量
    TotalExposure	:number;//总敞口
    TotalFutureQty	:number;//期货总量
    TotalHedgeRatio	:number;//敞口比例
    TotalNeedHedgeQty	:number;//应套保总量(现货应套保总量)
    TotalSpotQty	:number;//现货总量
    arbitrageqty	:number;//套利量
    diffArbitrageQty	:number;//套利变动量
    diffExposoureQty	:number;//变动量(套保敞口)
    diffFutuQty	:number;//变动量(期货总量)
    diffHedgeQty	:number;//套保变动量
    diffQty	:number;//变动量(总敞口)
    diffSpotHedgeQty	:number;//变动量(现货应套保总量)
    DiffSpotQty	:number;//变动量(现货总量) = 现货数量 - 期初现货数量
    ENUMDICNAME	:string;//单位名称
    hedgeqty	:number;//套保量
    needarbitrageqty	:number;//应套利量
    needarbitrageratio	:number;//套利比例
    needhedgeqty	:number;//应套保量
    oriTotalFutuQty	:number;//期初期货数量=期初买入期货数量-期初卖出期货数量
    oriTotalSpotQty	:number;//期初现货数量=(期初销售计划数量-期初销售合同已定价数量)-(期初采购计划数量-期初采购合同已定价数量)
    oriarbitrageqty	:number;//期初套利量
    orihedgeqty	:number;//期初套保量
    orineedhedgeexposoure	:number;//期初套保敞口
    oritotalexposure	:number;//期初总敞口
    oritotalfutureqty	:number;//期初期货总量
    oritotalneedhedgeqty	:number;//期初现货应套保量
}

/**
 * 查询实时敞口现货明细请求
 */
export interface Ermcp3ExposureReq {
    middlegoodsid: number  //    套保商品
    usertype?: number //         用户类型 2-机构 7-企业成员
}

/**
 * 实时敞口现货明细返回
 */
export interface Ermcp3ExposureDetail {
    areauserid: number;//机构ID
    changeQty: number;//套保变动量
    contracttype: number;//现货合同类型 - 1:采购 -1:销售
    convertfactor: number;//标仓系数
    convertratio: number;//套保系数
    createtime: string;//时间
    deliverygoodscode: string;//现货品种代码
    deliverygoodsid: number;//现货品种id
    deliverygoodsname: string;//现货品种名称
    enumdicname: string;//现货商品单位名称
    logtype: number;//类型 - 1:套保计划 2:现货合同
    middlegoodsId: number;//套保商品id
    middlegoodscode: string;//套保商品代码
    middlegoodsname: string;//套保商品名称
    qty: number;//数量
    relateNo: string;//现货合同/套保计划编号
}

/**
 * 实时敞口期货明细请求
 */
export interface ErmcpExposurePostionReq {
    middleGoodsId: number //套保商品ID
}

/**
 * 实时敞口期货明细返回
 */
export interface ErmcpExposurePostion {
    agreeunit: string;//合约单位
    areauserid: number;//所属机构id
    convertratio: number;//期货品种系数(折算系数)
    curqty: number;//当前持仓
    diffhedgeqty: number;//套保品种变动量=持仓变动量期货合约单位期货品种系数
    diffqty: number;//持仓变动量=当前持仓-昨日持仓
    goodscode: string;//商品代码
    goodsid: number;//商品id
    goodsname: string;//商品名称
    middlegoodsid: number;//套保商品id
    ydqty: number;//昨日持仓
}


/**
 * 敞口现货头寸返回
 */
export interface Ermcp3AreaSpot {
    areauserid: number;//所属机构
    decreaseqty: number;//减少数量=-(销售已定价数量+采购计划数量)
    deliverygoodscode: string;//现货品种代码
    deliverygoodsid: number;//现货品种id
    deliverygoodsname: string;//现货品种名称
    enumdicname: string;//单位名称
    goodsunitid: number;//现货品种单位id
    increaseqty: number;//增加数量=销售计划数量+采购已定价数量
    oritoalspotqty: number;//昨日数量
    totalspotqty: number;//当前数量(现货头寸总量) = (销售计划数量 - 销售已定价数量) - (采购计划数量 - 采购已定价数量)
    updatetime: string;//更新时间
}

/**
 * 敞口现货头寸明细请求
 */
export interface Ermcp3AreaSpotDetailReq {
    deliverygoodsid: number  // 现货品种ID
}

/**
 * 敞口现货头寸明细(敞口 -> 现货头寸 ->现货明细)
 */
export interface Ermcp3AreaSpotDetail {
    contracttype: number;//合同类型 1-采购 -1-销售
    createtime: string;//创建时间
    deliverygoodscode: string;//现货品种代码
    deliverygoodsid: number;//现货品种id
    deliverygoodsname: string;//现货品种名称
    enumdicname: string;//现货商品单位名称
    logtype: number;//记录类型 1-套保 2-现货合同
    qty: number;//数量
    recordname: string;//类型名称
    relatedid: string;//套保计划ID/现货合同ID
    relatedno: string;//编号
    strtime: string;//时间
}

/**
 * 敞口 -> 期货头寸 敞口期货头寸返回
 */
export interface ErmcpHedgePosition {
    accountid: number;//资金账号[外部母账户]
    curbuyposition: number;//期末买头寸
    cursellposition: number;//期末卖头寸
    curtdbuyposition: number;//期末今日买头寸
    curtdsellposition: number;//期末今日卖头寸
    curydbuyposition: number;//期末上日买头寸
    curydsellposition: number;//期末上日卖头寸
    decreaseqty: number;//减少数量 = (期末卖头寸 - 期初卖头寸)-1
    fretdbuyposition: number;//冻结今日买头寸
    fretdsellposition: number;//冻结今日卖头寸
    freydbuyposition: number;//冻结上日买头寸
    freydsellposition: number;//冻结上日卖头寸
    goodscode: string;//商品代码
    goodsid: number;//商品id
    goodsname: string;//商品名称
    hedgeaccountcode: string;//对冲账号
    hedgegoodsid: number;//对冲合约ID
    increaseqty: number;//增加数量 = 期末买头寸 - 期初买头寸
    marketid: number;//市场ID
    relateduserid: number;//关联用户id
    totalcurqty: number;//当前数量(净头寸) = 期末买头寸 - 期末卖头寸
    totalydqty: number;//昨日数量(净头寸) = 期初买头寸 - 期初卖头寸
    tradedate: string;//交易日(yyyyMMdd)
    ydbuyposition: number;//期初买头寸
    ydsellposition: number;//期初卖头寸
}

/**
 * 查询敞口期货头寸期货明细 请求
 */
export interface ErmcpHedgePositionDetailReq {
    goodsId: number // 商品id
}

/**
 * 查询敞口期货头寸期货明细  敞口 -> 期货头寸 -> 期货明细
 */
export interface ErmcpHedgePositionDetail {
    buyorsell: number;//买卖方向 number;
    //-买 1-卖
    channelbuildtype: number;//开平方向 1-建仓 2-平仓
    goodscode: string;//商品代码
    goodsname: string;//商品名称
    hedgegoodsid: number;//商品id
    tradeqty: number;//数量(成交数量)
    tradetime: string;//时间(成交时间)
}



