分享

十行代码实现一个量化交易入门程序

 一利阳光故事会 2023-07-06 发布于北京

1 在浏览器中打开 www.joinquant.com

2 编写策略代码

点击顶部的“我的策略”,选择子菜单“我的策略”,在左侧输入python代码

def initialize(context):                #初始化
    g.security = '600050.XSHG'        # 股票名:中国联通
def handle_data(context, data):        # 每日循环
    last_price = data[g.security].close    # 取得最近日收盘价
    # 取得过去二十天的平均价格
    average_price = data[g.security].mavg(20, 'close')
    cash = context.portfolio.cash        # 取得当前的现金
    # 如果昨日收盘价高出二十日平均价, 则买入,否则卖出。
    if last_price > average_price:
        order_value(g.security, cash)    # 用当前所有资金买入股票
    elif last_price < average_price:
        order_target(g.security, 0)    # 将股票仓位调整到0,即全卖出

这里600050,是中国联通的股票代号,XSHG代表沪市。 若是想要对“科大讯飞”进行量化,只需要设置 g.security = '002230.XSHE’,这里XSHE代表深市。

3 编译运行

点击编译运行,右侧的上半部分显示回测结果,下半部分显示日志和错误。

这里默认的统计时间为2016-6-1到2016-12-31,若想改成自定义的时间需要注册并登录。

4 名词解释

(1)基准收益就是大盘的收益。

(2)策略收益就是你的策略所能产生的收益。“好”策略的收益至少要超过基准收益。

(3)阿尔法:投资中面临着系统性风险(即Beta)和非系统性风险(即Alpha),Alpha是投资者获得与市场波动无关的回报,一般用来度量投资者的投资技艺。比如投资者获得了12%的回报,其基准获得了10%的回报,那么Alpha或者价值增值的部分就是2% · α>0,策略相对于风险,获得了超额收益 · α=0,策略相对于风险,获得了适当收益 · α<0,策略相对于风险,获得了较少收益

(4)贝塔:表示投资的系统性风险,反映了策略对大盘变化的敏感性。例如一个策略的Beta为1.3,则大盘涨1%的时候,策略可能涨1.3%,反之亦然;如果一个策略的Beta为-1.3,说明大盘涨1%的时候,策略可能跌1.3%,反之亦然

(5)夏普比率:表示每承受一单位总风险,会产生多少的超额报酬,可以同时对策略的收益与风险进行综合考虑。

(6)最大回撤是一个风险指标,衡量极端风险,表示在测试区间内最大的可能浮亏。注意这里是浮亏,不是亏损。 例如:初始净值为1元,后来增长到最高点1.6元,近期跌到最低点1.6元。则最大回撤为 (1.6 - 0.6) / 1.6 = 62.5%。

5 分析

图2中的基准收益为4.43%,策略收益为66.69%,远高于基准收益。这说明这个策略在2016-06-01至2016-12-31这段时间内,若用于中国联通股票,会产生很可观的收益。

6 换一支股票试试

将g.security = '600050.XSHG’改为g.security = '002230.XSHE’,这里002230是“科大讯飞”的股票代号。 编译运行后,发现策略收益为-2.90%。这说明,在2016-06-01至2016-12-31,对于科大讯飞股票,若使用了程序中的策略,会产生很差的收益。

7 总结

从上面针对两支股票运行同一策略所产生的不同效果来看,同一策略对不同的股票所起的作用是不一样的。好的策略应该选取多种不同的指标进行策略组合,以提高策略收益和策略的稳定性。本文所演示的策略仅仅是为了让初学者了解策略的大体过程。

文章分享自微信公众号:
海天一树

扫码关注公众号

本文参与 腾讯云自媒体分享计划,欢迎热爱写作的你一起参与!

原始发表:2017-10-08,如有侵权请联系 cloudcommunity@tencent.com 删除

