送你一个支持11种股票交易策略的Python量化库

github有宝!这次带给大家的是火力全开的n种期货/股票交易量化算法宝库。

送你一个支持11种股票交易策略的Python量化库

有没货?是不是都是干货,老铁们先看看以下的交易策略可视化效果图。

送你一个支持11种股票交易策略的Python量化库

精彩吧!咱废话不多,快速切入正题吧。

介绍

此Github库中的大多数脚本都是技术指标自动交易。这些脚本包括各种类型的动量交易,开盘区间突破和统计套利策略。然而,量化交易不仅仅与技术分析有关。它可以指利用计算金融来利用衍生品价格不匹配,对替代数据集进行模式识别以在市场微观结构中生成alpha或低延迟订单执行。因此,这些项目主要进行量化分析,以能跑盈市场。所有脚本都是历史数据回测(是通过Python,在不久的将来可能是Julia进行重写)。

策略:

1. MACD

送你一个支持11种股票交易策略的Python量化库

MACD是交易策略101.MACD指移动平均线收敛/发散。这是一种动量交易策略,它认为上行/下行动量对短期均线的影响大于长期均线。任何没有金融背景的家伙只需要5分钟与MACD信号进行交易。关于MACD振荡器的简单性,它是市场上非专业人士中最常见的策略。在行为经济学中,人们对策略的信任越多,策略就越有效(并非总是如此,例如2008)。因此,我们不应低估MACD的效果。

对于策略本身,计算特定股票的收盘价的长期移动平均线和短期移动平均线。为了生成交易信号,实现了不同时间范围的移动平均线之间的比较。当短期均线高于长期均线时,相应地交易给定的股票。反之亦然。

送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库

2.配对交易

配对交易是统计套利的基本形式。它依赖于两个协整股票不会相互偏离太远的假设。第一步,我们选择两只股票并运行Engle-Granger两步分析。一旦满足协整的标准,标准化残差并将一个西格玛(双尾)设置为阈值。之后,相应地计算所选股票的当前标准化残差。当标准化残差超过阈值时,触发并产生交易信号。简单的策略是,把价格低廉的股票和短期的股票做空。

配对交易的核心思想是协整。从比喻的角度来看,协整就像是一对情侣,两个政党疯狂地联系在一起。然而,大多数关系迟早会破裂,只有极少数人能够结婚(从统计角度看)。因此,在任何配对交易订单执行之前经常检查协整的现状非常重要(同样适用于关系)。

送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库

3. Heikin-Ashi

送你一个支持11种股票交易策略的Python量化库

Heikin-Ashi,实际上是指日语中的名称,是另一种烛台图表。Heiki-Ashi的复杂规则旨在过滤动量交易的噪音。因此,与标准烛台相比,Heikin-Ashi显示更多连续柱,这使得价格动量和反转点在数字中更加可区分。可以说它应该在横向和波动的市场上超过标准烛台。

对于战略本身,最初对四个重要基准进行了一些转换 - open,close,最高,最低。下一步是在Heikin-Ashi Open,Close,High,Low上应用独特的Heikin-Ashi规则来生成交易信号。Heikin-Ashi(或任何动量交易策略)的缺点是响应缓慢。因此,应该相应地设置止损位置,这样就不会陷入任何自动触发的闪电崩盘。

Heikin-Ashi的规则可以在Heikin-Ashi backtest.py中找到。

送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库

4.伦敦 London Breakout

伦敦 London Breakout是每日内部开放范围的突破策略。基本上,它是不同时区不同市场的信息套利。

外汇市场全球24/7全天候运营。例如,您不能仅仅因为福特在纽约证券交易所上市而在ASX中持有福特的股票。由于外汇市场是分散的,只要市场开放,您就可以在任何市场中利用时差导致的信息差进行任何货币对交易。给个例子:

