编写你自己的算法交易机器人

许多交易者渴望成为算法交易者,但很难正确地为他们的交易机器人编写代码。这些交易者经常会在网上发现杂乱无章、误导性的算法编码信息,以及一夜暴富的虚假承诺。然而,可靠信息的一个潜在来源是Lucas Liew,在线算法交易课程AlgoTrading101的创造者。截至2020年8月,该课程自2014年10月推出以来,已吸引了超过33000名学生。...

许多交易者渴望成为算法交易者,但很难正确地为他们的交易机器人编写代码。这些交易者经常会在网上发现杂乱无章、误导性的算法编码信息,以及一夜暴富的虚假承诺。然而,可靠信息的一个潜在来源是Lucas Liew,在线算法交易课程AlgoTrading101的创造者。截至2020年8月,该课程自2014年10月推出以来,已吸引了超过33000名学生。

Liew的程序集中于以有组织的方式展示算法交易的基础知识。他坚信算法交易“不是一个快速致富的计划”。下面概述了如何设计、建造和维护自己的算法交易机器人的基础知识(摘自Liew和他的课程)。

3:20

机器人顾问的兴起

什么是交易机器人(a trading robot)?

在最基本的层面上,算法交易机器人是一种计算机代码,能够在金融市场生成和执行买卖信号。这种机器人的主要组成部分包括发出买入或卖出信号的进入规则、指示何时关闭当前仓位的退出规则以及定义买入或卖出数量的仓位调整规则。

关键要点

  • 许多有抱负的algo交易者很难找到正确的教育或指导来正确地编码他们的交易机器人。
  • AlgoTrading101是可靠指令的潜在来源,从2014年发布到2020年8月,它已经获得了33000多条指令。
  • 交易算法或机器人是识别买卖机会的计算机代码,具有执行进出口指令的能力。
  • 为了盈利,机器人必须确定定期和持久的市场效率。
  • 尽管快速致富计划的例子比比皆是,但有抱负的algo交易者最好有适度的期望。

显然,你需要一台电脑和一个互联网连接才能成为一名算法交易员。之后,需要一个微软Windows或Mac操作系统来运行MetaTrader 4(MT4),这是一个使用MetaQuotes语言4(MQL4)编码交易策略的电子交易平台。虽然MT4不是唯一一个可以用来**机器人的软件,但它有许多显著的好处。

一个优势是,虽然MT4的主要资产类别是外汇(FX),但该平台还可以用于股票、股票指数、大宗商品和比特币的差价合约(CFD)交易。使用MT4的其他好处(相对于其他平台)是它易于学习,有许多可用的FX数据源,而且是免费的。

算法交易策略

发展一个算法策略的第一步是思考每个算法交易策略应该具备的一些核心特性。这个策略应该是市场审慎的,因为从市场和经济的角度来看,它基本上是健全的。此外,制定战略所用的数学模型应以可靠的统计方法为基础。

接下来,确定你的机器人想要捕捉什么信息。为了有一个自动化的战略,你的机器人需要能够捕捉到可识别的,持久的市场低效。算法交易策略遵循一套利用市场行为的严格规则,一次性市场无效的发生不足以构建策略。此外,如果市场效率低下的原因是无法确定的,那么就没有办法知道战略的成功或失败是否是由于偶然。

考虑到上述情况,有许多策略类型可以为算法交易机器人的设计提供信息。这些策略包括利用以下(或其任何组合)的策略:

  • 宏观经济新闻(如非农就业或利率变化)
  • 基本面分析(例如,使用收入数据或收益发布说明)
  • 统计分析(例如相关性或协整)
  • 技术分析(如移动平均线)
  • 市场微观结构(如套利或贸易基础设施)

初步研究的重点是制定适合你个人特点的策略。个人风险状况、时间承诺和交易资本等因素都是制定战略时需要考虑的重要因素。然后,您可以开始识别上述持续存在的市场低效。一旦发现市场效率低下,你就可以开始编写一个适合你个人特点的交易机器人。

回溯测试与优化

回溯测试的重点是验证你的交易机器人,包括检查代码以确保它在做你想做的事情,并了解策略在不同时间框架、资产类别或不同市场条件下的表现,特别是在黑天鹅类型的事件(如2007-2008年金融危机)中。

现在,您已经编写了一个机器人的工作,最大限度地提高其性能,同时尽量减少过度拟合的偏见。为了最大限度地提高绩效,您首先需要选择一个好的绩效指标,该指标包含风险和回报因素,以及一致性(例如夏普比率)。同时,当你的机器人过于依赖于过去的数据时,会出现过度拟合的偏差;这样的机器人会给人一种高性能的错觉,但由于未来永远不会完全像过去,它实际上可能会失败。