登录后参与评论
相关文章
2018程序员必备碎片化学习工具
码个蛋第239次推文 📷 2017马上就要过去了,2018来了。 工作、生活节奏超快的今天,想要不断提升自我,碎片化阅读学习是你最佳的选择,如果你有一颗学习的心,那这些学习型的公众号,绝对会让你受益匪浅。 小编为你精选了技术领域几个精品微信订阅号,涵盖了时下最热门的技术领域,还有行业内的热点新闻和干货教程推送。同时,你还能加入这些公众号的学习社群,和各个领域的大咖面对面交流,不断学习,提升自我!! 想要学到更多,什么时候开始都不晚!赶紧加入吧! 数据与算法之美 人工智能,深度学习,用大数据思维解决不可能的问
2018-01-25
6660
【精华干货】Quant 需要哪些 Python 知识
谢谢大家的支持!现在该公众号开通了评论留言功能,你们对每篇推文的留言与问题,可以通过【写评论】给圈主留言,圈主会及时回复您的留言。 想在市场上赚钱,必须同时具备两样能力: 研究:做出正确的能够获利的决策,也就是寻找Alpha的能力 交易:基于研究的结果和交易信号,执行相应的下单风控等操作,也就是将Alpha落实到你账户盈利上的能力 研究方面 python编程能力: python基础编程,必须掌握,不仅仅是会语法,还有各种语言细节的坑(当然比C++少很多)。对于常年使用R MATLAB SAS的研究人员来
【Matlab量化投资】支持向量机择时策略
推出【Matlab量化投资系列】 机器学习 所谓机器学习,其实就是根据样本数据寻找规律,然后再利用这些规律来预测未来的数据(结果)。 但是,直到今天,机器学习也没有一种被大家广泛认同的理论框架产生,这个也是机器学习被大家诟病的原因之一:它是没有理论基础的。 目前机器学习的方法大概可以分为以下几种: 1、经典的参数统计估计方法:基于传统统计学,需要已知的样本分布形式,局限性比较大。 2、经验非线性方法:利用已知样本建立非线性模型(如人工神经网络),克服了传统参数估计方法的困难,但缺乏统一的数学理论。
【独家发送】机器学习该如何应用到量化投资系列(四)——关于涨跌的思考基于Python
编辑部 微信公众号 关键字全网搜索 『量化投资』:排名第一 『量 化』:排名第二 『机器学习』:排名第三 我们会再接再厉 成为全网优质的金融、技术技类公众号 系列文章(点击即可查看) 机器学习该如何应用到量化投资系列(一) 机器学习该如何应用到量化投资系列(二) 机器学习该如何应用到量化投资系列(三) 目录 ⊙机器学习 & scikit-learn简介 ⊙HS300历史数据特征一览 ⊙基于历史涨跌的机器学习预测模型构建字 机器学习 & scikit-learn简介 简单说:机器学习算法是一
【独家发布】期货市场内外盘低频统计套利基于Python
声明 作者: 阿布 公众号独家授权 未经允许 禁止转载 github地址: https://github.com/bbfamily/abu 本策略可直接运行,运行地址 https://github.com/bbfamily/abu/tree/master/abupy_lecture 首先导入本节需要使用的abupy中的模块: 算法交易之父托马斯·彼得菲最成功的一段经历是利用当时最快的计算机,租赁独享电话线以保证数据传输畅通无阻,甚至超越时代定制平叛电脑,使用统计套利在不同市场进行对冲策略。 这是
用AlphaGo背后的人工智能做金融投资
量化投资与机器学习 为中国的量化投资事业贡献一份我们的力量! 公众号今天受邀为大家介绍一下由黄文坚先生创立的墨宽人工智能量化投资平台。 黄文坚 香港科技大学本科、研究生,墨宽投资CEO,人工智能领域研究者,有多篇顶级学术论文发表。著有《TensorFlow实战》,国内计算机类书籍月度销量冠军,该书获李开复、Jeff Dean(谷歌大脑团队负责人)推荐,并在日本、韩国等地翻译出版。目前正带领团队研发新一代的人工智能量化平台,旨在将人工智能技术应用于价值投资领域。团队成员包括北大、浙大、香港科技大学、中科院等
基于Python的开源量化交易平台及组件汇总
vnpy [1] 基于python的开源交易平台开发框架。项目的用户包括:私募基金,证券自营、资管,期货公司,高校的金融研究院系,个人投资者等,机构用户加起来至少20多家。 该项目拥有较为丰富的Python交易和数据API接口,基本覆盖了国内所有常规交易品种(股票、期货、期权),具体包括:CTP(vn.ctp)、飞马(vn.femas)、LTS(vn.lts)、金仕达黄金(vn.ksgold)、金仕达期权(vn.ksotp)、通联数据(vn.datayes)。 ? 特点:简洁易用的事件驱动引擎(v
2018-01-31
5.3K0
我差不多,哦不我已经是个废人了No.4
我是小蕉。 好吧大家都说技术看不懂,那好吧,今天一点技术都没有,主要谈谈一个人来如何懒起来。 前几日因为要部署一个ElasticSearch集群,虽然只有三台。但是,我就是不想一台一台去部署啊,烦死个人了。万一后面要部署1000台,那可要怎么办??真心一台一台去处理咩。我懒得要命,我才懒得这样干。 就抽象一下,提炼出一个垃圾批量部署的法子。安装包准备->环境准备->安装包上传解压->配置变更->启动服务器。看起来也就长这样,一个shell脚本搞定,虽然花了半天的时间,但是在后面操作其他机器的
2018-02-05
4470
小白零基础编程到大佬级别是怎么学习Python的?
程序员在普通人眼里就像魔法师,一个脚本轻松抢几十盒月饼(虽然最后被开除),一个插件解决春运抢票难题,几十行代码搭建一个 Web 网站,用微信自动和妹纸聊天,在程序员眼里这些事太稀松平常了,他们只不过是利用编程语言指挥计算机去自动完成一些需要人类重复操作的繁琐过程,等你会编程也就不觉得大惊小怪了。 📷 有些人学习编程刚一开始头脑发热,买了很多书,下载很多视频,收藏上100G的资料,没过几天,热情就褪去了,最后完成了从入门到放弃的全过程,究其原因主要是缺乏清晰的目标,没有方向,或者方向不明确。如果你真正想把编程
2018-02-26
9720
【数据分析】互联网和金融,在数据挖掘上究竟存在什么区别?
一、数据挖掘的层次 一直想整理下对数据挖掘不同层次的理解,这也是这两年多的时间里面,和很多金融领域、互联网做数据相关工作的小伙伴,聊天交流的一些整理和归纳。大概可以分为四类: ? (一)纯粹的数据加工 侧重于变量加工和预处理,从源系统或数据仓库,对相关数据进行提取、加工、衍生处理,生成各种业务表。然后,以客户号为主键,把这些业务表整合汇总,最终可以拉出一张大宽表,这张宽表就可以称之为“客户画像”。即,有关客户的很多变量和特征的集合。 在这个阶段,主要的数据加工工具为SQL和SAS base。 (二)傻瓜式的
2018-02-27
8880
【干货】钱塘数据特邀专家杜登斌——产业大数据创新应用【内含PPT】
产业大数据创新应用 ——“产业+大数据+金融”的产业升级转型创新思路 5月31日,中润普达(集团)公司董事长杜登斌在出席首届中国(杭州)工业大数据产业发展高峰论坛时,从自己的人生经历出发,带领与会者走近“互联网+”时代的大数据发展现状和未来。开篇“下一个百万亿商业时代在哪里”的探讨使大家充满期待;对“以数据资产为核心的大数据产业金融技术创新与应用”的分析稳扎稳打步步深入;“数据产业金融创新应用需要突破的问题”教人持续思考,关注更有价值的未来市场。 产业互联网将是下一个百万亿商业时代 首先,杜登斌谈了对“互
2018-03-01
7870
零基础如何自学Python
程序员在普通人眼里就像魔法师,一个脚本轻松抢几十盒月饼(虽然最后被开除),一个插件解决春运抢票难题,几十行代码搭建一个 Web 网站,用微信自动和妹纸聊天,在程序员眼里这些事太稀松平常了,他们只不过是利用编程语言指挥计算机去自动完成一些需要人类重复操作的繁琐过程,等你会编程也就不觉得大惊小怪了。 📷 Photo by PICSELI on Unsplash 有些人学习编程刚一开始头脑发热,买了很多书,下载很多视频,收藏上100G的资料,没过几天,热情就褪去了,最后完成了从入门到放弃的全过程,究其原因主要是缺
2018-03-02
1.1K0
Rcash推出一站式数字货币交易平台,提供大数据分析工具
据悉,Rcash是一个全球数字货币一站式量化与套利交易平台,目前已经完成产品的初步开发,下一步将集合大数据和人工智能系统,进行深度开发。此外,Rcash近期已准备开展代币发行计划。 ? 区块链技术发展迅速,现今每日数字货币市场交易量已经超过400亿美元,仅在2017年8月- 12月数字货币的总市值从1500亿美元增长至7000亿美元。同时,数字货币多维度数据都较去年同期增长迅猛。根据CoinMarketCap数据显示,截至2018年1月24日,在全球范围内可以在二级市场交易所内交易的数字货币币种已经达到14
2018-03-02
9510
人工智能步入金融领域,“AI+”会是金融业的未来吗
目前金融机构的主流玩法有四种:1. 投资银行和卖方研究尝试自动报告生成,2. 金融智能搜索;3. 公募、私募基金在通过人工智能辅助量化交易;4. 财富管理公司在探索智能投顾方向。 人工智能如何辅助量化交易 量化交易从很早开始就运用机器进行辅助工作,分析师通过编写简单函数,设计一些指标,观察数据分布,而这些仅仅把机器当做一个运算器来使用。直到近些年机器学习的崛起,数据可以快速海量地进行分析、拟合、预测,人们逐渐把人工智能与量化交易联系得愈发紧密,甚至可以说人工智能的3个子领域(机器学习,自然语言处理,知识图
2018-03-05
9210
学习R语言对金融分析人士有何意义?
说一说我的背景,大学里c入门,转入R。在学校里弄了一阵生统与经济。现在搞云端理财的网站,后端是用R实现的,搞量化风险管理和资产组合的,其中要用到很多运算。R已用了有些年头,见过一些写金融包的男神女神,时常会通信见面(@任坤,github看过了,拜拜你哈哈),去过芝加哥的 Rfinance大会,看看R在金融保险的前沿是什么样的。网站已经进入了第二开发周期。对R有了另一种感悟。 对于量化金融分析师,R是拿来用的。对于金融软件开发者,R是用来拆的。。。请听我慢慢道来。。。   对于金融人士来讲,R也许能被我片
2014互联网金融Q1-Q3总结
        去年被称为互联网金融的创始之年,众多在去年诞生、或打下融资基础的公司,今年在业绩和融资上纷纷取得了长足进展。从今年二季度开始,业内公司开始密集公布投融资消息,短短几个月内已有超过 30 起大额融资发布。全年至今累计发生风投事件近百起,其中不乏数千万美元的大单,P2P 在其中充当了主力军。 为什么是现在?   去年各类草根创业公司蜂起,玩家良莠不齐。经过一段时间的竞合,我们已经看到:1、市场开始洗牌,优质公司逐渐显现。2、政策导向逐渐明朗,准入门槛、认证标准的提高将会排除一批欠规范化
2018-03-13
5310
用AlphaGo来做股票交易会怎样?机器学习预测股票靠谱么?
今天李世石已连续输掉了第二局,粗看下来,后面几盘似乎已没啥悬念了。无疑,这是一个伟大的时刻,也是个伟大的开始,超级智能机器在未来将会在人类生活中扮演更多更重要的角色。 资本市场,越来越多的量化策略与量化交易,越来越多的机器在介入,以前散户面对的是同样赤手空拳的空头,但现在我们面对的是高度智能的机器以及加杠杆的赌徒,以前跌一年,现在一周搞定,信息传播越来越快,人心预期转化也特别迅速,于我们,更需要理性,纪律与底线。 Alpha Go的优势: 无比强大的数据分析能力。对于公司的财务、行业的数据,未来的趋势,依据
点击加载更多
关于作者

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多