Finology 大数据金融

通过大数据以量化金融

万矿这个API,取的名字很不好记,完全猜不出是什么单词的简写。

wsd 日期序列

用于提取多品种单指标或者单品种多指标的时间序列数据。就是说要么是一只股票和多个指标或者是多个股票的一个指标。

一只股票和多个指标,index 为日期,指标名为 columns 的名字。

多个股票和一个指标,index 为日期,股票名为 columns 的名字。

  1. 每次限8000单元格;
  2. 技术指标、技术形态、部分融资融券指标单次限取2000个单元格(大于2000个单元格,可分多次获取)

wss 多维数据

用于提取多品种多指标在某个时间点的截面数据。

  1. 每次限8000单元格;
  2. 技术指标、技术形态、部分融资融券指标单次限取2000个单元格(大于2000个单元格,可分多次获取)

wset 数据集

用来获取数据集信息,主要用于获取板块成分、指数成分以及各证券品种的专题统计报表数据。

  1. 停牌、复牌股票:一次最长获取一个月时间段内的数据;
  2. 分红送转:一次最长获取10年时间段内的数据;
  3. 期货合约持仓排名:一次最长获取一个月时间段内的数据

wses 板块时序

获取选定股票板块一段时间内的历史序列数据。

  1. 支持多板块,但仅支持单指标;
  2. 提取多板块、单指标时,时间跨度<250个交易日、板块数<20;
  3. 提取单板块、单指标时,时间跨度约800个周期。

wsee 板块多维

获取选定股票板块的历史截面数据。

  1. 支持多板块、多指标且板块数*指标数≤1000

wsi 分钟数据

主要包括证券的基本行情和部分技术指标的分钟数据。

  1. 目前只支持上交、深交、中金、上期、大商、郑商的行情;
  2. 每次取一个code的时候,可以取最近3年数据(推荐使用此方法);
  3. 每次取多个code的时候,有如下限制:code数*天数<=100

wst 日内跳价

主要包括证券的日内盘口买卖五档快照数据和分时成交(tick数据)。

  1. 目前只支持上交、深交、中金、上期、大商、郑商的行情;
  2. 可取最近7个交易日的数据;
  3. 一次只能取1个Windcode。

wsq 实时行情

主要包括各证券当天指标实时数据,可以一次性请求实时快照数据,也可以通过订阅的方式获取实时数据。

我们要对一个 DataFrame 做分组统计时,其实跟 SQL 语句的逻辑是差不多的。

groupby.sum(), groupby.count() 等等。

如果要把一个 DataFrame 里的不同列各做 sum(), count() 该如何操作呢?在这里给大家做一个演示。

1
2
3
4
5
6
7
8
9
# 原始数据
keyword_list = ['dog', 'cat', 'horse', 'dog', 'dog', 'horse']
weight_list = [0.12, 0.5, 0.07, 0.1, 0.2, 0.3]
other_keywords_list = [['cat', 'horse', 'pig'], ['dog', 'pig', 'camel'], ['dog', 'camel', 'cat'], ['cat', 'horse'], ['cat', 'horse', 'pig'], ['camel']]

# 生成DataFrame
dict = {'keyword': keyword_list, 'weight': weight_list, 'other keywords': other_keywords_list}
animaldf = pd.DataFrame(data=dict)
animaldf
  keyword weight other keywords
0 dog 0.12 [cat, horse, pig]
1 cat 0.50 [dog, pig, camel]
2 horse 0.07 [dog, camel, cat]
3 dog 0.10 [cat, horse]
4 dog 0.20 [cat, horse, pig]
5 horse 0.30 [camel]
1
2
df = animaldf.groupby('keyword').agg({'keyword': 'count', 'weight': 'sum', 'other keywords': 'sum'})
df
  keyword weight other keywords
keyword
cat 1 0.50 [dog, pig, camel]
dog 3 0.42 [cat, horse, pig, cat, horse, cat, horse, pig]
horse 2 0.37 [dog, camel, cat, camel]

这样就已经达到效果了。

如果接下来要继续对数据进行处理,可以先把 index 的名字 keyword 去掉,不去掉的话,转成列时就和现有列 keyword 名字冲突了。

然后把索引转换成列。

1
2
df.index.name = None
df.reset_index()

最后你想把列改成什么名字就随你了。

JPA, JMS, JTA 都是 Java 企业级规范。

JPA(java persistence API)

JPA 通过JDK5.0的注解或XML来描述 对象-关系表的映射关系,并将运行期的实体对象持久化存储到数据库中。

JMS(java message service)

JMS是java平台上面向中间件的技术规范,便于消息系统中java应用程序进行信心交换,并且通过提供标准的产生、发送、接收消息的接口简化企业应用的开发,翻译为Java消息服务。

XA

一个事务规范,JTA 就是 XA 规范的 Java 实现。

JTA(java transaction API)

JTA允许应用程序执行分布式事务管理,在两个或多个网络计算机资源上访问并且更新数据。JDBC驱动程序的JTA支持极大地增强了数据访问能力。

JTA 接口

JTA 定义了三个接口,分别是:

TransactionManager

XAResource

XID

JT

JTA 弊端

两阶段提交

事务时间太长,锁数据的时间太长

性能低,吞吐量低

0%