总理整节从事量化交易员所做工作与代码

数据获取(期权数据)

本人从事领域为量化期权领域(皇冠上的明珠,真好听,可是做起来,难度真是(滴-------------))。从最开始的手动从三大所复制粘贴期权数据,到现在爬虫整理数据,再之后借助第三方获取数据,这个历程真的是无以复加。就想说(滴---------------------)。
不废话,直接上干货。(要求,复制我代码可以拿过去就直接跑出和我一样的结果出来。如果没有,欢迎留言,一同克服难关。)
首先wind数据源获取数据:

#导包
import pandas as pd
import numpy as np
from scipy.interpolate import interp1d
from WindPy import *
from datetime import timedelta
w.start()#获取50数据并保存
_,df_price = w.wset("optiondailyquotationstastics","startdate=2020-06-01;enddate=2020-07-02;exchange=sse;windcode=510050.SH",usedf=True)
df_price.to_csv('option_price.csv')
_,df_con = w.wset("optioncontractbasicinfo","exchange=sse;windcode=510050.SH;status=all", usedf=True)
df_con.to_csv('info.csv')#修改数据并统一
df_price = pd.read_csv('option_price.csv', index_col=0, parse_dates=['date'], dtype={'option_code':str}) 
con_col = df_con.columns.values
con_col[0] = 'option_code'
df_con.columns = con_col
df_data = pd.merge(df_price, df_con, on='option_code')
df_data.to_csv('50info.csv')

在这里插入图片描述在这里插入图片描述
然后是tushare数据源:

import numpy as np
import pandas as pd
import tushare as ts
ts.set_token('token')
pro = ts.pro_api()
import time
df = pd.DataFrame()
for i in range(10000000 , 20000000):dfi = pro.opt_daily(ts_code = str(i)+'.SH')time.sleep(6)df.append(dfi)
df.to_csv('D:/50.csv')

在这里插入图片描述

保存数据
本人使用的是SQL_Server,不知道就用这个代码:

from sqlalchemy import create_engine
from scipy.interpolate import interp1d
import pymssql 
#连接数据库
conn = pymssql.connect(host = '.',user ='sa',password = 'test',database = 'pos',charset = 'utf8' )
#pos:数据库名称
engine = create_engine('mssql+pymssql://sa:test@127.0.0.1/pos')
#插入数据库
data.to_sql(db_name,engine,index=False,if_exists='append')
#append:后面添加 #replace :覆盖
#调用数据,本人习惯全部调用后再进行数据处理
df=pd.read_sql("select * from pos ",engine)
print(df)

使用MongoDB

from pymongo import MongoClient
import pandas as pd
client = MongoClient(host = '.',port =27017)#获取数据库
test_db= client['db']
#查看库下所有的表格
print(test_db.collection_names(include_system_collctions=False))
#获取表格
collection == test_db['sheet']
collection.insert_many(df)
#获取数据并保存到本地
s = pd.DataFrame(list(collection.find()))
s.to_csv('s.csv')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/449629.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker 上安装、启动 MySQL (图解)

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 在docker仓库中搜索mysql的镜像: docker search mysql 下载镜像: docker pull mysql 2. 查看本地镜…

关于 std::set/std::map 的几个为什么

2013-01-20 std::set/std::map (以下用 std::map 代表) 是常用的关联式容器,也是 ADT(抽象数据类型)。也就是说,其接口(不是 OO 意义下的 interface)不仅规定了操作的功能&#xff…

HDU 3572 Task Schedule

传送门 作业调度,这道题还真没想到能用网络流。。。。乍一看跟背包问题差不多。 有N个作业,M个机器,每个作业给你一个耗费时间(时间段)以及最早开始时间和最晚完成时间(这两个是时间点)&#xf…

MariaDB安装1,2

2019独角兽企业重金招聘Python工程师标准>>> 4.22 MariaDB安装 MariaDB是MySQL的一个分支。MySQL——>sun——>Oracle,维基百科:https://en.wikipedia.org/wiki/MariaDB 官网:https://mariadb.org MariaDB 10.3.11Linux64位…

CentOS 7 上 Docker 安装

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 Docker支持以下的CentOS版本: CentOS 7 (64-bit)CentOS 6.5 (64-bit) 或更高的版本前提条件 目前,CentOS 仅发…

python画图(散点图,折线图)

