「作者面对面 (Chat Chat)」是 GitChat 团队出品的一档对话技术写作者的栏目。我们希望通过展示更多 Chat 作者的视角,来分享程序员关于生活和工作的态度,以及学习和成长的经历。立足于写作,但不限于写作。

本次采访对象 元宵大师 可能算得上是一位「非典型」程序员,别人编程是因为喜欢「写代码」这个有前途的职业,而他学习编程的初衷却是为了炒股…

元宵大师在 GitChat 已经发布了 5 篇 Chat,包括《详解用 Python 访问金融交易数据的方法》等兼具专业性的技术文章。今天,我们就和他聊一聊他成为程序员和交易员的经历,以及他在学习编程、金融、项目管理过程中的宝贵经验。


能否介绍一下你自己和你正在做的事?

我是一名资深 Python 数据分析师,兼高级项目管理师,致力于推动人工智能、大数据分析在金融量化交易领域中的应用。平时乐于将开发过程和经验在公众号「元宵大师带你用 Python 量化交易」中记录和分享,也曾在核心期刊上发表多篇论文。目前活跃于 GitChat 平台,已发布多篇量化交易相关的 Chat 文章,旨在与广大技术爱好者分享和交流经验心得。

目前我正在积极推广量化交易在股票交易中的应用,对我个人而言分享这方面的经验,一是为了增加自己在该领域的知名度,另外也是为了通过知识分享方式帮助大家升级投资理财技能。

能否简单介绍一下量化交易?

可能大家对量化交易比较陌生。量化交易是一种新兴的系统化的金融投资方法,它以计算机强大运算能力为基础,运用数据建模、统计学分析、程序设计等工具从历史数据中得到大概率下获利的交易策略,属于人工智能、大数据分析在金融领域的具体应用。目前这种方式在美国的金融领域已经日趋成熟,国内虽然近几年才开始推广和流行,但是发展势头迅猛,方兴未艾。

众所周知,股票投资已经成为全民最主要的理财渠道之一。A 股市场是一个以散户为主导的市场,大多数股民交易频繁,对买卖点思考并不严谨,如果交易股票毫无章法的话势必沦为“韭菜”被收割。而量化交易由于其管理概率、理性交易的思想所在,非常适合在普通股民群体中所推广。对程序员们来说会编程则是从事量化“得天独厚”的优势。

你是如何成为程序员的?

成为程序员的主要目的是为了实现量化交易。至于为什么会从事量化交易,其实也是一种机缘巧合。

我在读高中的时候家里的电脑上安装了一款收费的炒股软件,这个软件是源自“道氏理论”的思想,从历史行情的研判中给出选股和选时方面的操作信号,当时从大人们的反馈中我获悉到这个软件是非常有效的。不过当时我在脑海中一直有个疑问是“这个软件真的这么厉害,能够预测走势?”

到了大一暑假的时候,我就开始帮着大人们交易股票了,当时自己并不是太懂,一直盯着盘面上波动的价格。有几次自己心态受到价格波动的影响,就自作主张地卖出股票,谁知道刚卖出以后股价就拉升了,我顿时懊悔不已。不过,从此我对股票产生了浓厚的兴趣:盘面上的各种指标是什么含义?价格波动的背后又是什么原理?

于是我开始阅读股票相关的书籍,比如《漫步华尔街》、《笑傲股市》、《金融炼金术》、《股票作手回忆录》等。从最开始学习股票的基础知识和原理,到之后观察和学习那些专业人士的交易模式,通过不断地模仿和练习,最后形成一种适合我自己的独特方法。

在一次偶然的机会,我去了我朋友的一家小私募公司交流。在聊到我在交易中如何克服人性弱点的困扰时,他推荐了《海龟交易法则》这本书,他说他很喜欢书中的那套交易原理,并且鼓励我将编程融入到交易中去

《海龟交易法则》使我第一次接触到了量化交易。在金融行业,美国银行、美林证券的“石英”项目、摩根大通的“雅典娜”项目都战略性地使用了 Python 进行高效的金融程序开发和金融数据分析,于是我也开启了学习 Python 编程的旅程。

你在学习过程中遇到的最大挑战是什么?

最大的挑战就是从零开始学习一项新事物,比如我从一名小白开始学习量化交易、Python、项目管理等等。在这个学习过程中,一开始是非常痛苦的,往往很多人会在这个阶段放弃