回到London Breakout,伦敦和东京是世界上最大的两个外汇市场。东京FX的交易时间是格林尼治标准时间上午0:00 - 格林尼治标准时间上午8:59。伦敦FX外汇交易时间(夏令时没有夏令时)从格林威治标准时间上午8:00开始即使有一个小时的重叠, London Breakout的关键时间表是格林尼治标准时间上午7:00 - 格林尼治标准时间7:59 amaka是最后一个交易时间之前伦敦市场开放。关键时间框架的价格变动包含了金融市场所有隔夜活动的信息(从当前时区的角度来看)。

对于策略本身,在关键时间范围的高低之前建立上限阈值和下限阈值。一旦伦敦外汇市场开放,将在前几分钟检查价格是否会突破预设的边界。如果它高于阈值,会相应地持有货币对。反之亦然。尽管如此,应该设置一个阈值,以防止在开放波动异常的情况下进行交易。通常,分别根据目标止损或止损清算头寸。在交易时间结束时(仍然从当前时区的角度来看),如果有任何未平仓头寸,会将其清除。

送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库

5.Awesome oscillator

Awesome oscillator是MACD的升级版本。这是关注移动平均线游戏的动力策略之一。而不是在收盘价上采取简单的移动平均线,Awesome oscillator的移动平均线来自高价和低价的平均值。与MACD 类似,它需要短期和长期移动平均线来构建。

可以在TradingView中找到Awesome oscillator的规则。

送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库

6.Oil Money项目

该项目的灵感来自一篇关于石油支持的外汇的文章。当石油退出熊市时,石油生产国的货币兑换也会反弹。这个陈述真的有效吗?

根据彭博社(或许多其他类似研究)的文章,研究人员研究了石油货币与石油价格之间的相关性,而不是因果关系。但相关性并不等于因果关系。相关可能是数学游戏的巧合。我们根本无法得出油价推动货币走势的结论。一些研究人员甚至使用自举,这极大地破坏了时间序列的自相关性。因此,对一些石油化学应用学术分析和计算机模拟以测试石油的因果关系至关重要。

送你一个支持11种股票交易策略的Python量化库

7.Dual Thrust

如果你在谷歌搜索双重推力,你将最终得到火箭引擎的结果。不要惊慌,你可以放心,双推力策略远不及火箭科学。这只是Universal Technical Systems创始人开发的开放式突破策略。这个策略所涉及的数学有小学数据基础即可。

最初,根据前几天的开盘价,收盘价,最高价和最低价设定上限和下限。当市场开盘且价格超过某些阈值时,会在上限/下限阈值之前采取多头/空头头寸。该策略在日内交易中非常有用。但是,该策略中没有止损/盈利头寸。当价格从一个门槛变为另一个门槛时,会改变头寸需要在当天结束时清除所有头寸。

可以在QuantConnect中找到双推力规则。

送你一个支持11种股票交易策略的Python量化库

8.抛物线SAR

抛物线SAR是识别趋势停止和反转的指标。通常,抛物线SAR在图表价格的上方或下方以虚线表示。当价格处于上升趋势时,SAR曲线将低于价格。当价格下跌时,SAR曲线将超过价格。抛物线SAR一直被视为抵抗价格动量的象征。当SAR曲线和价格曲线交叉时,应该执行交易订单。

这种策略的构建看起来非常简单,但由于涉及递归计算,指标的构建非常耗费算力。关于如何计算抛物线SAR的插图可以在维基百科中找到,但它没有得到很好的解释。为了清楚地了解计算,个人建议是查看joeu2004制作的电子表格。

值得一提的是,SAR和RSI(将在后面的章节中介绍)共享同一个创始人Welles Wilder。这个家伙是一个真正的传奇人物,曾经是机械工程师和房地产开发人员,后来成为技术分析师。他的技术交易系统书是任何想提升量化交易系统水平的人必读读物。

送你一个支持11种股票交易策略的Python量化库

9.Bollinger

布林带是一个非常简单但有力的指标。该指标有三个波段。中频带是价格系列的移动平均线(通常需要20滞后)。上部和下部带是远离中间带的两个移动标准偏差。布林带可用于测试各种类型的策略。

