算法交易

正本清源区块链——Caoz

青春壹個敷衍的年華 提交于 2020-02-24 02:08:44
正本清源区块链 说明:以下内容整理自Caoz的《正本清源区块链》,如有不妥,请联系我修改或删除。 简介 不讨论炒币!不讨论炒币!不讨论炒币! 本课程内容分为两部分: 第一部分,烧脑篇,介绍区块链的技术概念,目标本源和技术演进,以及信息安全相关的风险。 第二部分,诱惑篇,介绍区块链的产业链,相关产业的收益模式和未来的潜在商业空间。谁在赚钱,赚什么钱。 前言 大家好,我是曹政,很高兴今天可以跟大家分享关于区块链的一些学习心得。 区块链现在已经成为市场的超级热点,开设区块链分享的课程也有很多,比如42章经曲凯他们搞的课程质量也是非常不错的,实话说,我们开始准备决定这门课程的时候,他们还没公布课程,所以当他们公布的时候我也觉得有点猝不及防,所以这对我的课程也提出了一些挑战。一方面,针对第一次接触这类课程的同学,我会尽量覆盖其他优秀课程的基本内容;但另一方面,我也必须准备一些他们尚未触及的信息常识,也希望大家能觉得这个课程有独特的价值。 当然,必须承认,我自己也并不是这个领域的专家,所以可能水平有限,以及也必须照顾更多同学的基础,所以一些过于复杂的技术原理,概念和深入的内容,可能这里不会涉及;此外这里不涉及炒币话题,如有这方面的问题,烦请移步到其他擅长割韭菜的炒币社群。这里1个小时内可以随时退费。 关于比特币为什么值钱这个话题 ,我个人觉得是这样的:从美国金融危机之后

LeetCode:Best Time to Buy and Sell Stock( I & II & III & IV买股票四连)

放肆的年华 提交于 2020-02-18 05:54:46
Best Time to Buy and Sell Stock 四连题解 目录 LeetCode 121. Best Time to Buy and Sell Stock I 题目描述 样例 算法 代码 LeetCode 122. Best Time to Buy and Sell Stock II 题目描述 样例 算法 代码 LeetCode 123. Best Time to Buy and Sell Stock III 题目描述 样例 算法 代码 LeetCode 188. Best Time to Buy and Sell Stock IV 题目描述 样例 算法 代码 LeetCode 121. Best Time to Buy and Sell Stock I 题目描述 假设你有一个数组,其中第 i 个元素表示第 i 天某个股票的价格。 注意:设计一种算法以找到最大利润,你只可以完成1次交易,但必须先购买股票再出售股票 样例 输入: [7,1,5,3,6,4] 输出: 5 解释: 第二天买(price = 1),第五天卖(price=6),利润为5; 输入: [7,6,4,3,1] 输出: 0 解释: 这个例子中没有完成交易。 算法 这道题要求是 只能交易一次 ,因此就是寻找数组内正向的最大差值,解法是维护一个min变量存储当前遇到的最低股价

乐视秒杀:每秒十万笔交易的数据架构解读

爱⌒轻易说出口 提交于 2019-12-24 10:50:06
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 随着乐视硬件抢购的不断升级,乐视集团支付面临的请求压力百倍乃至千倍的暴增。作为商品购买的最后一环,保证用户快速稳定地完成支付尤为重要。所以在2015年11月,我们对整个支付系统进行了全面的架构升级,使之具备了每秒稳定处理10万订单的能力。为乐视生态各种形式的抢购秒杀活动提供了强有力的支撑。 一. 分库分表 在redis,memcached等缓存系统盛行的互联网时代,构建一个支撑每秒十万只读的系统并不复杂,无非是通过一致性哈希扩展缓存节点,水平扩展web服务器等。支付系统要处理每秒十万笔订单,需要的是每秒数十万的数据库更新操作(insert加update),这在任何一个独立数据库上都是不可能完成的任务,所以我们首先要做的是对订单表(简称order)进行分库与分表。 在进行数据库操作时,一般都会有用户ID(简称uid)字段,所以我们选择以uid进行分库分表。 分库策略我们选择了“二叉树分库” , 所谓“二叉树分库”指的是:我们在进行数据库扩容时,都是以2的倍数进行扩容。比如:1台扩容到2台,2台扩容到4台,4台扩容到8台,以此类推。 这种分库方式的好处是,我们在进行扩容时,只需DBA进行表级的数据同步,而不需要自己写脚本进行行级数据同步。 光是有分库是不够的,经过持续压力测试我们发现,在同一数据库中