对于学习编程来说,你是怎么度过这个痛苦的阶段的?

就拿学习 Python 来说。首先我设定学习的路线,直白的说就是先模仿后实践,最后让知识成为自己的技能。我在学习 Python 的时候,就选择了几本口碑不错的书籍或者课程作为“模仿”的对象。

当我系统地掌握基本的语法结构和使用案例后,我会开始思考接下去如何进阶 Python。寻找练手的项目可以在实践中把知识点融会贯通起来,特别是遇到 Bug 的时候一定要刨根究底地排查,有时候学习的乐趣也体现在恍然大悟的一瞬间

虽然不同的专业技术有很大差别,不过我觉得只要掌握了学习的方法,上手这些技术不存在太大的障碍。

还有哪些提高学习效率的方法?

我的经验是“如何学习比学什么更重要”。它能够教会你如何学会“走路”。乌尔里希. 伯泽尔在《有效学习》中提出:学会“如何学习”,将是专家们所说的“终极生存技能”,这是现代社会超越其他一切技能的关键能力。因为一旦学会了如何学习,你就可以学习任何事物。

由于我是高级项目管理师,有项目管理思维的存在,关于如何学习,很多时候我会借用项目管理里面的一些方法。比如首先我会先设立一个大的学习目标,然后将大的目标分解为各个小的目标,对这些小目标的完成预估一个工期,再将这些小的目标和工期制定成我的学习计划,并且严格按照这个计划开展学习。

你平时喜欢用什么效率工具?

常规做笔记的方式是直接拿笔和笔记本,或者电脑上用 word 文档。不过这些方式都有一个缺点,就是管理起来特别麻烦,不方便检索。所以我想分享给大家一款非常优秀的数字笔记软件 OneNote。

OneNote 突破了这些缺点,它可以对笔记内容集中管理,检索也很便捷,还能直接导入表格,然后多人同步编辑。

是否可以截图一下你的代码编辑器?

元宵大师的代码编辑器

你在 GitChat 上创作的最新 Chat《Python 面向对象搭建量化交易策略回测框架》,你希望通过这篇 Chat 或这个专栏向读者传递什么?从你的角度看,你的收获是什么?

量化交易的精髓是从股票、债券、期货等历史数据中回测获取交易策略的盈亏“概率”,通过管理盈亏的“概率”帮助投资者做出靠谱的决策。因此制定一个策略模型后,不能立即应用到实战中,而是要经过回测更客观地评估策略的好坏。“回测框架”就成为了量化玩家们的标配工具。尽管市面上已经有不少回测平台,但是我们知道 “投资交易”这个领域是高度个性化的,因为每个交易者所关注的、侧重的层面并不相同

对此本场 Chat 基于股票教大家用 Python 以面向对象方式搭建量化交易策略回测框架,不仅能够了解到回测的各个流程,而且能够以此为基础搭建出适合自己的回测平台。

怎么看待 Python 的未来趋势?

由于 Python 是一门高级语言,语法简单,通俗易懂,相对于其他编程语言来说,非常容易上手。Python 有丰富的第三方库支持,可以使开发变得非常便捷,它的存在以及未来的趋势就是为了帮助我们快速解决实际问题。

对其他学习或奋斗中的人,你有什么建议?

我的建议是 “一切的坚持都源自于热爱”。它能够决定你能“走”多远!不管这个领域是否热门,是否在快速发展期,只要你能够付出更多的努力并且乐在其中,那么一定可以成为这个领域中的佼佼者!


《「作者面对面」访谈录》是 GitChat 团队出品的对话优秀技术人的窗口。我们希望能代替读者坐到作者们对面,和他们聊聊自己的生活和选择,观念和理想。最新一期访谈将由 GitChat 微信服务号首发,敬请期待。

