算法交易是一个数据驱动的应用程序。其实就是从数据中获取情报的能力,在交易系统中使用科学的方法获取数据比随心所欲的交易更具有优势。 然而,假设交易情报仅来自数据科学,就是错误的简单化。 交易智能来自于利用多个复杂概念的相互作用,因此,整体方法至关重要。 在启动交易自动化项目时,掌握交易所涉及的概念及其交互应该是首要要求。第二个软件基础结构有助于利用这些概念。 在这篇文章中,我分解了交易智能出现所需的信息,从花费数千小时尝试许多不同的方法中提炼出洞察力。总结在开发集团交易自动化基础设施的过程中吸取的经验教训。 基本概念让我们首先就三个专业名词的含义达成一致,这三个术语在文献中经常被松散地使用,这倾向于混淆。 交易系统是处理低级逻辑的框架,用于构建用于实现和部署交易策略的过程和方法。 交易策略是一组分阶段运行的操作或事件的描述。在验证描述特定市场情况的精确条件后触发事件。交易策略旨在通过持仓和管理,在交易系统更广泛的计划中实现特定目标。 交易机器人是一种计算机程序,它基于可用的数据集,在运行交易会话时应用交易策略中定义的交易逻辑。这些事物可能是测试涉及模拟的事物,或者可能是涉及在交易所下单和管理真实订单的实时交易事物。 交易规则必不可少一般来说,交易策略具有一组指令,其目标是根据市场数据分析做出交易决策。因此,交易逻辑的质量与数据分析能力密切相关。 让我们首先关注人工编程的交易逻辑。 交易理念产生于数据分析和数据可视化。 要想得出何时出售或购买资产的规则,交易者需要根据交易思路制定假设。交易理念中最流行的领域之一来自所谓的技术分析。 虽然一些人认为市场的行为是随机的,但大多数交易者认为,人类做出交易决定的心理会影响市场的行为。因为人类往往被恐惧或贪婪等情绪所驱使或至少受到影响,所以当受到环境刺激时,他们往往会以某种可预测的方式做出反应。从一种种情况来说,交易员认为,这会导致价格混乱波动中出现固定模式。 当然还有其他影响价格的力量,这可能导致不同时间尺度上出现不同模式,如影响特定市场的微观和宏观经济原则、与其他市场的互动、全球政治、资产基本面等。影响市场的是多个且不受约束的变量集,使得它们如此复杂,无法弄清楚。 由于算法交易是一个数据驱动的应用程序,并且由于人工编程的交易逻辑主要来源于对模式的观察,我们可以得出结论,数据可视化也是一个关键组成部分。自由交易者花费数小时盯着市场图表是有原因的:根据他们所看到的做出交易决定。作为一个算法交易者,你也会花时间在图表上,你需要提出想法以后在交易策略中作为规则来实现。 交易策略源于交易理念的实施、测试和调整一旦交易想法被描述为一组规则,你就需要测试你的策略,看看它是如何在历史数据(我们称之为回溯测试)和实时数据反馈中执行的,我们称之为纸面交易。 交易策略的测试是系统交易的一个关键方面,因为测试的精度和可靠性直接影响到测试如何与现实映射。为了使你的测试具有任何价值预测实时交易表现,他们考虑到实时交易的工作原理和影响实时交易会话的所有变量。例如,交易所费用和滑点,即订单的放置率和它们实际由交易所的订单匹配引擎填充的速率之间的差额。 在实时交易中部署自动策略可与处理真实货币的任务关键型金融应用程序相媲美。交易机器人必须是稳健的,必须经过大量的测试和QA是值得信赖的。 它还需要具有灵活性和功能,以跟踪策略的活动,例如保留帐户、提供管理、移动或取消订单的能力等。 稍后我们将考虑其他事项。就目前来说,值得注意的是,算法交易需要相当多的基础设施。 要可靠地设计、测试和部署交易策略,需要大量软件基础架构。让我们简要回顾一下这种基础结构最重要的功能,从现在开始,我们将称之为平台。 平台基本功能交换连接 当我们第一次开始从事交易机器人时,一个中型处于食物链的顶端。几个月后,当我们的基础设施处于可用阶段时,它已经在交易所前20名中无处可寻。 在大众交易所交易之所以重要,是只有热门交易所才能提供适当的流动性,即有足够的买入量,并在订单簿中访问卖出订单,以确保没有单一订单对价格有显著影响。 你的平台应该能够与多个流行的交易所连接。如果你希望利用交易所的低效率,这一点尤其重要。 交易所会公开 API,这些 API 可能会随时间而演变和变化。维护不同的连接器是一项长期挑战。 你的平台应该能够处理各种连接问题,并保证从交易所和事务中提取的数据的完整性。 对于任务关键型应用程序来说,通过互联网进行连接是棘手的。经常出现大量问题,这些问题可能会中断、延迟或损坏你与交易所的交互,在应用程序级别、网络级别、交换的 API 和内部系统级别,以及介于两者之间的任何地方。 数据挖掘 你需要可靠的市场数据来测试交易理念的实现和交易决策。这意味着你需要同时处理历史数据集和来自交易所的实时数据反馈。 你希望访问完整的市场历史,以便应用统计研究并使用长期指标,如移动平均线。 数据集中可能会以不可预知的方式扭曲数据分析,因此从交易所中提取数据并构建数据集的过程必须是多数据源。 你的平台应提供典型的技术分析研究,但也应提供构建自己的工具。这就能够区分那些从数据中提炼出的情报与普通交易者随时可用的情报。 数据可视化 人类是视觉生物。虽然我们的大脑被黑匣子封闭,但他们已经进化出传感器来感知环境,并发送有价值的数据供中枢神经系统解释。视觉是我们的主要传感器。 算法擅长处理数据,但作为人类,能够可视化数据会大大受益于此。是你需要找到数据的灵感,想出交易的想法。 可视化数据是开发交易理念的关键。你的平台将受益于集成的图表系统,以充分利用数据。 理想的情况是计算允许绘制典型市场图表上各种数据的功能,你可以在这些图表上比较数据,以查找算法会错过的视觉线索。 策略测试 你应该能够对历史数据无缝回溯测试算法。你还希望能够使用实时数据测试策略远期,无需在交易所(称为纸面交易)下实际订单,以及用一小部分资本下实际订单,即前向测试。 性能都不是未来性能的准确预测因素,但如果你的策略在测试中表现不佳,那么信任它们进行实时交易是不合理的。 这是部署实时交易策略之前所需的基本测试功能。但是,有些更高级的平台功能可能会对策略的性能产生巨大影响。其中一些在策略设计和调整阶段的早期阶段很有用。 例如,不仅能够根据合并的回溯测试性能报告,而且在基于每个交易进行图形模拟的情况下直接在图表上分析策略行为的能力。 在上图中,模拟了三个连续仓位,描绘了进入和退出事件,以及动态止盈和止损目标。这些功能使交易规则的精细分析成为可能,并调整和优化到一个新的水平。 同样,使用策略调试解决方案进行计数也是非常可取的。最重要的是,要访问交易机器人处理的运行时信息,以便轻松检测规则定义的潜在缺陷。 订单管理 下单可能一目了然,似乎是一个简单的问题。然而, 交易机器人应该提供足够的情报来跟踪和管理订单。 订单可能会以不同的费率被填写,在一段时间内可能会逐步填写,或者可能完全无法填写。每次订单部分填写时,交换费用将收取部分的填充费用,需要进行核算。由于多种原因,订单填充的速率可能不是算法预期的速率,包括滑点、小数位舍入等。所有这些事件必须由交易机器人处理,以便交易会话与交易所发生的情况同步。 此外,交易机器人应该做至少一些基本的簿记,以跟踪余额,以便交易会话可以正确使用分配的资本。 可扩展部署 与手动交易相比,自动交易的主要优势之一是能够使用几乎无限数量的策略。在开发阶段,你的操作可能包括多个策略在多个交易所的多个市场上运行。为了实现这种能力,你需要软件基础结构来协调资源的使用。 资源的有效利用也造就了交易策略的正确。 上图显示了跨多台计算机部署多个协调任务 你的平台应该能够协调不同机器上数据挖掘和交易任务的部署,以便操作可以随着战略的制定而扩展。 协调需要有效,以便在同一市场和交易所运行的战略可以共享相同的数据源。 基础架构可扩展性 一个交易自动化平台,旨在成功的交易应该能够迎合不同的方法,寻找和利用交易机会。前面描述的关键概念是一个坚实的基础设施,适用于技术分析、统计分析、情绪分析以及几乎任何基于数据挖掘的方法。 说在最后如果你的目标是在算法交易中取得成功,成功意味着获得积极可靠的交易表现,意味着赚钱。 你的重点应该是产生导致交易想法出现的数据挖掘,并实施这些想法到交易策略。这不仅是算法交易的乐趣部分,而且是决定了你的努力是否会得到应有回报的重点。
每天二轮KEY红包,每轮1000KEY。 第一轮红包在文中“,”处。随文章一同发出。 第二轮红包在文中“。”处。第一轮抢完即发第二轮。 精评活动字数和转发都不进行强制要求,主要评选标准就是评论和文章内容的契合度。一共是1000KEY奖励。 —- 编译者/作者:勇哥柒 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
【跟着勇哥柒学知识162】交易机器人让你躺着赚取的核心是什么,如何构建一个
2020-12-09 勇哥柒 来源:区块链网络
LOADING...
相关阅读:
- 淘金天尊:12月9日BTCETH行情分析及操作策略2020-12-09
- 50EX|12月9日比特币行情分析:短期支撑位的反弹能否起效2020-12-09
- 老李解币:BTC把握空头获利千点、ETH空头获利近50点2020-12-09
- “电子数据证据在知识产权保护中的应用与创新”沙龙活动在武汉圆满2020-12-09
- 东哥论币12.9早间以太坊行情分析与操作策略2020-12-09