乐视秒杀:每秒十万笔交易的数据架构解读

淺唱寂寞╮ 提交于 2019-12-24 10:41:06
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 随着乐视硬件抢购的不断升级,乐视集团支付面临的请求压力百倍乃至千倍的暴增。作为商品购买的最后一环,保证用户快速稳定地完成支付尤为重要。所以在2015年11月,我们对整个支付系统进行了全面的架构升级,使之具备了每秒稳定处理10万订单的能力。为乐视生态各种形式的抢购秒杀活动提供了强有力的支撑。 一. 分库分表 在redis,memcached等缓存系统盛行的互联网时代,构建一个支撑每秒十万只读的系统并不复杂,无非是通过一致性哈希扩展缓存节点,水平扩展web服务器等。支付系统要处理每秒十万笔订单,需要的是每秒数十万的数据库更新操作(insert加update),这在任何一个独立数据库上都是不可能完成的任务,所以我们首先要做的是对订单表(简称order)进行分库与分表。 在进行数据库操作时,一般都会有用户ID(简称uid)字段,所以我们选择以uid进行分库分表。 分库策略我们选择了“二叉树分库”,所谓“二叉树分库”指的是:我们在进行数据库扩容时,都是以2的倍数进行扩容。比如:1台扩容到2台,2台扩容到4台,4台扩容到8台,以此类推。这种分库方式的好处是,我们在进行扩容时,只需DBA进行表级的数据同步,而不需要自己写脚本进行行级数据同步。 光是有分库是不够的,经过持续压力测试我们发现,在同一数据库中

轻松构建算法交易机器:一点python基础+一点运气

只谈情不闲聊 提交于 2019-12-17 15:42:16
全文共 3071 字,预计学习时长 9 分钟 图源:Unsplash 人工智能的新突破每天都成为头条新闻。在金融领域,因其具有深厚历史、清楚明了和结构化数据,机器学习广泛运用。最终,金融领域成为了“学习机器”的一个早期标志,在这个领域取得的巨大成功还在继续。 现在,免佣金交易应用程序编程接口(API)和云计算的兴起让普通人只需要运气不错,再加上会一点python,就能运行自己的算法交易策略。 下面,小芯将展示如何在谷歌云平台(GCP)上使用Alpaca来进行构建框架。一如既往,文中所有编码可在Github主页里找到。 首先需要一些数据。数据来源当然有的免费,有的需要付费。本文中所用到的TD Ameritrade API(德美利证券)是免费的。下一步需要可以通过API递交免佣金交易的交易平台 这一步会用到Alpaca。Alpaca允许纸交易(虚拟币),这样就可以在免于破产的前提下测试所构建的交易策略。接下来只需要自动运行机器并存储/检索数据。此处将使用GCP,因为我对这一平台较为熟悉,但其他的云平台如AWS、Azure等都是不错的。 图源:Unsplash 对了,当然还需要算法交易策略。本文所讲的是如何建构运行交易策略的框架,所以策略本身并不重要,不是本文的重点。为了演示,文中会使用动量策略(momentumstrategy)查找过去125天内动量最大的股票,并每天进行交易。

关于算法交易的最常见问题

