量化交易不仅是机构交易者可访问的。 零售贸易商也参与其中。 虽然如果您想生成算法,则推荐使用编程技能,即使并非始终需要这些技能。 可以使用程序和服务根据您提供的输入来编写策略的编程代码。 然后,将由程序/服务生成的代码插入交易平台,然后开始交易。 但是,在这一切发生之前,想要成为算法的交易者需要逐步完成几个步骤,以决定他们想要使用该算法完成什么以及如何完成。
时间框架和约束
虽然程序设计良好的算法可以自行运行,但建议进行人工监督。 因此,选择您可以监控的时间范围和交易频率。 如果您有一份全职工作,并且将算法编程为在工作时每天在一分钟的图表上进行数百笔交易,那可能不是理想的选择。 您可能希望为交易选择一个较长的时间范围,并减少交易频率,因此可以随时查看。
算法测试阶段的获利能力并不意味着它将永远永远产生这些回报。 有时,如果结果显示该算法无法正常运行,您将需要介入并更改交易算法。 这也是任何从事算法交易的人都必须接受的时间承诺。
财务限制也是一个问题。 佣金以高频交易策略迅速累积,因此请确保您与成本最低的经纪人保持联系,并确保每笔交易的获利潜力每天可能要多次支付这些佣金。 启动资金也是一个考虑因素。 不同的市场和金融产品需要不同数量的资本。 如果是日间交易股票,则您至少需要25, 000美元(建议增加),但交易外汇或期货可能会以更少的价格开始。
市场限制是另一个问题。 并非每个市场都适合算法交易。 选择具有足够流动性的股票,ETF,外汇对或期货来处理算法将要生成的订单。
制定或微调策略
一旦了解了财务和时间限制,就可以制定或微调可以编程的策略。 您可能有一个手动交易的策略,但是容易编码吗? 如果您的策略是高度主观的,而不是基于规则的,则对策略进行编程可能是不可能的。 基于规则的策略最容易编码-基于可量化数据或价格变动的输入策略,止损策略和价格目标。
由于基于规则的策略易于复制和测试,因此如果您没有自己的想法,则可以免费提供许多方法。 Quantpedia就是这样一种资源,它提供了各种定量交易方法的学术论文和交易结果。 可以对列出的规则进行编码,然后根据过去和当前的数据测试其获利能力。 对算法进行编码需要编程技能或访问软件或可以为您编码的人员。
测试交易算法
最重要的步骤是测试。 一旦对交易策略进行了编码,在对其进行测试之前,请勿使用其交易真实资本。 测试包括让该算法在历史价格数据上运行,以显示该算法在数千笔交易中的执行情况。 如果历史测试阶段是有利可图的,并且生成的统计数据可以接受您的风险承受能力(例如最大跌幅,获胜率,破产风险),则可以在模拟帐户中实时测试算法。 再次,此阶段应产生数百笔交易,以便您可以访问性能。
如果该算法在历史价格数据和真实账户交易中有利可图,请使用该算法交易真实资本,但要格外注意。 实时条件与历史测试或演示测试不同,因为算法的订单实际上会影响市场并可能导致滑点。 在经过验证之前,该算法必须像在测试中一样在实际市场中起作用,否则请保持警惕。
持续维护
只要算法在测试过程中建立的统计参数内运行,就不要理会算法。 算法的好处是可以毫无情绪地进行交易,但是不断修改算法的交易者将使该收益无效。 该算法确实需要注意。 监视性能,并且如果市场条件发生很大变化以至于该算法无法正常运行,则可能需要进行调整。
底线
算法交易不是让您一夜暴富的一劳永逸的工作。 实际上,定量交易可以像手动交易一样工作。 如果选择创建算法,请注意时间,财务和市场限制可能会如何影响您的策略,并做出相应的计划。 将当前策略转变为基于规则的策略,可以更轻松地进行编程,或者选择一种已经过测试和研究的定量方法。 然后,使用历史数据和当前数据运行您自己的测试阶段。 如果能够解决问题,请在警惕的情况下用真金白银运行该算法。 如果需要,请进行调整,否则请使其进行工作。