感谢原作者:JoinQuant-TWist
转自:JoinQuant
重要提示:聚宽提供了非常好的数据库接口,愁没研究数据的小伙伴可以加微信(jqdata01)详细了解

摘要

为什么需要量化交易?
量化交易是做什么?
量化交易的价值何在?
做量化交易需要什么?
聚宽是什么?
零基础如何快速入门量化交易?
自测与自学

量化交易比传统交易强多少?

它能让你的交易效率提高百倍,量化交易之于传统交易方法,如同大型收割机之于锄头镰刀,机枪大炮之于刀剑棍棒。

也就是是说,传统交易方法是这样的:

而量化交易是这样的:

在金融最为发达的美国,量化交易已大行其道,占据了70%以上的股市成交量。可以说量化交易是未来的趋势。当然,只言片语不能解释清楚,接下来,我们具体地介绍下量化交易。

量化交易是做什么?

量化交易是指借助现代统计学和数学的方法,利用计算机技术来进行交易的证券投资方式。便于理解的说,量化交易主要是做这样的事:

从一个灵感开始

灵感就是指那些你想验证的可能会盈利的方法,比如银行股可能是良好的投资品种、一旦跨过20日均线后股价会继续涨、流传许久的羊驼交易法等等。灵感获取的方式可以是阅读、听人说、自己悟等等。

这里我们以一个简单的情况为例进行讲解。比如你的灵感是这样的:
如果股价显著低于近几日的平均价,则买入
如果股价显著高于近几日的平均价,则卖出

现在,你想知道这样操作究竟会不会赚钱?

把灵感细化成明确的可执行的交易策略

一般灵感都很模糊,需要将其细化成明确的可执行的策略,目的是为了能得到确定的结果,以及为后续程序化准备。比如,你通过阅读了解到索罗斯的反身性概念,想将它应用到股市,这个反身性就很模糊,就需要明确什么条件下买卖,买卖什么品种,买卖多少量等,从而形成一个明确的交易策略,让不同人根据你的描述在相同情形下都能做出相同的操作。

继续以之前那个关于平均价的灵感为例:
如果股价显著低于近几日的平均价,则买入
如果股价显著高于近几日的平均价,则卖出

显然它是不够明确的。比如多低叫显著低于?多高叫显著高于?近几日究竟是几日?买入卖出是买卖多少?我们把它细化:
如果股价低于近20日平均价10%,则用全部可用资金买入
如果股价高于近20日平均价10%,则卖出全部所持的该股票

还有一点不明确的地方,买卖哪个股票呢?我们认为这个交易方法盈利与否应该跟交易哪个股票关系不大,但st股票除外(知道st股票是一类有风险特别大的股票就好,详情请百度),所以股票的选择范围是除st股外的国内A股的所有股票。所以我们进一步细化:
每个交易日监测是除st股外的国内A股的所有股票的股价
如果股价低于近20日平均价10%,则用全部可用资金买入该股票
如果股价高于近20日平均价10%,则卖出全部所持有的该股票

现在我们基本已经把之前的灵感细化成明确的可执行的交易策略。当然,可能还有些地方不够明确,也可能有些细节还不确定要改动,这些可以随时想到随时再改,不必一次做到完美。

把策略转成程序

就是把明确后的策略通过编程转成程序,好让计算机能根据历史数据模拟执行该策略,以及能根据实际行情进行反应并模拟交易或真实交易。

简言之,就是把刚刚的策略翻译成计算机可识别的代码语言,即把这个:
每个交易日监测是除st股外的国内A股的所有股票的股价
如果股价低于近20日平均价10%,则用全部可用资金买入该股票
如果股价高于近20日平均价10%,则卖出全部所持有的该股票

写成类似这样的代码(下面的代码并不完全符合,只是展示下大概的样子):
def initialize(context):
g.security = [‘002043.XSHE’,‘002582.XSHE’]
def handle_data(context, data):
for i in g.security:
last_price = data[i].close
average_price = data[i].mavg(20, ‘close’)
cash = context.portfolio.cash
if last_price > average_price:
order_value(i, cash)
elif last_price < average_price:
order_target(i, 0)

这样一来,就把刚才细化好策略转成了代码程序,计算机就能运行了。这个过程你可以理解成用计算机能听懂的语言(代码),把你的策略告诉给计算机了。

检验策略效果

现在计算机理解了你的策略,你现在可以借助计算机的力量来验证你的策略了。基本的检验策略方法有回测和模拟交易两种方法。

回测是让计算机能根据一段时间的历史数据模拟执行该策略,根据结果评价并改进策略。继续之前的那个均价的策略例子的话就是这样的:

设定初始的虚拟资产比如500000元、一个时期比如20060101到20160101,把这一时期的各种数据如估计股价行情等发给计算机,计算机会利用这些数据模仿真实的市场,执行你刚才告诉它的策略程序。最后最后计算机会给你一份报告,根据这个报告你就会知道,在20060101的500000元,按照你的策略交易到20160101,会怎样?一般包括盈亏情况,下单情况,持仓变化,以及一些统计指标等,从而你能据此评估交易策略的好坏。

