哗啦啦python金融量化之路 - 1 - 简单的数据处理并画图

金融量化的第一步:数据统计和分析。

我选择的教材是:利用python进行数据分析 O‘reilly出版

实用案例

1. 处理来自bit.ly的1.usa.gov数据。

  1) 数据: http://www.usa.gov/About/developer-resources/1usagov.shtml

    该数据为常见的json格式

  2)将json转换成字典

    注意事项:我是将该数据以TXT格式保存到本地进行处理的。需要去掉分隔符,同时因为内部有BOM字符,需要去除这些字符。再将这些字典读到列表中。

import osimport json,pickle

from collections import defaultdictfrom collections import Counter

records = []
for line in open("haha6.txt", encoding = "utf8"):
        line = line.strip("\n")
        if line.startswith(u‘\ufeff‘):
            line = line.encode(‘utf8‘)[3:].decode(‘utf8‘) #去掉Bom字符
        line = json.loads(line, encoding = "utf-8")
        records.append(line)

print(records[0])

#output:第一行数据如下:#{‘u‘: ‘http://today.lbl.gov/2016/06/24/saudi-minister-of-energy-visits-lab-on-june-20/#main‘, #‘_id‘: ‘27e6808c-3750-e5ac-002a-cfb577e72a48‘, ‘r‘: ‘direct‘, ‘sl‘: ‘2963Ceb‘, ‘h‘: ‘2963Ceb‘, #‘k‘: ‘‘, ‘a‘: ‘Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML‘, ‘c‘: ‘FR‘, #‘hc‘: 1466804416, ‘nk‘: 0, ‘ll‘: [48.8582, 2.3387], ‘g‘: ‘2963Fqo‘, #‘t‘: 1467187377, ‘hh‘: ‘1.usa.gov‘, ‘l‘: ‘anonymous‘, ‘i‘: ‘‘, ‘tz‘: ‘Europe/Paris‘}

  3) 查找所有的时区,并对其计数

time_zones = [rec["tz"] for rec in records if "tz" in rec]

##时区统计,列表里的字典元素的key的统计
#方法1
def get_counts(sequence):
    counts = {}
    for x in sequence:
        if x in counts:
            counts[x] += 1
        else:
            counts[x] = 1
    return counts
counts = get_counts(time_zones)
print(counts["America/New_York"])

#方法2
def get_counts1(sequence):
    counts = defaultdict(int)
    for x in sequence:
        counts[x] += 1
    return counts
counts = get_counts1(time_zones)
print(counts["America/New_York"])

#output: 353

  4) 取出前十的时区及其计数值

#方法1
def top_counts(count_dict, n = 10):
    value_key_pairs = [(count,tz) for tz, count in count_dict.items()]
    value_key_pairs.sort()
    return value_key_pairs[-n:]
print(top_counts(counts))
#方法2
counts = Counter(time_zones)
counts.most_common(10)
print(counts.most_common(10))

  5) 用pandas简化,对时区进行计数,并给出前十的柱状图

#用pandas对时区进行计数
from pandas import DataFrame
import pandas as pd
import numpy as np
frame = DataFrame(records)
#print(frame)
#tz_counts = frame["tz"].value_counts()
#print(tz_counts[:10])
clean_tz = frame["tz"].fillna("missing") #  缺失值处理
clean_tz[clean_tz == ""] = "unknown" # 空字符串处理
tz_counts = clean_tz.value_counts()
print(tz_counts[:10].plot(kind = "barh", rot=0))

#output是柱状图
时间: 2024-10-05 04:33:18

哗啦啦python金融量化之路 - 1 - 简单的数据处理并画图的相关文章

Python金融量化

Python股票数据分析 最近在学习基于python的股票数据分析,其中主要用到了tushare和seaborn.tushare是一款财经类数据接口包,国内的股票数据还是比较全的 官网地址:http://tushare.waditu.com/index.html#id5.seaborn则是一款绘图库,通过seaborn可以轻松地画出简洁漂亮的图表,而且库本身具有一定的统计功能. 导入的模块: import matplotlib.pyplot as plt import seaborn as sn

Python金融应用编程(数据分析、定价与量化投资)

近年来,金融领域的量化分析越来越受到理论界与实务界的重视,量化分析的技术也取得了较大的进展,成为备受关注的一个热点领域.所谓金融量化,就是将金融分析理论与计算机编程技术相结合,更为有效的利用现代计算技术实现准确的金融资产定价以及交易机会的发现.量化分析目前已经涉及到金融领域的方方面面,包括基础和衍生金融资产定价.风险管理.量化投资等.随着大数据技术的发展,量化分析还逐步与大数据结合在一起,对海量金融数据实现有效和快速的运算与处理. 在量化金融的时代,选用一种合适的编程语言对于金融模型的实现是至关

