行情数据格式

数据格式

market_type:

/**
     * @brief 市场类型定义
     */
    enum
    {
        kNone       = 0,                ///< 表示全市场 
        kNEEQ       = 2,                ///< 北交所
        kSHFE       = 3,                ///< 上期所
        kCFFEX      = 4,                ///< 中金所
        kDCE        = 5,                ///< 大商所
        kCZCE       = 6,                ///< 郑商所
        kINE        = 7,                ///< 上海国际能源交易中心
        kSSE        = 101,              ///< 上交所
        kSZSE       = 102,              ///< 深交所
        kHKEx       = 103,              ///< 港交所
        kMax        = 150               ///< 市场类型最大值
    };

1、逐笔委托

主要证券代码、委托时间、委托价格、委托数量、委托方向、订单类别。

struct MDTickOrder
{
    int32_t market_type;                                        // 市场类型
    char    security_code[ConstField::kSecurityCodeLen];        // 证券代码
    int32_t channel_no;                                         // 频道号
    int64_t appl_seq_num;                                       // 频道索引
    int64_t order_time;                                         // 时间(YYYYMMDDHHMMSSsss)
    int64_t order_price;                                        // 委托价格,实际值需除以1000000
    int64_t order_volume;                                       // 委托数量,实际值需除以100
    uint8_t side;                                               // 买卖方向 (1-买 2-卖 G-借入 F-出借)
    uint8_t order_type;                                         // 订单类别 (1-市价 2-限价 U-本方最优)
    char    md_stream_id[ConstField::kMDStreamIDMaxLen];        // 行情类别
};

2、逐笔成交

struct MDTickExecution
{
    int32_t market_type;                   // 市场类型
    char    security_code[10];             // 证券代码
    int64_t exec_time;                     // 时间(YYYYMMDDHHMMSSsss)
    int32_t channel_no;                    // 频道号
    int64_t appl_seq_num;                  // 频道编号
    int64_t exec_price;                    // 委托价格,实际值需除以1000000
    int64_t exec_volume;                   // 委托数量,实际值需除以100
    int64_t value_trade;                   // 成交金额,实际值需除以100000
    int64_t bid_appl_seq_num;              // 买方委托索引
    int64_t offer_appl_seq_num;            // 卖方委托索引
    uint8_t side;                          // 买卖方向(仅上海有效 B-外盘,主动买 S-内盘,主动卖 N-未知)
    uint8_t exec_type;                     // 成交类型(仅深圳有效 4-撤销 F-成交)
    char    md_stream_id[6];          	   // 行情类别
};

3、市场行情快照

struct MDSnapshot
{
    int32_t market_type;                                          // 市场类型
    char    security_code[ConstField::kSecurityCodeLen];          // 证券代码
    int64_t orig_time;                                            // 时间(YYYYMMDDHHMMSSsss)
    char    trading_phase_code[ConstField::kTradingPhaseCodeLen]; // 产品实时阶段及标志
    //************上海现货快照交易状态************
    //该字段为8位字符串,左起每位表示特定的含义,无定义则填空格。
    //第0位:‘S’表示启动(开市前)时段,‘C’表示集合竞价时段,‘T’表示连续交易时段,
    //‘E’表示闭市时段 ,‘P’表示临时停牌,
    //‘M’表示可恢复交易的熔断(盘中集合竞价),‘N’表示不可恢复交易的熔断(暂停交易至闭市)
    //‘U’表示收盘集合竞价
    //第1位:‘0’表示此产品不可正常交易,‘1’表示此产品可正常交易。
    //第2位:‘0’表示未上市,‘1’表示已上市
    //第3位:‘0’表示此产品在当前时段不接受进行新订单申报,‘1’ 表示此产品在当前时段可接受进行新订单申报。