如果结果不好,则需要分析原因并改进。如果结果不错,则可以考虑用模拟交易进一步验证。

模拟交易是让计算机能根据实际行情模拟执行该策略一段时间,根据结果评价并改进策略。与回测不同,回测是用历史数据模拟,模拟交易使用实际的实时行情来模拟执行策略的。举例就是这样:

设定初始的虚拟资产比如500000元,选择开始执行模拟交易的时间点,比如明天。那么从明天开始,股市开始交易,真实的行情数据就会实时地发送到计算机,计算机会利用真实的数据模仿真实的市场,执行你的策略程序。同时,你会得到一份实时更新的报告。这报告类似于回测得到的报告,不同的是会根据实际行情变化更新。同样你能据此评估交易策略的好坏。

可见,回测是用历史数据模拟执行策略,模拟交易是用未来的实际行情模拟执行策略。如果策略在回测与模拟交易的表现都非常好,你可以考虑进行完全真实的真金白银的实盘交易。

进行实盘交易并不断维护修正

实盘交易就是让计算机能自动根据实际行情,用真金白银自动执行策略,进行下单交易。注意,这时不再是用虚拟资产模拟交易,亏损和盈利都是真钱。实盘交易一般也会给出一份类似模拟交易的会不断更新的报告,从而不断要观察策略的实盘表现并及时调整与改进策略,使之持续平稳盈利。

量化交易的价值何在?

量化交易的价值有很多,只提下最突出的价值所在。

可以利用大量历史数据检验策略,效率提升百倍。当我们想验证交易策略的时候,一个基本的想法是想知道它在历史上表现如何,这往往需要大量的历史数据与计算量,量化交易做一次回测可能几分钟就可以得到结果了,相比于传统人工做法效率的提升是成百倍的。

更科学更客观的衡量交易策略的效果。比如一个关于某技术指标的策略,人工的进行了10个交易日的验证,效果都不错,但这就能说明这指标不错吗?不,10次太少了,你需要更多的验证,比如1000个交易日,人工验证不可行,量化交易则又快又准。而且量化交易还可以利用数学与统计学自动给出客观的结果,比如年化收益率、最大回撤率、夏普比率等。

全市场实时捕捉交易机会。当你知道一个盈利条件,当股价一旦满足这条件,你就可以操作盈利。问题是,市场几千个股票,股价时时刻刻都在变动,你能盯住几个,你会错失多少个机会。但量化交易可以利用计算机全市场实时盯盘,可以不错过任何交易机会,加倍你的盈利能力。

更多的盈利机会。量化交易可以利用计算机对海量数据分析得到常人难以发现的盈利机会,而且有些机会只有量化交易才能利用。比如你发现一种交易方法,其特点是盈亏的额度相等,但盈利的概率是55%,亏损概率45%。首先这种小差距的概率规律,非量化交易不能发现,其次,要利用这个规律盈利需要大量次数的交易才能稳定盈利,这也非量化交易不可。

做量化交易需要什么?

通常一个投资者做量化交易所需要做的准备,就如同让一个农民自己去造一个大型收割机,而且还是从挖矿开始做起,极度困难,所以量化交易最初在金融与科技最为发达的美国由少数顶级精英发起的。

要有各种数据。要有能方便使用的各种投资相关的数据。这要考虑到各种数据的收集、存储、清洗、更新,以及数据取用时的便捷、速度、稳定。

还要有一套量化交易的系统,要有能编写策略、执行策略、评测策略的系统。这要考虑到系统对各种策略编写的支持、系统进行回测与模拟的高仿真、系统执行策略的高速、系统评测策略的科学可靠全方面。

可能有人会问,做投资之前难道要学当程序员吗?曾经是,但现在量化交易的门槛已大大降低。

聚宽是什么?

聚宽是一家量化交易平台,为投资者提供做量化交易的工具与服务,帮助投资者更好地做量化交易。也就是说,在聚宽量化交易平台,“大型收割机”已经为你准备好了,不需要你自己造了,你只需要学会使用它。

聚宽让做量化交易的成本极大降低

提供多种优质的便于取用的数据
提供投资研究功能,便于自由地统计、研究、学习等
提供多种的策略评价指标与评价维度
支持多种策略的编写、回测、模拟、实盘

聚宽让量化交易的成长之路更为平坦

在社区可以分享交流量化交易的心得与疑惑
在量化课堂可学习量化交易相关的各种知识
在策略擂台可以策略pk展现风采证明自己
在大赛专区可以获取社会量化比赛资讯
在策略商城可以上架策略供他人付费订阅
在基金经理孵化训练营则助力快速成长为一名职业基金经理

零基础如何快速入门量化交易?

学习这个教程。确切的说,继续学习下一篇。

自测与自学

