一文读懂程序化易法易化资频易计利

2024-05-29 20:48

本文主要是介绍一文读懂程序化易法易化资频易计利,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转 一文读懂程序化交易、算法交易、量化投资、高频交易、 统计套利

在央行发布的《中国金融稳定报告(2016)》中,对于高频交易的解释为程序化交易的频率超过一定程度,就成为高频交易。而对程序化交易的解释为程序化交易指依托计算机为技术工具,按照既定程序,高速、大规模自动执行的交易。

那么什么是程序化交易、算法交易、量化投资、高频交易、 统计套利,我们一文帮你解释清楚。

1. 程序化交易:program trading 很简单的字面意思,意味着你利用程序(program)进行交易。具体的交易时机,交易仓位,止损止盈获利标准可能包含在程序本身,也可能独立于程序之外,程序本身只是执行的方式。与程序交易对应的是人工交易。一般利用程序交易有几大优势,比如说较快的速度,脱离了人为情绪的影响,执行力有保证等等。  同时也应注意交易程序和交易系统的区别。交易系统是一个完整的系统,具体执行的程序可能只是其中的一部分。一个良好的交易系统应该还有风险控制,资金利用,仓位管理等方面的内容,而不仅仅是买卖信号的产生。

2. 算法交易:algorithm trading 意味着你的交易决定是根据一条或多条算法 (algorithm) 进行的,算法即是你交易的基础(trading logic)。算法本身千差万别,难以一概而论,常见的有以均价为基准的VWAP,通过固定时间间隔执行的TWAP, 趋势跟随的momentum trader等等,如果你自己编一个根据MACD,RSI什么的产生指标的东西,也可以勉强称为algorithm的。算法交易的执行可以是手工的,也可以是纯自动化的。如果利用交易程序来执行的话,就是程序化算法交易。现在大部分的算法交易都由程序化来实现,原因在上一条最后有提到。

3. 量化投资:quantitative investment 一般概指通过概率,微积分等数学工具去研究金融市场各种资产价格的结构性原因来决定的投资。最有代表性的就是曾经盛极一时的Long term capital management,题主可以自行google之。进行量化投资对投资者的数学能力要求很高,所以一般专门进行量化投资的基金和投资公司都喜欢招数学,物理等理科的phd。一般的量化投资都涉及到比较复杂的数学模型,至于是否有效则仁者见仁智者见智。

4. 高频交易:high frenquency trading 意味着每次交易从开仓到平仓只有很短的时间间隔,一般从十几分钟到几微秒不等。主要目的是通过市场短暂的价格波动而获利。无论是趋势追随交易还是套利交易,只要速度达到了都可以被称为高频交易。人工达到高频交易的标准很难,所以一般都是通过程序交易:设置好算法,策略之后由下单软件执行。为了达到有竞争力的速度还需要软硬件共同配合。现在高频交易大概占美国市场电子交易的60%-70%。这是一个winner takes all的游戏,所以到最后大家都在比拼硬件设施,比拼跟exchange的co-location以获得几微秒的优势。

5. 统计套利:statistics arbitrage 统计套利是套利交易的一种,意味着通过历史数据统计来发现套利机会并试图从中获利。比如历史上玉米与大豆的价格比率(玉米价格除以大豆价格)一直维持在某个区间,假设这个区间为1到5。以往的历史数据显示至今为止只有两次玉米与大豆的价格比率突破了5,而且在突破后迅速回落至正常的区间。现在市场上玉米与大豆的比率突然再次突破了5达到了6,作为统计套利者,你很可能就会想要卖出这个比率(卖玉米买大豆),期待比率迅速回归正常区间。如果比率真的迅速回落至4或者3,这时你再平仓(买回玉米卖出大豆)就可以获得可观利润。  当然这只是个粗浅的比方,实际市场比这个复杂的多。如何确定正确的套利区间,如何决定最佳套利比(几手对几手),有没有季节性影响,有没有可能的突发事件影响等等,都需要纳入考虑的范畴。 还有就是要注意套利与对冲的区别,套利一般意味着零风险或者很低的风险,比如你同时买卖一个在不同交易所交易的同一产品,举个例子,买上海铜卖伦敦铜,或者买近月大豆,卖远月大豆。对冲则意味着你只是通过关联性降低了风险敞口,举个例子,你买了橡胶之后又卖了铜进行对冲,因为这两者的关联性相当高。

在知乎上也看到一个有趣的版本。

假想你是一家卖煎饼果子的老板,你每天的任务就是摊煎饼果子→卖出去→摊煎饼果子→卖出去。

不要紧,过两年就老了。

摊煎饼的第一段经历

作为聪明的老板,摊了一个月的煎饼后,你发现了之中重要窍门:用200.67ml的面粉,摊58秒24厘的时候,加一个50g鸡蛋,然后用木杆绕中心作半径20.4cm的圆摊开鸡蛋,再摊40.1秒后反面摊34.4秒,起锅撒10g洋葱以及3.5g香菜。这就是量化投资。

当然量化投资也不一定就好。隔壁老王也学你量化投资,结果他加的香菜是1.4g不够香,然后大家都来吃你的煎饼果子了。(市场的直觉仍然是重点)  

摊煎饼的第二段经历

你觉得自己摊太麻烦,于是你是收了一个煎饼果子徒弟,然后把你摊煎饼经验(算法)告诉你的徒弟,你的徒弟也可以这样做了。 这就是算法交易。

注意算法交易不一定是程序化的,比如有一些因素不好控制(鸡蛋大小不一),这样的话不用程序他们的煎饼果子反而更好吃。不过你也结合了一些程序交易,比如撒洋葱和香菜就是固定的机器手悬空而撒,效果极佳。  

摊煎饼的第三段经历