    //************深圳现货快照交易状态**************
    //第 0位:‘S’= 启动(开市前)‘O’= 开盘集合竞价‘T’= 连续竞价‘B’= 休市‘C’= 收盘集合竞价‘E’= 已闭市‘H’= 临时停牌‘A’= 盘后交易‘V’=波动性中断
    //第 1位:‘0’= 正常状态 ‘1’= 全天停牌
    int64_t pre_close_price;                                 // 昨收价,实际值需除以1000000
    int64_t open_price;                                      // 开盘价,实际值需除以1000000
    int64_t high_price;                                      // 最高价,实际值需除以1000000
    int64_t low_price;                                       // 最低价,实际值需除以1000000
    int64_t last_price;                                      // 最新价,实际值需除以1000000
    int64_t close_price;                                     // 收盘价,实际值需除以1000000
    int64_t bid_price[ConstField::kPositionLevelLen];        // 申买价,实际值需除以1000000
    int64_t bid_volume[ConstField::kPositionLevelLen];       // 申买量,实际值需除以100
    int64_t offer_price[ConstField::kPositionLevelLen];      // 申卖价,实际值需除以1000000
    int64_t offer_volume[ConstField::kPositionLevelLen];     // 申卖量,实际值需除以100
    int64_t num_trades;                                      // 成交笔数
    int64_t total_volume_trade;                              // 成交总量,实际值需除以100
    int64_t total_value_trade;                               // 成交总金额,实际值需除以100000
    int64_t total_bid_volume;                                // 委托买入总量,实际值需除以100
    int64_t total_offer_volume;                              // 委托卖出总量,实际值需除以100
    int64_t weighted_avg_bid_price;                          // 加权平均为委买价格,实际值需除以1000000
    int64_t weighted_avg_offer_price;                        // 加权平均为委卖价格,实际值需除以1000000
    int64_t IOPV;                                            // IOPV净值估产,实际值需除以1000000
    int64_t yield_to_maturity;                               // 到期收益率,实际值需除以1000
    int64_t high_limited;                                    // 涨停价,实际值需除以1000000
    int64_t low_limited;                                     // 跌停价,实际值需除以1000000
    
    int64_t price_earning_ratio1;                            // 市盈率1,实际值需除以1000000
    int64_t price_earning_ratio2;                            // 市盈率2,实际值需除以1000000
    int64_t change1;                                         // 升跌1(对比昨收价),实际值需除以1000000
    int64_t change2;                                         // 升跌2(对比上一笔),实际值需除以1000000
    int32_t channel_no;                                      // 频道代码
    char    md_stream_id[ConstField::kMDStreamIDMaxLen];
    char    instrument_status[ConstField::kTradingPhaseCodeLen]; // 当前品种交易状态
    int64_t pre_close_iopv;                             // 基金T-1日收盘时刻IOPV, 实际值需除以1000000
    int64_t alt_weighted_avg_bid_price;                 // 债券加权平均委买价格, 实际值需除以1000000
    int64_t alt_weighted_avg_offer_price;               // 债券加权平均委卖价格, 实际值需除以1000000
    int64_t etf_buy_number;                             // ETF 申购笔数
    int64_t etf_buy_amount;                             // ETF 申购数量,实际值需除以100
    int64_t etf_buy_money;                              // ETF 申购金额,实际值需除以100000
    int64_t etf_sell_number;                            // ETF 赎回笔数
    int64_t etf_sell_amount;                            // ETF 赎回数量,实际值需除以100
    int64_t etf_sell_money;                             // ETF 申购金额,实际值需除以100000
    int64_t total_warrant_exec_volume;                  // 权证执行的总数量,实际值需除以100
    int64_t war_lower_price;                            // 债券质押式回购品种加权平均价, 实际值需除以1000000
    int64_t war_upper_price;                            // 权证涨停价格, 实际值需除以1000000
    int64_t withdraw_buy_number;                        // 买入撤单笔数
    int64_t withdraw_buy_amount;                        // 买入撤单数量,实际值需除以100
    int64_t withdraw_buy_money;                         // 买入撤单金额,实际值需除以100000
    int64_t withdraw_sell_number;                       // 卖出撤单笔数
    int64_t withdraw_sell_amount;                       // 卖出撤单数量,实际值需除以100
    int64_t withdraw_sell_money;                        // 卖出撤单金额,实际值需除以100000
    int64_t total_bid_number;                           // 买入总笔数
    int64_t total_offer_number;                         // 卖出总笔数
    int32_t bid_trade_max_duration;                     // 买入委托成交最大等待时间
    int32_t offer_trade_max_duration;                   // 卖出委托成交最大等待时间
    int32_t num_bid_orders;                             // 买方委托价位数
    int32_t num_offer_orders;                           // 卖方委托价位数
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值