0

我想通过回测一系列股票来制定趋势跟踪策略;让我们说所有纽约证券交易所或标准普尔500股票。我今天问这个问题是因为我不确定如何处理海量历史价格数据的存储/组织。

经过几个小时的研究,我来到这里,询问您的经验和意识。我将非常感谢您可以分享有关此主题的任何信息/意识


个人经历背景:

-我知道如何编码。是电气工程专业,不是CS专业。

-我知道如何将单个股票代码的股票数据提取到 Excel 中。熟悉在 ThinkOrSwim 上使用过滤和自定义研究。

应用背景: 从 1995 年到今天,让我们根据相对强度/动量来评估表现最好的股票。我们将比较许多技术特征来制定策略。这样做的关键是拥有大量股票的数据,我们可以使用 python、C#、R 或任何其他编码语言对这些数据进行回测。然后,我们可以通过评估技术驱动的进场和退出的回报、欧米茄比率、超额回报中值和 Jensen 阿尔法(每周测量)来确定可能的策略。


这是我无法弄清楚下一步是什么的地方:

- 将所有 S&P500 公司的数据加载到单个 Excel 工作簿中是行不通的。我觉得它的数据太多,excel无法处理。每个代码将有数 MB 的价格数据。

- 获取并存储宇宙中每个代码的价格数据的最佳方法是什么?我们是否在这里查看诸如 SQL 或 Microsoft 访问之类的东西?我不知道; 我对处理大量这样的数据的主题没有足够的认识。你有什么想法?


在过去的一段时间内,我曾使用 ToS 根据真/假参数过滤股票;然而,ToS 的功能是有限的。我想要一个更灵活的回测引擎,比如用 python 或 C# 编写的代码。不确定 Rscript 是否有用。- 也许,有一些我没有意识到的图书馆会让这一切成为可能?如果有请告诉我。

我知道 Quantopia 和其他基于网络的 Quant 平台都在附近。这些是我进行回测的最佳选择吗?对他们有什么想法吗?


我让这太复杂了吗?在 excel、ToS 甚至是 Tradingview 中,对单个股票或多个股票的策略进行回测不是问题。但是有很多数据,我不确定存储这些数据然后使用 python 脚本或其他东西来执行回测的最佳选择是什么。


随机最终想法: -最终想探索一些人工智能辅助,以优化基于参数创建的策略。我知道这是一件事,但不确定在哪里可以了解更多信息。如果你这样做,请告诉我。


感谢你们。我希望这不是太多。如果您能分享任何知识以提高我对该主题的认识,我将不胜感激。

推特:@b_gumm

4

1 回答 1

0

EXCEL 或 CALC 的数据量太大。即使您只想从 S&P 500 中筛选 500 只股票,您也会得到 220 万行(大约 220 天/年 * 20 年 * 500 只股票)。对于这样的数据量,您应该使用像 MySQL 这样的 SQL 数据库。它的性能足以处理这么多的数据。但是你必须找到更新的方法。如果您每天获得完整的时间序列并将其存储到您的数据库中,则此过程可能需要大约。1小时。您也可以使用增量下载,但要注意公司行为(例如拆分)。

我不知道 Quantopia,但我知道一个类似的回测服务,我在去年创建了一个 python 回测脚本。结果和我预想的完全不同。研究结果是回测服务因为错误的数据而计算出错误的结果。所以要谨慎对待结果。

于 2018-12-28T23:40:34.680 回答