因为某些原因,你怀疑徒弟可能出问题,而你又机智地发现,这个动作既然是有规律重复的,干嘛不买一个机器人来摊煎饼果子→卖出去→摊煎饼果子→卖出去,这样的话,你每天的任务就只要检查机器线路,改进一下机器人动作,然后在旁边数钱钱。这就叫程序化交易。  

摊煎饼的第四段经历  

在此摊煎饼果子期间,你突然发现当早上太阳位于明媚而哀伤的45°角时,来买煎饼果子的人会增加。但是经过几天的观察后,发现也不是一定会增加,只是普遍来说人会多一些。这个时候,你可以通过预计人数增加多摊几个煎饼果子。这就是统计套利的基本意思。

但是问题来了:为啥太阳位于明媚而哀伤的45°角时人就多一点?

唔,可能喜欢吃煎饼果子的人都喜欢看郭小四的书吧,也可能吃煎饼果子的人都是45°角时才起床来买早点,也可能是这个时候的煎饼果子机器人的脸庞最迷人吸引了无数少女围观…… 唔,谁知道呢。(统计套利就是这样,有时候很难讲清楚到底为什么有价差,波动到底是什么引起的,不过……在统计意义上你可以用这个赚钱就足够了)  

但注意统计套利的方法多种多样,绝不是这么简单。 比如你还发现,在几条街以外的地方有好几家高级煎饼果子店,他们也都发现了这一规律因此每当45°时就都把煎饼果子卖贵相同的价格。但有一天你发现太阳45°的时候老李家的价格并没有跟其他煎饼果子店价格一样变动,你决定今儿个歇业,直接从老李家买煎饼果子去卖给其他家套利(不要跟我扯有利润的问题……)。这其实就是pairs strategy。  

摊煎饼的第五段经历

某天,楼上张寡妇准备打电话要一百个煎饼果子,每个三块八毛。这番心理活动被你察觉到,然后你立马跑去李二狗的摊位买了几十个煎饼果子,价格是三块六。 

然后你以像是在翠花床上被她老公赵铁柱捉到奸一样的的速度跑到了张寡妇家门口,以三块八卖给了张寡妇,虽然利少可是简直稳赚! 当然,偶尔张寡妇来姨妈心情不好,也可能就不要你的果子了,这时候二狗是不退你的,你得自己想办法把你的果子卖掉。  这就是高频交易。

来源:知乎

----------------------------------------------------

拓展学习关注:


《算法导论 第三版英文版》_高清中文版

《深度学习入门:基于Python的理论与实现》_高清中文版

《深入浅出数据分析》_高清中文版

《Python编程:从入门到实践》_高清中文版

《Python科学计算》_高清中文版

《深度学习入门:基于Python的理论与实现》_高清中文版

《深入浅出数据分析》_高清中文版

《Python编程:从入门到实践》_高清中文版


这篇关于一文读懂程序化易法易化资频易计利的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1014605

相关文章

一文深入详解Python的secrets模块

《一文深入详解Python的secrets模块》在构建涉及用户身份认证、权限管理、加密通信等系统时,开发者最不能忽视的一个问题就是“安全性”,Python在3.6版本中引入了专门面向安全用途的secr... 目录引言一、背景与动机:为什么需要 secrets 模块?二、secrets 模块的核心功能1. 基

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

一文全面详解Python变量作用域

《一文全面详解Python变量作用域》变量作用域是Python中非常重要的概念,它决定了在哪里可以访问变量,下面我将用通俗易懂的方式,结合代码示例和图表,带你全面了解Python变量作用域,需要的朋友... 目录一、什么是变量作用域?二、python的四种作用域作用域查找顺序图示三、各作用域详解1. 局部作

一文彻底搞懂Java 中的 SPI 是什么

《一文彻底搞懂Java中的SPI是什么》:本文主要介绍Java中的SPI是什么,本篇文章将通过经典题目、实战解析和面试官视角,帮助你从容应对“SPI”相关问题,赢得技术面试的加分项,需要的朋... 目录一、面试主题概述二、高频面试题汇总三、重点题目详解✅ 面试题1:Java 的 SPI 是什么?如何实现一个

一文详解PostgreSQL复制参数

《一文详解PostgreSQL复制参数》PostgreSQL作为一款功能强大的开源关系型数据库,其复制功能对于构建高可用性系统至关重要,本文给大家详细介绍了PostgreSQL的复制参数,需要的朋友可... 目录一、复制参数基础概念二、核心复制参数深度解析1. max_wal_seChina编程nders:WAL

一文详解如何查看本地MySQL的安装路径

《一文详解如何查看本地MySQL的安装路径》本地安装MySQL对于初学者或者开发人员来说是一项基础技能,但在安装过程中可能会遇到各种问题,:本文主要介绍如何查看本地MySQL安装路径的相关资料,需... 目录1. 如何查看本地mysql的安装路径1.1. 方法1:通过查询本地服务1.2. 方法2:通过MyS

一文详解如何在Vue3中封装API请求

《一文详解如何在Vue3中封装API请求》在现代前端开发中,API请求是不可避免的一部分,尤其是与后端交互时,下面我们来看看如何在Vue3项目中封装API请求,让你在实现功能时更加高效吧... 目录为什么要封装API请求1. vue 3项目结构2. 安装axIOS3. 创建API封装模块4. 封装API请求

一文带你搞懂Redis Stream的6种消息处理模式

《一文带你搞懂RedisStream的6种消息处理模式》Redis5.0版本引入的Stream数据类型,为Redis生态带来了强大而灵活的消息队列功能,本文将为大家详细介绍RedisStream的6... 目录1. 简单消费模式(Simple Consumption)基本概念核心命令实现示例使用场景优缺点2

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-