痴心易碎 提交于 2019-12-14 07:43:40
也称为自动交易,算法交易在过去十年中被许多贸易公司,经纪人和个人投资者使用。在过去的几年里,关于算法交易已经有很多人说过和写过。虽然在线有很多关于它的视频和基于文本的指南,但不仅有一个来源会让你成为算法交易的主人。 因此,获得算法交易的最佳机会就是找出所有有关它的知识。有了这些知识和股票交易软件,您将有机会提高股票交易的机会。为了帮助读者掌握算法交易知识,我将提供以下3个关于算法交易的最常见问题的答案。 1、什么是算法交易? 这可能是有关算法交易的最常见问题。简而言之,算法交易是交易活动的自动化。这里的自动化意味着通过计算机而不是人来执行交易。执行交易的自动股票交易应用程序通过用软件的编程语言定义的“算法”给出指令。 算法的既定定义是它是解决问题的“ 逐步过程 ”。问题可能是数学问题或计算机过程。执行“算法交易”的计算机根据定义的标准自动进行交易。在电子市场中,算法交易的实施取决于广泛的交易系统的发展。 这是一个包含一组具有实体和有限范围的参数的系统。这些参数反映了已采用的交易方法,并且基于复杂程度不同的数学计算。最后但并非最不重要的是,算法交易只能使用股票交易软件来执行。 2、Algo-Trading中最常用的策略是什么? 最常用的算法交易策略也是最佳策略。它们是最好的策略,因为它们可以帮助投资者提高收益或降低成本。算法交易的最佳和最常用的策略是: 1.趋势跟踪策略

算法交易系统架构,此篇足矣!

限于喜欢 提交于 2019-12-11 12:07:25
https://cloud.tencent.com/developer/article/1469568 本篇推文将分三个部分由浅到深,为大家介绍算法交易系统架构的细节: 算法交易系统概述 算法交易系统要求(重点) 算法交易系统架构(超重点) 第一部分:算法交易系统概述 算法交易是使用计算机算法自动做出交易决策,提交指令并在提交后管理那些指令。算法交易系统最好使用由三个组件组成的简单概念架构来理解,这些组件处理算法交易系统的不同方面,即数据 处理程序、策略处理程序和交易执行处理程序 。这些组件与上述算法交易的定义一一映射。在今天的推文中,我们扩展这个架构来描述如何构建更智能化的算法交易系统。 概念算法交易系统 系统更智能化意味着什么?在算法交易的背景下,我们将通过系统自我适应和自我感知的程度来度量智能化。首先让我们详细说明算法交易系统概念架构中的三个组件。 数据组件 算法交易系统可以使用结构化数据、非结构化数据或者两者兼用。如果数据是按照预定结构组织的,那么它是结构化的。示例包括电子表格、CSV文件、JSON文件、XML、数据库以及数据结构。与市场相关的数据(如日内价格、日终价格和交易量)通常以结构化格式提供。经济和公司财务数据也以结构化格式提供。Quandl和Wind是两个很好的示例结构化财务数据的来源。 如果数据没有按照预定结构进行组织,那么它就是非结构化的。示例包括新闻

【转帖】基于区块链究竟可以做什么?

╄→гoц情女王★ 提交于 2019-12-04 18:02:42
基于区块链究竟可以做什么? https://segmentfault.com/a/1190000020938068 区块链 talkingdata 2.2k 次阅读 · 读完需要 21 分钟 20 背景 这几天,随着中央政治局内部学习的讲话内容公布,区块链再一次成为了公众的焦点,不仅迅速登上了各大媒体的头版头条,带动一直低迷的比特币大涨了40%,同时也连带拉动A股区块链相关概念股的行情。一夜间,区块链仿佛又站在了最强风口上。 其实早在2015年,随着比特币的大热,区块链曾经风光一时,但是除了在金融领域以外基本上是野蛮生长的状况。然而这一次,区块链技术在政治局学习中被专门提及,而且还在理论、基础、应用人才等方面指出了发展方向。那么,被提到国家核心技术高度的区块链到底能实现什么? 区块链介绍 区块链是什么 在回答这个前,让我们先来看看什么是区块链。根据维基百科的定义,区块链是借由密码学保护内容并串连起来的记录集(又称区块)。每一个区块包含了前一个区块的加密散列、相应时间戳记以及交易数据(通常用默克尔树Merkle tree算法计算的散列值表示),这样的设计使得区块内容具有难以篡改的特性。用区块链技术所串接的分布式账本能让两方有效纪录交易,且可永久查验此交易。 以比特币为例,区块链的示意图如下: 摘自: https://commons.wikimedia.org...