为炒股而编程的 Python 程序员相关推荐

  1. python无师自通配套资源_Python编程 无师自通 专业程序员的养成

    本书可以满足几乎所有想要学习编程的初学者.本书适合高中.大学阶段想要自学编程的学生,以及其他行业想入门编程的人,同时也适合作为编程入门的培训教材. 本书作者是一名自学成才的程序员,经过一年的自学,掌握 ...

  2. Python程序员的圣经——《Python编程快速上手:让繁琐工作自动化》尾末附下载地址

    一.前言 如今,人们面临的大多数任务都可以通过编写计算机软件来完成.Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.通过Python编程,我们能够解决现实生活中的很多任务. 今天给 ...

  3. python编程从入门到实战的16堂课_好评如潮,百万Python程序员的「案头必备书」,终于出配套习题解答了!...

    原标题:好评如潮,百万Python程序员的「案头必备书」,终于出配套习题解答了! 据SlashData统计,截止到2020年3月世界上超过840万使用Python编写代码的开发人员.机器学习的兴起是P ...

  4. 【阅读心得】Python编程无师自通——专业程序员的养成

    读书笔记: 笔者是一个稍微有点编程基础的人,学习python一开始是从吴恩达的视频入门的,但是直接套用框架,使用模块,对python的语法却不甚了解,我也试过直接去廖雪峰的python学习网站上面学习 ...

  5. python编程可以用来干嘛,python程序员是干嘛的

    什么是python编程 Python是一门新兴的编程语言,编程语言有很多,比如C++.Java.C#.PHP.JavaScript等,Python也是其中之一,在学习Python前,我们需要对它有一定 ...

  6. python编程工具p-5款Python程序员高频使用开发工具推荐

    很多Python学习者想必都会有如下感悟:最开始学习Python的时候,因为没有去探索好用的工具,吃了很多苦头.后来工作中深刻体会到,合理使用开发的工具的便利和高效.今天,我就把Python程序员使用 ...

  7. 520 情人节 :属于Python 程序员的脱单攻略大合集(视频版)

    作者| Python 编程时光 责编| Carol 情人节年年有,但今年的 5.20 要比以往的更有意义. 2020.05.20 ,爱你爱你我爱你,如果再卡个时间(13:14),那就是 爱你爱你我爱你 ...

  8. Python 程序员最常犯的十个错误

    常见错误1:错误地将表达式作为函数的默认参数 在Python中,我们可以为函数的某个参数设置默认值,使该参数成为可选参数.虽然这是一个很好的语言特性,但是当默认值是可变类型时,也会导致一些令人困惑的情 ...

  9. python官方推荐的三本书-一个合格的python程序员,应该从这三本书入手

    pytho官方推荐的三本入门书籍 python是一门新起的老的编程语言,为什么这么说呢?因为在很早就出现了,最初被用于编写自动化脚本,随着版本不断更新,越来越用于独立的大型项目,在17年广泛进入入门的 ...

最新文章

  1. flask uwsgi nginx *504* Gateway Time ou解决办法
  2. AliOS Things 硬件抽象层(HAL)对接系列2 — SPI driver porting
  3. [异常解决] android studio检测不到手机的解决办法——ADB驱动自己安装
  4. JavaFX 2:创建登录表单
  5. LeetCode 525. 连续数组(前缀和+哈希)
  6. Vue.js 内部运行机制之总结 常见问题解答
  7. webstorm使用gitee_webstorm 中 git 基本操作
  8. 深度学习(三十五)异构计算GLSL学习笔记(1)
  9. 【官方教程】Ubuntu 安装 mongoDB
  10. 20201124:力扣第216场周赛(上)
  11. 四种大数据分析方法 ,大数据学习入门必须掌握!
  12. matlab 矩阵逻辑与,MATLAB矩阵的寻访与赋值
  13. 智能配电房综合监控系统的探讨
  14. python组合数计算cmnn_《Python机器学习——预测分析核心算法》——2.5 用实数值属性预测实数值目标:评估红酒口感...
  15. 王道计算机网络 第三章 数据链路层
  16. Linux系统性能监控和管理命令技能全get
  17. PHP学习----换行符
  18. UML设计java程序_利用UML序列图设计Java应用程序详解
  19. Autocad毕业设计CAD机械练习图开始发放啦!
  20. 如何制作wordpress短代码

热门文章

  1. 第三篇:python基础之数据类型与变量
  2. 生物信息学缘起——linux篇(五)if-then-else命令
  3. linux egrep用法,grep,egrep及相应的正则表达式用法详解
  4. 今日头条技术架构分析,看这篇就对了!
  5. 【Android】获取APP里面的图片素材
  6. 12天背诵楞严咒的技巧_宣化上人:教你一个背诵〈楞严咒〉的妙法
  7. 文明6联机方法与实践
  8. 佳和她的四合院 像老北京一样生活
  9. 香蕉派安装64位linux,香蕉派之Lubuntu初体验
  10. golang github.com/Nik-U/pbc使用前windows配置