现场执行

你现在已经准备好开始用真金白银了。然而,除了为你可能经历的情绪起伏做好准备之外,还有一些技术问题需要解决。这些问题包括选择合适的经纪人和实施机制来管理市场风险和运营风险,例如潜在的黑客和技术停机时间。

关键要点

在上线之前,交易者可以从中学到很多东西

在这一步,验证机器人的性能是否与测试阶段的性能相似也很重要。最后,需要进行监控,以确保机器人设计的市场效率仍然存在。

底线

考虑到传奇的大宗商品交易员理查德·丹尼斯(Richard Dennis)教给一群学生他的个人交易策略,这些学生随后在短短五年内就赚了1.75亿美元,因此,向没有经验的交易员传授一套严格的指导方针并获得成功是合情合理的。 然而,尽管存在着不同寻常的例子,但有抱负的交易者绝对应该记住要有适度的期望。

Liew强调,算法交易最重要的部分是“了解你的机器人将在何种市场条件下工作,何时会崩溃”和“了解何时进行干预”。算法交易是有益的,但成功的关键是理解;任何课程或老师在没有充分理解的情况下承诺高额奖励,都应该是一个远离的主要警告信号。

  • 发表于 2021-06-14 14:32
  • 阅读 ( 96 )
  • 分类:商业金融

你可能感兴趣的文章

语法错误(syntax error)和逻辑错误(logical error)的区别

...编程语言都有特定的语法。程序员应该遵循正确的语法来编写程序。当出现语法错误时,称为语法错误。编译时发生语法错误。在运行时发生的错误称为运行时错误。数组越界、跳转为零、访问不可用的内存都是运行时错误的一...

  • 发布于 2020-10-19 09:24
  • 阅读 ( 764 )

什么是计算机科学?

...及如何改进网络内部和网络之间的通信。 机器人学——机器人使用的算法的创造和发展。包括机器人运动学的改进、机器人与人类的接口、环境交互、机器人与机器人的交互、虚拟代理等。 安全性...

  • 发布于 2021-03-13 19:10
  • 阅读 ( 219 )

机器人可以管理你的投资:你需要知道什么

...会很吓人。让别人替你处理投资很有诱惑力,但你能相信机器人能监督你的钱吗? ...

  • 发布于 2021-03-17 11:55
  • 阅读 ( 181 )

9个最好的代码游戏,以建立你的编程技能

... 1机器人代码 ...

  • 发布于 2021-03-17 21:19
  • 阅读 ( 458 )

什么是slam?自动驾驶汽车怎么知道自己在哪里

... 一般来说,SLAM算法的目的很容易迭代。机器人将使用同步定位和映射来估计其在空间中的位置和方向(或姿势),同时创建其环境的地图。这使得机器人能够识别自己的位置以及如何在未知空间中移动。 ...

  • 发布于 2021-03-21 23:54
  • 阅读 ( 364 )

什么是机器学习算法?他们是这样工作的

... 2微软机器人变成了纳粹 ...

  • 发布于 2021-03-23 07:51
  • 阅读 ( 179 )

这些机器学习课程将为您准备一条职业道路

... 它适用于从未编写过一行代码的初学者,也适用于希望切换到这种语言的人。 ...

  • 发布于 2021-03-25 15:43
  • 阅读 ( 262 )

如何使用keras、pytorch、tensorflow等升级python和ai技能

... Python初学者:学习Python编程语言的所有基础知识。从编写第一行代码到创建小型应用程序,每件事都是以一步一步的方式构建的,通过实践练习来学习这门语言。 Python开发的基础:只是Python的基本概念。在你...

  • 发布于 2021-03-29 03:21
  • 阅读 ( 214 )

获取机器学习项目数据集的4种独特方法

... 然而,web抓取还涉及到编写特殊脚本或使用专用工具直接从网页中抓取数据。它还可能涉及使用应用程序编程接口(api)如Serpstack进行更深入的数据收集。 ...

  • 发布于 2021-03-29 21:16
  • 阅读 ( 241 )

如何学会用简单的方法编写代码(并赚更多的钱)

...:学习如何用flatter构建Android应用程序,并用Dart编程语言编写代码。 Python编程、CS、算法和数据结构:学习python3编程,从头开始构建数据结构。 用Python进行数据挖掘---现实生活中的数据科学练习:...

  • 发布于 2021-03-30 14:28
  • 阅读 ( 264 )
wcs7904
wcs7904

0 篇文章

相关推荐