如何借助现有股票量化交易平台编写策略和回测分析

news2024/11/16 4:21:04

每个交易日的股票都会上涨或者下跌,在这个过程中笔者们偶尔会想针对部分股票进行股价的涨跌幅进行监控,或者自动进行交易,在这个需求前提下,现有券商、股票分析软件都会带有机器人自动交易策略功能,大部分都需要收费或者部分策略不能满足自己的需求,笔者这边提供2种实现思路:

1、借助现有股票量化交易平台编写策略和回测分析,然后在券商软件层面进行策略执行。

2、自己编写功能代码来监控估价,对股价波动进行特殊处理满足特殊需求。

第一种实现成本较低,但功能受限于平台;第二种实现成本毋庸置疑相对较高,但是逻辑可以自己控制。那么为了方便大家学习小编附一部分用Python搭建自己的量化回测分析代码!

#先引入后面可能用到的包(package)
import pandas as pd  
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns  
sns.set()  
%matplotlib inline    
#正常显示画图时出现的中文和负号
from pylab import mpl
mpl.rcParams['font.sans-serif']=['SimHei']
mpl.rcParams['axes.unicode_minus']=False
#使用tushare获取交易数据
#设置token
import tushare as ts 
token='输入在tushare.pro上获取的token'
ts.set_token(token)
pro=ts.pro_api(token)
#pro=ts.pro_api(token)
index={'上证综指': '000001.SH','深证成指': '399001.SZ',
        '沪深300': '000300.SH','创业板指': '399006.SZ',
        '上证50': '000016.SH','中证500': '000905.SH',
        '中小板指': '399005.SZ','上证180': '000010.SH'}
#获取当前交易的股票代码和名称
def get_code():
    df = pro.stock_basic(exchange='', list_status='L')
    codes=df.ts_code.values
    names=df.name.values
    stock=dict(zip(names,codes))
    #合并指数和个股成一个字典
    stocks=dict(stock,**index)
    return stocks    
#获取行情数据
def get_data(stock,start='20151009',end=''):
    #如果代码在字典index里,则取的是指数数据
    code=get_code()[stock]
    if code in index.values():
        df=ts.pro_bar(ts_code=code,asset='I',start_date=start, end_date=end)
    #否则取的是个股数据
    else:
        df=ts.pro_bar(ts_code=code, adj='qfq',start_date=start, end_date=end)
    #将交易日期设置为索引值
    df.index=pd.to_datetime(df.trade_date)
    df=df.sort_index()
    return df

 那么量化交易的实现也是离不开level2行情接口的, Level-2里面有一个很重要的是逐笔委托,很多量化私募以及T0策略都要用!为了方便理解接下来小编给大家展示一下level2逐笔委托实例!

  1.  Level-2C++实例(逐笔委托) 

字段名

类型

备注

stock_exchange

uint32

证券市场,1-SH,2-SZ

stock_code

string

证券代码

created_at

int64

委托日期时间戳(毫秒)

code

string

委托编号

price

uint32

委托单价

volume

uint64

委托数量

amount

uint64

成交金额

tx_dir

uint32

交易方向:0-未知,1-买入,2-卖出

tx_kind

uint32

交易类型:1-市价,2-限价,3-本方优先,10-撤单, 11-暂不清楚( 基金/ 债券有此值)

返回实例: 

 

 

那么大家可以通过https://gitee.com/l2gogogo 查询level2接口信息,若是对量化交易和level2接口有不明白的也可以通过下面名片给小编留言!

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

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

相关文章

web网页大作业——基于HTML+CSS+JavaScript制作摄影之家网站

🎉精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

OAuth2 的授权流程

文章目录📖 OAuth2 的授权流程📑 参与的角色📑 授权流程📑 授权许可 Authorization Grant📑 直白话 OAuth2 流程📖 OAuth2 的授权流程 📑 参与的角色 1️⃣ Resource Owner资源所有者&#xf…

如何监听电脑屏幕是否发生切换

目录 1.屏幕监听的原理: 2.创建项目 3.离开计时 1.屏幕监听的原理: 为什么可以监听浏览器窗口的切换呢?那就是利用了浏览器的visibilitychange属性,MDN的介绍对visibilitychnge的介绍是: 当其选项卡的内容变得可见或…

nginx(六十二)proxy模块(三)接收用户请求的包体

一 接收用户请求包体 nginx读取请求体的源码分析 说明: 虽然是被http core核心框架处理,但是被proxy反向代理模块使用重点: 哪些指令控制接收request body的行为? ① proxy_request_buffering 控制: nginx接收客户端 request body的方式…

【优化选址】遗传算法求解物流配送中心选址【含Matlab源码 1917期】

⛄一、物流选址简介 1 引言 配送中心是物流系统网络中的关键节点和重要的基础设施,在整个物流系统网络规划中起着枢纽性的作用[1]。快递物流配送中心选址是指在具有若干个发件网点或者若干个收件网点的物流配送区域内,综合考虑物流运输成本、配送中心建…