对于波动率交易,带宽的收缩和扩展是至关重要的因素。任何明显的动量聚类(它可以采取向上或向下的形式)将导致布林带扩张。并且水平通道中的振荡将导致布林带收缩。

对于动量交易,现象表明了标的资产的阻力和支撑位。在一个强劲的趋势中,价格不断尝试触及或突破上/下带以及布林带向同一方向移动。

对于模式识别,布林带可以测试底部W,前M,头肩模式等。上下波段作为间隔,更容易识别历史数据中的隐藏模式。

有关布林带的更多详情,请访问TradingView。

送你一个支持11种股票交易策略的Python量化库

10.RSI模式

RSI(相对强弱指数)也是一个受欢迎的指标。它反映了当前股价动能的强弱。计算非常简单。我们使用14天平滑移动平均线(或其他移动平均线方法)分别计算每日内部上升趋势和下降趋势。我们将上升趋势移动平均线除以下降趋势移动平均线作为相对强弱。将相对强度标准化100,这成为一个称为RSI的指标。人们普遍认为,70以上的RSI处于超买状态,而30以下的RSI处于超卖状态。这是在RSI上交易的最简单方法(如下图所示)。尽管如此,RSI势头与价格动量之间可能存在分歧,而这些趋势与价格趋势并未在程序中体现。任何分歧战略对RSI的有效性都是值得商榷的。

送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库

如果您正在寻找稍微复杂的东西,那么我们也可以将模式识别技术应用于RSI。与9布林带不同,我们可以直接看看RSI本身的模式而不是价格。由于我们测试了布林带的双底模式,我们这次将在RSI上测试头肩模式。

有关head-shoulder 模式的详细信息,请参阅Investopedia。

送你一个支持11种股票交易策略的Python量化库
送你一个支持11种股票交易策略的Python量化库

11.Monte Carlo项目

蒙特卡洛,实际上指的是大量随机事件的计算机模拟。这种非常规的数学方法在随机过程的研究中非常有用。

前面有关于Linkedin的论点引起了我的注意。"股票价格可能看起来像维纳过程。因此,我们可以使用蒙特卡罗模拟来预测股票价格。" 数据科学博客说。那么,为了成为一个维纳过程,我们必须假设股票价格是连续的。实际上,市场收盘了。隔夜波动存在。但这不是最重要的问题。最大的问题是,我们真的可以使用蒙特卡罗模拟来预测股票价格,甚至是一个范围或方向吗?

送你一个支持11种股票交易策略的Python量化库

以上就是该强大的期货/股票库的策略列表。老铁们可以在github的 je-suis-tm/quant-trading获取这一系列免费但强大的策略库。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,992评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,212评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,535评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,197评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,310评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,383评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,409评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,191评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,621评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,910评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,084评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,763评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,403评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,083评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,318评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,946评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,967评论 2 351

推荐阅读更多精彩内容

  • BIAS 乖离率 移动平均线代表投资人的平均成本,而乖离率则可代表投资人的平均报酬率。乖离率的应用,回档或反弹行情...
    Mr_Xiao阅读 1,735评论 0 9
  • 股本指标 总股本 在指定日期,公司已发行的普通股股份总数(不含优先股)。 A股 流通A股 在指定日期,公司已发行的...
    古月白毛小狐狸阅读 4,859评论 1 2
  • 我把心给了别人,就收不回来;别人又给了别人,爱便流传于世——顾城 昨天看到一条新闻,安装空调的师傅留在教室里的一张...
    n没想好叫什么阅读 479评论 2 0
  • 听着李宗盛的《晚婚》,也许是因为歌里唱出自己的心声,眼泪刷的留下,我们确实如歌里所唱的“我在等,世上唯一契合的灵魂...
    杏格乐阅读 258评论 0 0
  • 作为刚毕业的学生,这是我第一篇在简书的文章,主要是记录java相关东西,新的一年新的开始,记录学习,就这样子。:)
    流花一叶阅读 240评论 0 1