股票相关的代码
exchangeCD 交易所识别码,参考点击打开链接
securityID 证券代码,格式是“数字.交易所代码”,如000001.XSHG
ticker 证券6位代码, 如‘000001'
assetClass 证券类型,可供选择类型:E 股票,B 债券,F 基金,IDX 指数,FU 期货,OP 期权;默认为 E。
site 证券交易场所,包括"SH"、"SZ"。"SH"指上海证券交易所、"SZ"指深圳证券交易所
单支股票页面
加载时需要提供的初始数据包活:
--当前价
--涨跌百分比,当前价与结算价的比较
--股票代码,如sh600081
--结算价,昨日收盘价
--总股本
--流通股本,相当于stock_basic中的nonrestfloatA,无限售流通股本(最新)
定时更新的数据包括
行情访问:http://hq.sinajs.cn
图数据访问:http://data.gtimg.cn
个股行情
URL
http://qt.gtimg.cn/q=sz000858
返回
v_sz000858="51~五 粮 液~000858~27.78~27.60~27.70~417909~190109~227800~27.78~492~27.77~332~27.76~202~27.75~334~27.74~291~27.79~305~27.80~570~27.81~269~27.82~448~27.83~127~15:00:13/27.78/4365/S/12124331/24602|14:56:55/27.80/14/S/38932/24395|14:56:52/27.81/116/B/322585/24392|14:56:49/27.80/131/S/364220/24385|14:56:46/27.81/5/B/13905/24381|14:56:43/27.80/31/B/86199/24375~20121221150355~0.18~0.65~28.11~27.55~27.80/413544/1151265041~417909~116339~1.10~10.14~~28.11~27.55~2.03~1054.39~1054.52~3.64~30.36~24.84~";
解析
0: 未知 1: 名字 2: 代码 3: 当前价格 4: 昨收 5: 今开 6: 成交量(手) 7: 外盘 8: 内盘 9: 买一
10: 买一量(手)
11-18: 买二 买五
19: 卖一
20: 卖一量
21-28: 卖二 卖五
29: 最近逐笔成交
30: 时间
31: 涨跌
32: 涨跌%
33: 最高
34: 最低
35: 价格/成交量(手)/成交额
36: 成交量(手)
37: 成交额(万)
38: 换手率
39: 市盈率
40:
41: 最高
42: 最低
43: 振幅
44: 流通市值
45: 总市值
46: 市净率
47: 涨停价
48: 跌停价
实时资金流向
URL
http://qt.gtimg.cn/q=ff_sz000858
返回数据
v_ff_sz000858="sz000858~41773.67~48096.67~-6322.99~-5.53~10200.89~14351.02~-4150.13~-3.63~114422.25~53015.90~59770.57~五 粮 液~20121221";
解析
0: 代码 1: 主力流入 2: 主力流出 3: 主力净流入 4: 主力净流入/资金流入流出总和 5: 散户流入 6: 散户流出 7: 散户净流入 8: 散户净流入/资金流入流出总和 9: 资金流入流出总和1+2+5+6 10: 未知 11: 未知 12: 名字 13: 日期
盘口分析
URL
http://qt.gtimg.cn/q=s_pksz000858
返回数据
v_s_pksz000858="0.196~0.258~0.221~0.325";
解析
0: 买盘大单 1: 买盘小单 2: 卖盘大单 3: 卖盘小单
简要信息
URL
http://qt.gtimg.cn/q=s_sz000858
返回数据
v_s_sz000858="51~五 粮 液~000858~27.78~0.18~0.65~417909~116339~~1054.52";
解析
0: 未知
1: 名字
2: 代码
3: 当前价格
4: 涨跌
5: 涨跌%
6: 成交量(手)
7: 成交额(万)
8:
9: 总市值
股票相关的术语
Trade:交易;发生时机:当卖家同意以某个特定价格转移一定数量的股票(或有价证券)所有权给买家
Orders:买卖盘;买家和卖家如何实现Trade(交易),这就需要一个中心市场,Stock Market(股市),掮客们汇聚股市,然后对特定的股票叫买或叫卖,比如我想以¥35.50的价格买入500股东方科技的股票,以¥65.34的价格卖出中国石油的股票,这都是买卖盘
Buy Orders(Bid Orders):买盘
Sell Orders(Ask Orders或Offer Orders):卖盘
交易发生两种情形:当买盘价格高于或等于当前最低的卖盘价格的时候,或当卖盘价格低于或等于最高的买盘价时。这个过程又叫Match(撮合),关于撮合交易系统的设计,参考这个问答
如何设计一个证券期货撮合竞价引擎?
如果提交的Order(委托或报价)不能被撮合,会发生什么事情?它会被放入一个叫Order Book(委托记录或报价单)的地方,里面有一连串的Order,这些委托会一直保存到交易人员取消或交易过期(比如当日委托闭市后)
有些委托会在部分成交后立即过期,被称作'immediate or cancel' (IOC) 或'fill and kill' (FAK),就是
按最优报价最大限度成交,不成部分系统自动撤单
这部分过期的委托不会再次进入Order Book,不管它们是否Match
Order Book(委托记录或报价单)
Order Book记录了所有的未成交的股票买卖委托,它就像一个分类广告牌,任何人都可以看到所有的买卖信息,这些记录,可以被称作book,depth,queue
Order Book中的委托的只能与新出现的一条Order进行撮合,该Order必须在Book中的最优先位置上。
Order Book中的Order是以price-time priority(价格时间优先)排序的,先委托的最高买价优先级最高,先委托的最低卖价优先级最高
一个交易的实例
买价和卖价相交,交易系统检查相交的价格然后执行相交数量的交易,买价的全部100股与卖价150股当中的100股在23.34的价格处成交,卖价的50股重新放置到Book中,
Market Quotes(市场行情)
比如最高买入价,最低卖出价,以及有多少买入卖出
Spead(价差)
最高买价(Bid)与最低卖价(Ask)之间的差异被称作Spread
买卖的价格变动必须有一定的幅度(specified increments),股票交易中最小的价格变动称为tick size,因此每支股票的最小价差就由最小变动幅度tick size指示,国内的tick size为¥0.01元,其它国家的tick size可能是其它值
Market Data(市场数据)
有几种不同等级的市场数据,数据的质量取决于粒度Granularity与详情Detail
Granularity(粒度)
指的是可观测时间间隔内的数据,快照记录的是特定时间点,比如收盘价或一天内每一分钟的市场行情
基于事件的观测在每一次有相关字段更新时被记录,比如交易更新,委托记录变动
Detail
指的是数据集中包含何种信息,有三种等级的市场数据,分别是trades, quotes and depth
tick数据
交易所收到的是tick数据,也就是分笔行情数据,也可以被称为成交明细数据。一半每秒钟两次,但如果没有行情的话,也可能没有
Trade数据
也就是交易数据,每来一个tick数据,CTP插件就会检查该tick内是否有新的交易产生,如果有的话,则组合成一个新的trade数据,trade数据中主要包括:价格和成交量。
Quote数据
也就是行情数据,每来一个tick数据,CTP插件就会组合出一个quote数据,包括:买一,卖一相关数据。
Market Depth数据
深度行情数据,每来一个tick数据,CTP期货插件就会产生两条Market Depth数据,分别包括买一价,买一量;卖一价,卖一量。
Level1
以国内沪深股市为例,十几年来level1的即时行情始终保持了6秒一次的快照刷新频率(最近几年提升为3秒),提供的买卖挂盘信息从3档变更为5档。
通常把Trade和Quote数据的更新合称为Level1,而把Depth数据的更新称作Level2
Trade Update(交易更新)
交易价格形式的更新是最简单的一种,比如每日收盘价
下面是某股市上某支股票的日收盘价样本
Date Open High Low Close Volume
2013-02-05 37.80 37.94 37.68 37.92 5683782
2013-02-04 37.38 37.61 37.33 37.48 6140610
2013-02-03 37.50 37.64 37.42 37.62 6676410
2013-02-02 37.30 37.30 37.04 37.17 6936594
2013-02-01 37.25 37.27 36.95 37.10 13737522
2013-01-31 36.90 37.22 36.82 37.16 7174644
2013-01-30 37.00 37.15 36.86 37.06 9143136
2013-01-29 36.54 36.85 36.50 36.58 5569151
在日收盘价的基础上再往前一步就是盘中交易记录(又叫tick data),也就是说某支股票一系列的记录,包含每一笔交易的详情,大概包含如下字段
- Symbol - Security symbol (e.g. BHP)证券代码
- Exchange - Exchange the trade occurred on (e.g. ASX, CXA)交易所
- Price - Transaction price交易价
- Quantity - Transaction quantity交易量
- Time - Transaction date and time (this will be in milliseconds or microseconds if it's a good dataset)交易时间
- Trade Type (Condition Codes) - What type of trade it was (e.g. standard, off-market trade report, booking purpose trade)交易类型,标准,场外,预约
实例
Date Time Symbol Exch Price Quantity Type
20110930 11:14:24.475 FMG ASX 4.62 1000
20110930 11:14:24.475 FMG ASX 4.62 5000 XT
20110930 11:14:24.475 FMG ASX 4.62 249
20110930 11:14:24.477 FMG ASX 4.62 25722
20110930 11:14:24.480 FMG ASX 4.62 1518 XT
20110930 11:14:24.482 FMG ASX 4.62 113 XT
20110930 11:14:25.046 FMG ASX 4.62 2702
盘中交易记录通常是第三方软件供应商制作盘中K线图和技术分析,有时候用来做回测
Tick数据是指:每秒两条的快照,国内期货最细粒度就是每秒两次,时间带毫秒。
Quote Updates
一个好的行情包含
- Symbol - Security symbol (e.g. BHP)股票代号
- Exchange - Exchange the quote is from交易所
- Time - Quote update time行情更新时间
- BidPrice - Highest market bid price最高买入价
- BidQuantity - Total quantity available at market bid price买入数量
- AskPrice - Lowest market ask price最低卖出价
- AskQuantity - Total quantity available at market ask price卖出数量
- BidOrders - Number of orders at market bid price
- AskOrders - Number of orders at market ask price
Adjusted Closing Price(Adj price)已调整收盘价,参看如何计算
14:57分收盘停止挂单,15:00正式停盘,但是还有没有完成的委托买进,卖出的交易还在进行.基本上15;01才结束。这时的收盘价才是标准的---已调整收盘价。 你看见的15:00的收盘价不一定就是完全正确的,15:03以后看见的产生准确的。
========================================================================================================================
数据库存储方案
参考一个国外的方案:
Securities Master Database with MySQL and Python
创建三个表;
table1:股票代码,存放市场所有的股票
table2:行情表,存放所有股票每天的行情数据
table3:关联表,创建一个id字典,同时在table1,table2中都添加对应的id,然后table1通过table3关联出table2相关的行情数据
至少两个:
1.股票代码表
如 股票代码:10000 股票名称:浦发银行 上市日期
2.股票行情表
代码 开盘价格 收盘价格 最高价格 最低价格 日期
3.股票公司表
如10000, 公司 ,F10信息
股票基本资料表(股票代码、股票名称、简写、类别<创业板、上证、深证等>) :股票代码作主键
交易行情表(交易日期、股票代码、收盘价、开盘价、最高价、最低价、平均价、振幅、换手率、成交量(手)、成交额......):交易日期、股票代码联合作主键
一个有问题的数据库设计
http://bbs.csdn.net/topics/340231949