【计算机网络】Servlet API重点知识汇总

目录 1.HttpServlet: 2.HttpServletRequest: 3.HttpServletRequest代码实例: 3.1.打印请求的内容: 3.2.获取请求中的重要参数 (query string中的值): 3.3.获取请求中的重要参数 &#x…

关于循环浅析

从c,c,python,scala到java,简单接触了这样一些编程语言,对于它们的基本语法中的循环想做个总结。 一、c,c C语言for循环(for语句)详解 (biancheng.net) //这个链接比较详细,本人也从中摘取了一些知识点。…

【javaEE】网络原理(传输层Part2)

努力经营当下,直至未来明朗! 文章目录前言TCP相关机制4. 【滑动窗口】5.【流量控制】6.【拥塞控制】总结前言 一个人最大的痛苦来源于对自己无能的愤怒! Hi,这里是不想秃头的宝贝儿! 本文主要内容是 传输层中TCP相关…

什么是SRM,SRM有什么作用,SRM主要用途是什么?

简道云SRM管理应用一、什么是SRM? SRM是 Supplier Relationship Management 的英文缩写,即供应商关系管理。 SRM的最基本内容包括供应商分类选择、战略关系发展、供应商谈判和供应商绩效评价四个方面。 SRM是用来改善企业与供应商的关系,它是一种致力…

了解一下OAuth2.0到底是什么,有图解有案例

理论 OAuth是一个关于授权(authorization)的开放网络标准,用来授权第三方应用获取用户数据,是目前最流行的授权机制,它当前的版本是2.0。 应用场景 假如你正在“网站A”上冲浪,看到一篇帖子表示非常喜欢…

Python交互Mysql数据库基本操作

安装pymysql第三方包 1. 安装pymysql 2. 查看安装情况 ​ 3. 卸载pymysq ​ Pymysql的使用 1. 导包 ​ 2. 创建和mysql服务端的连接对象 ​ 3. 获取游标对象 ​ 4. 执行sql语句 ​ 5. 获取查询结果集 ​ 6. 将增加和修改操作提交到数据库 7. 回滚数据 8. 关闭游标对象 …

【网页设计】期末大作业html+css(体育网站--足球 6页 )

⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材,DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 校园篮球网页设计 | 足球体育运动 | 体育游泳运动 | 兵乓球 | 网球 | 等网站的设计与制作 | HTML期末大学生网页设计作业 HTML:结构 CSS&…

mTD-SCDMA与TD-LTE双网络垂直切换matlab仿真

目录 1.算法描述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法描述 TD-SCDMA与TD-LTE共覆盖的范围内覆盖半径1000m; TD-SCDMA中心坐标(0,0),覆盖半径1000m; 两个TD-LTE基站的中心坐标为(150,0…

刚毕业被骗去了小公司,天天“取数做表”,后悔没早点用上这工具

经常看到年轻人提问“究竟是去大公司打杂好,还是去小公司磨练好?”这个问题我年轻的时候也想过,当时觉得去大公司只能当螺丝钉,做按部就班的工作,于是毅然决然放弃了大厂offer去了一家IT部门只有3个人的公司。当时我在…

通过电子文档管理改善患者体验和办公效率

通过电子文档管理改善患者体验和办公效率 在不远的过去,手动输入医疗信息和物理归档系统是所有医疗办公室的标准操作程序。医生和工作人员别无选择,只能写下信息,然后手动将数据输入办公系统。 当要求所有从业者使用电子病历的授权作为“患…

亚马逊买家号造成被封的原因有哪些?

现在很多人反馈说亚马逊买家号太容易被封了,去下单时都不知道什么情况都就砍单,账号登录不上了,而关于亚马逊买家号被封这个问题,不是一两个因素就能决定的,那么亚马逊买家号造成被封的原因有哪些? 1、账号…

虚拟机三种网络模式

基本知识 ipconfig查看信息。 网关(Gateway)又称网间连接器、协议转换器。是你连接到的上层节点的地址。 ip地址是你本身的地址(如果是路由器分配的 那么是路由器所构建的内网地址) 网卡:需要网卡才能连接其他设备 是设备端的 交换机&#x…

[附源码]SSM计算机毕业设计教师业绩考核系统JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Mybatis-Plus条件构造器学习and方法

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 Mybatis-Plus条件构造器学习and方法一、代码1.Controller2、Service3、效果一、代码 1.Controller GetMapping("/queryProductList1")public List<ProductDTO&…

panads基础入门

目录 一、查看数据 二、选择数据 1、选择单列 2、 用 [ ] 切片行&#xff1a; 3、标签选择 1、选择某列的某一行&#xff0c;如下是 A 列 第 51 行的值 2、B列与A列的数据相互替换 3、用标签选取多列 4、用标签切片&#xff0c;包含行与列结束点&#xff1a; 5、提取标…