到 聚宽 先随便逛逛。
搜索了解下James Simons、DE.Shaw、Emanuel Derman等量化界名人。

转:量化投资新手指南-初识量化交易相关推荐

  1. Python 量化投资实战教程(6) — 交易平均收益率

    量化投资系列文章: Backtrader 教程 - Python 量化投资实战教程(1) Python 量化投资实战教程(2) -MACD策略 Python 量化投资实战教程(3) -A股回测MACD ...

  2. 量化投资之自动化实盘交易

    概要 程序化实盘交易是量化投资的一个重要步骤.量化投资工作者开发出优秀的选股和择时策略,而当这些策略发出操作信号时,如果没用对应的代码指令传递给相关交易接口来执行股票/期货投资操作,而由人工来执行,那 ...

  3. 量化投资是什么?程序化交易和量化投资交易的发展及使用

    传统的投资模型通过定性分析来选择投资目标,依靠调查,包括行业前景分析.公共财务报表.甚至是大经济周期的波动等,其中包含了大量的个人经验和投资者的主观判断.例如,2013年A股市场大量银行股跌破净资产值 ...

  4. 【量化投资】03.量化工程abu学习之量化基础(1/3)

    [写在前面]          按照之前分析的逻辑在网上搜索python写的量化投资教程,找到了abu量化这个工程.为什么先看他呢,纯属个人感觉.首先,他有一本配套的非常入门的书籍,对于我这个初学者而 ...

  5. Python量化投资与股票量化实战|StudyQuant

    <<<****[点击]传送门-加入 Python量化投资与A股量化实战课程(网易云课堂)>>>>> Python量化投资与A股量化实战课程概述 越来越多 ...

  6. 基于python的量化投资(二) ---- 获取量化数据

    进行量化投资最基础的工作,就是获取量化的基础数据.有了基础数据,才能对数据进行加工处理,构建量化策略,进行量化分析,回测和回溯. 基于python进行量化投资的开发,获取数据的方式比较丰富,主要介绍以 ...

  7. python量化投资数据类型_python量化投资(二):如何得到数据

    在python量化投资(一)中我们写到,我们计算的前提是有数据,但是如何得到数据?上次也说了几种途径,今天主要讲解怎样提取数据,有一个前提条件 安装了python,笔者还安装了pychramIDE 一 ...

  8. 《Python量化投资》01 量化投资之单因子测试(概述,Pandas的适用)

    一. 股票aplha多因子策略介绍 量化投资是指通过数量化方式及计算机程序化发出买卖指令,以获取稳定收益为目的的交易方式.在海外的发展已有30多年的历史,其投资业绩稳定,市场规模和份额不断扩大.得到了 ...

  9. 量化投资学习——关于XTP交易柜台

    https://blog.csdn.net/FrankieHello/article/details/103266150

  10. 一文读懂程序化交易算法交易量化投资高频交易统计利

    转 一文读懂程序化交易.算法交易.量化投资.高频交易. 统计套利 在央行发布的<中国金融稳定报告(2016)>中,对于高频交易的解释为程序化交易的频率超过一定程度,就成为高频交易.而对程序 ...

最新文章

  1. list group by java_Java List集合实现MySQL Group By功能
  2. bootstrap日期时间控件
  3. md5课程设计java_MD5算法的JAVA实现
  4. 2015年第六届蓝桥杯 - 省赛 - Java大学B组 - A. 三角形面积
  5. 万字干货!详解JavaScript执行过程
  6. spring 4.x下让http请求返回json串
  7. Jconsole使用实例解说
  8. SMBUS和i2cBus,PMBus 区别
  9. 一文看懂Java内存模型(JMM)
  10. iOS开发-dSYM文件
  11. 生日快乐代码_祝这位兄弟(?)生日快乐?
  12. 数学中常见的arg min,arg max是什么意思
  13. Matlab练习---利用曲线对象绘制五环图案
  14. 微信视频号视频怎么下载保存到手机相册?
  15. Windows2000、2003浏览器无法上网、无法联网
  16. 移动端项目总结 - <基础>
  17. 如何优雅地下载和使用Apache Commons_io
  18. 如何理解向量组的秩和矩阵的秩
  19. linux shell awk 语法
  20. Ubuntu 22 安装gcc7 g++7

热门文章

  1. Type C DP简介
  2. HTML+CSS大作业: 个人网站设计——个人网站(7页) 大学生简单个人静态HTML网页设计作品 DIV布局个人介绍网页模板代码DW学生个人网站制作成品下载
  3. 华为网络设备配置子接口
  4. 工程制图与AUTOCAD【1】
  5. PHP医学上什么意思,apache医学上表示什么
  6. HTML期末学生大作业 响应式动漫网页作业 html+css+javascript (1)
  7. [python案例]金融知识图谱构建流程
  8. Win10锁屏壁纸位置在哪?默认锁屏壁纸怎么提取
  9. PB设置表格背景颜色
  10. mac下解决无法往U盘内复制文件的问题