判断小数点几位 先将浮点数转化为字符串,然后截取小数点右边的字符,在使用len函数。 x3.25 len(str(x).split(".")[1]) 绘制散点图 #需导入要用到的库文件 import numpy as np # 数组相关的库 import matplotlib.pyplot as plt # 绘图库 N …

pyqt 不规则形状窗口显示

#codingutf-8 import sys from PyQt5.QtCore import Qt from PyQt5.QtWidgets import QWidget, QApplication from PyQt5.QtGui import QPixmap, QPainter, QBitmap, QCursor import PyQt5.QtCore as QtCoreclass PixWindow(QWidget): # 不规则窗体def __init__(self):super()…

【英语-刘晓艳-词汇】词汇06

【第一部分:回顾前 5 节单词】 【第二部分:新单词】 A. vivid 补充:viv 生存 revive     survive (sur surface,surpass ) B. bright 20. When I read the newspaper, I always read the ___ first. A…

C/C++拾遗录--关于一个C语言小程序的分析

虽然编了几年程序,但是对于程序到底是什么规则变成汇编代码的,在这里搞了一个小程序。用VC查看了一下汇编代码。在此之前先介绍一下关于函数运行是堆栈变化的细节。 在高级语言编写程序时,函数的调用是很常见的事情,但是在函数调…

保存tushare所有股票数据,并对涨停进行分析

import tushare as ts import pandas as pd import time import os import datetime # 指定自己要存放文件的绝对路径 os.chdir(E:/) pd.set_option(expand_frame_repr, False) now_time datetime.date.today() # 从tushare获取指定日期 def get_today_all_ts(date):date_now …

重命名 docker 容器名

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 docker 容器(服务)重命名只要一个命令就可以:docker rename 原容器名 新容器名 如:

vim编辑器常用命令总结

在命令状态下对当前行用 (连按两次), 或对多行用n(n是自然数)表示自动缩进从当前行起的下面n行。你可以试试把代码缩进任意打乱再用n排版,相当于一般IDE里的code format。使用ggG可对整篇代码进行排版。 vim 选择文本&…

java操作elasticsearch实现前缀查询、wildcard、fuzzy模糊查询、ids查询

1、前缀查询(prefix) //prefix前缀查询Testpublic void test15() throws UnknownHostException {//1、指定es集群 cluster.name 是固定的key值,my-application是ES集群的名称Settings settings Settings.builder().put("cluster.name&…

tushare查看a股是否跌到位

#%%#获取上证指数历史行情数据#获取上证指数历史行情数据 import tushare as ts import pandas as pd # 设置token,只需要在第一次调用或者token失效时设置 # 设置完成后,之后就不再需要这一个命令了 ts.set_token() pro ts.pro_api() df_daily pro.in…

为什么我要转载文章?

在csdn上很多年,学习了许多,也教了人许多,但最近,大家发现,我转载了大量文章,而很少原创文章,真正的有水平且自己一个字一个字敲键盘出来的,1000字要三四个小时,如果包含…

Docker 从Dockerfile 构建镜像 :build 命令的用法

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 Dockerfile 创建完成后,可以使用 docker build 命令根据 Dockerfile 构建一个镜像。 1. 首先准备好 Dockerfile : 2. 执行构…

(翻译).NET应用架构

.NET应用架构 Kalyan Bandarupalli著,hystar翻译 这个系列文章将帮助.NET开发人员与架构师使用最新的.NET技术设计高效的.NET应用。关于应用架构这方面虽然已有很多文章与书籍,但是对于设计人员理解应用设计的最佳的原则与实践仍然是具有挑战性的。这篇…

activity idea编写bpmn流程文件

idea 的bpmn插件支持不好&#xff0c;1、画流程图&#xff0c;注意排他网关流程的条件&#xff0c;2、复制一份xml文件出来&#xff0c;头部替换&#xff1a;<?xml version"1.0" encoding"UTF-8"?> <definitions xmlns"http://www.omg.org…

tushare写三因子模型

CAPM模型经历了大量的实证和应用之后&#xff0c;有证据表明&#xff0c;市场风险溢酬并不能充分解释个别风险资产的收益率。于是很多研究者开始探索其他的因素&#xff0c;比如公司市值、PE、杠杆比例、账面市值比等。Fama和French两个人对于各种因素进行了全面的组合分析&…

Duplicate entry ‘XXX‘ for key

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 报错如题&#xff1a;Duplicate entry XXX for key 意思是说有唯一约束&#xff0c;所以不能重复。 而我的情况是&#xff0c;有两个表…