day32 Python与金融量化分析(二)

第一部分:金融与量化投资 股票: 股票是股份公司发给出资人的一种凭证,股票的持有者就是股份公司的股东. 股票的面值与市值 面值表示票面金额 市值表示市场价值 上市/IPO: 企业通过证券交易所公开向社会增发股票以募集资金 股票的作用: 出资证明.证明股东身份.对公司经营发表意见 公司分红.交易获利 股票的分类 股票按业绩分类: 蓝筹股:资本雄厚.信誉优良的公司的股票 绩优股:业绩优良公司的股票 ST股:特别处理股票,连续两年亏损或每股净资产低于股票面值 股票按上市地区分类: A股:中国大陆上市,

量化资料学习《Python与量化投资从基础到实战》+《量化交易之路用Python做股票量化分析》+《组织与管理研究的实证方法第2版》

我们需要利用Python进行数据分析的指南,有大量的关于数据处理分析的应用,重点学习如何高效地利用Python解决投资策略问题,推荐学习<Python与量化投资从基础到实战>等电子资料. 学习<Python与量化投资从基础到实战>电子书,主要讲解如何利用Python进行量化投资,包括对数据的获取.整理.分析挖掘.信号构建.策略构建.回测.策略分析等.<Python与量化投资>利用Python进行数据分析的指南,有大量的关于数据处理分析的应用,并将重点介绍如何高效地利用P

大数据项目实战之Python金融应用编程(数据分析、定价与量化投资)下载

300转一播放码,下载地址:http://pan.baidu.com/s/1dE1XTpZ 近年来,金融领域的量化分析越来越受到理论界与实务界的重视,量化分析的技术也取得了较大的进展,成为备受关注的一个热点领域.所谓金融量化,就是将金融分析理论与计算机编程技术相结合,更为有效的利用现代计算技术实现准确的金融资产定价以及交易机会的发现.量化分析目前已经涉及到金融领域的方方面面,包括基础和衍生金融资产定价.风险管理.量化投资等.随着大数据技术的发展,量化分析还逐步与大数据结合在一起,对海量金融数据实

python 全栈之路

python 全栈之路 一. python 1. Python基础知识部分 Python Python那点事 Python windows和linux下 安装 Python2,Python3 Python 开启入坑之路 Python 基本数据类型 Python 那些零碎的知识点 Python -函数 Python - 面对对象 Python - 模块 Python - 文件操作 Python - python中经常踩得的坑 2. Python - 网络编程 3. Python - 并发编程 二.

python在量化领域的现状,竟然有点......

量化投资(证券和比特币)开源项目里,全球star数排名前10位里面,有7个是Python实现的.从数据获取到策略回测再到交易,覆盖了整个业务链. 而全球注册用户数最多的商业量化平台Uqer优矿,也同样是基于Python实现和提供服务的.国内后来的其他量化平台,例如RiceQuant和JoinQuant,也主推Python环境.可见Python在量化平台应用的绝对占有程度. 一.很多人会想,语言有那么多吗,为什么偏偏是Python呢? 量化金融分析师AQF为大家进行一个讲解,Python是一门比较

《量化投资以Python为工具》+《Python与量化投资从基础到实战》资料学习

我们需要利用Python进行数据分析的指南,有大量的关于数据处理分析的应用,重点学习如何高效地利用Python解决投资策略问题,推荐<量化投资以Python为工具>电子书代码,主要讲解量化投资的思想和策略,并借助Python 语言进行实战. <量化投资以Python为工具>电子书一共分为5 部分,首先对Python 编程语言进行介绍,通过学习,可以迅速掌握用Python语言处理数据的方法,并灵活运用Python 解决实际金融问题:其次,介绍量化投资的理论知识,主要讲解量化投资所需的

Python全栈之路_01

Python全栈之路 前言:因为Python主要是在Linux和widows操作系统上使用所以,首先就介绍Pyhton在这两个平台上的安装和一些基础知识 Linux系统下安装Pyhton 1.工具 虚拟机:VMware workstation 12 Pro Linux系统:CentOS 64 位 VMware虚拟机安装很简单就不说明了. 在虚拟机安装CentOS 需要注意的是: 运行内存分配1G左右即可 可以开机按F2进入bios界面boot目录下选择启动设备选择Hard Drive为优先启动位