有关区块链的共识算法,你了解多少?

匿名 (未验证) 提交于 2019-12-03 00:26:01
区块链技术的伟大之处在于去中心化和去信任(或降低信用成本),如何在一个完全陌生的网络环境里,通过代码撮合交易?言外之意,这些代码究竟发挥了何种神奇的魔力,让买卖双方产生信任呢?这就是共识。 1 为什么需要共识算法? 在区块链系统当中,没有一个像银行一样的中心化记账机构,每个节点都要记账。例如在公有区块链中,世界上任何个体或者团体都可以发送交易,且交易能够获得该区块链的有效确认,任何人都可以参与其共识过程。而在点对点网络下存在较高的网络延迟,各个节点所观察到的事务先后顺序不可能完全一致。 那对于区块链这样的去中心化的、点对点的分布式数据库,网上成千上万的节点中谁有权创建下一个区块?对要创建的区块发生分歧怎么办?怎么防止有人恶意区块来盗取利益?这就需要共识机制来解决这样的问题。因此所谓的“共识机制”,就是一套方法论来让参与者能形成共同认识,并且在有缺陷和不诚实行为的网络中保证容错。 区块链系统,维基百科给出的解释:区块链(英语:blockchain 或 block chain)是用分布式数据库识别、传播和记载信息的智能化对等网络, 也称为价值互联网。意味着区块链系统就是一个分布式系统。而在分布式系统研究过程中,大家应该都听说过拜占庭问题。 知识库-拜占庭将军问题 一组拜占庭将军分别各率领一支军队共同围困一座城市。为了简化问题,将各支军队的行动策略限定为进攻或撤离两种。

用人话解释比特币原理(转载)

这一生的挚爱 提交于 2019-11-28 19:35:42
究竟是什么让一枚虚拟货币的汇率在3年间翻了25000倍,是什么力量让央行副行长“感兴趣”但“不承认”,抛开投机与商业欺诈比特币作为一种工具究竟有没有价值?欢迎收看今天的走进“伪”科学——用普通人也能理解的话解释比特币。   比特币大热,北京时间上周六下午五点多,比特币网络刚刚成交了有史以来最大的一笔交易——19 万比特币被抛向了市场,按照当时的价格 5000 左右计算,一个 10 亿人民币级的富翁就这样诞生了,你们随便感受下。   但是,这篇文章并不是教你如何投机的,本人也无意怂恿任何人进入比特币投机市场。请务必看准这几个大字再继续往下阅读:   比特币市场风险巨大,投机请异常谨慎!   好了,该打的预防针打了,接下来我们谈正事:这篇文章并不讨论比特币的商业逻辑,也不讨论它是不是骗局,而是将比特币的原理用通俗易懂、非极客也能听理解的语言进行解释,让大家来看看这个让央行副行长表示“有特点”而且“很有启发性”的电子货币究竟是个啥东西。因为考虑到要做到浅显易懂的原因,有些地方的解释并不十分严谨,有基础想要进一步研究的同学可以去看这篇比特币的原始论文《比特币:一种点对点的电子现金系统》。   下面,我们就开始走进比特币……   首先,从比特币的本质说起,比特币的本质其实就是一堆复杂算法所生成的特解。特解是指方程组所能得到无限个(其实比特币是有限个)解中的一组