quantopian系列—Self-Serve Data( 三 )


  • 公共URL形式
在实时数据设置验证过程中 , 我们会通过ContentType头 "text/csv "来检查是否可以正确访问您的实时文件 , 以及它是否符合预期的csv格式 。 对于设置验证 , 您可以使用只有列头行的占位符实时文件 。
一个常见的错误是尝试使用共享文件网页(例如 , 如果您使用Dropbox , 则为 , 而不是可下载的 URL () 。 验证您是否拥有可下载的csv URL 的最佳方法是尝试在浏览器中打开该 URL 。 如果csv在您的网络浏览器中渲染 , 您没有使用正确的url格式 。 如果您使用的是下载网址 , 您的浏览器应该会为您下载该文件 。
你也可以检查你本地python环境中的ContentType 。
quantopian系列—Self-Serve Data文章插图
对于像S3和GoogleStorage这样的一般访问文件提供商 , 你可能需要配置服务 , 以服务于适当的 "text/csv "头的ContentType 。
  • 从google sheets中上传
Google Sheets拥有强大的IMPORTDATA和QUERY函数 , 可以用来编程下载API数据 , 重命名列 , 并通过列/日期/等方式过滤数据(例如 。 QUERY(Sample!A1:L, "select A,K,L,D,E,B,G,H WHERE A >= date '2018-03-01'")) 。 如果你使用Google Sheets来处理你的数据 , 你可以从你的公共Google Sheets电子表格导入一个CSV 。 要获得您的文件的公共URL 。
  1. 点击 "文件">"发布到网络" 。
  2. 将 "网页 "选项更改为 "逗号分隔的值(.csv)" 。
  3. 点击 "发布 "按钮 。
  4. 复制并粘贴格式类似于 ;single=true&output=csv 的 URL 。
  • 从Dropbox上传
要使用Dropbox , 请将您的文件放在公共文件夹中 , 并使用 "公共URL" 。 公共网址的格式类似于。 要将 dropbox 共享文件网页查看器 URL 转换为 Self-Serve 期待的 csv URL , 请将 www.dropbox.com 替换为 dl.dropboxusercontent.com , 并从结尾处去掉 ?dl=0 。将会按照预期自动下载 csv 。
  • 最终确定你的实时数据集
配置好实时数据加载后 , 点击提交 。 您的数据集现在已进入历史数据集摄取队列 。 从数据集提交到完全可用的典型延迟约为 15 分钟 。 您可以在 "研究 "中检查您的上传状态 。 在所有数据完全可用之前 , 可以导入数据集 。
检查上传状态您可以通过在自定义数据集仪表板的状态栏上鼠标移动来监控数据集的状态 , 这将浮现最后一次加载尝试的时间戳和任何错误信息 。
要对数据集负载进行更详细的分析 , 您可以利用Research中的load_metrics 。 load_metrics允许您检查历史上传和每日实时上传到所有自定义数据集的状态 。 您可以使用 load_metrics 来检查您所有自定义数据集的上传状态 , 就像这样 。
quantopian系列—Self-Serve Data文章插图
在上面的例子中 , lm是一个DataFrame , 包含以下几列:
filenames_downloaded: 被Quantopian下载的文件名称 。
rows_received: 从历史数据或其他数据中下载的原始行数 。 从历史或实时端点(FTP、Google Sheets、Dropbox)下载的原始行总数 。
rows_added: 添加到基础数据集表中的新记录数(按资产/每天的符号映射和重复数据化后) 。
total_rows: 总行数 。 代表原始上传数据的总行数 。
delta_rows_added: 代表对之前上传的记录进行更新的新记录数 。 如果之前的记录已经以相同的主要日期和主要资产更新 , 则该记录被认为是更新 。
total_delta_rows:加载完成后 , 代表对之前上传的记录进行更新的记录总数 。
timestamp:下载的开始时间 。
time_elapsed: 处理数据的秒数 。
last_updated:最后更新的时间 。 对于实时负载 , last_updated代表记录的最大时间戳 , 代表最初报告的数据(不包括更新记录) 。 对于历史负载 , last_updated代表历史负载完成的时间 。
source_last_updated:在源FTP文件上最后修改的时间戳(仅指实时加载) 。
status: 负载的状态 。 可以是[running, empty (no data to process), failed, completed]中的任何一种 。
error:运行失败时的错误信息 。
run_type:运行的类型 。 返回 "live "或 "historical" 。 对于查找重新添加的数据集的第一次加载尝试很有用 。
获取你的自定义数据一旦您使用Self-Serve上传了一个自定义数据集到Quantopian , 您可以通过点击Self-Serve数据页面上的数据集名称 , 导航到您的自定义数据集的自动生成的文档页面 。 这个页面只有你可以查看 , 它包括第一次加载日期和在Pipeline中使用数据集的代码样本 , 以帮助你开始 。
与其他Pipeline数据集一样 , 自定义数据集是作为Pipeline数据集导入的 , 你在上传中指定的每个值列都有一个BoundColumn属性 。 重要的是 , Pipeline中没有关于自定义数据集的特殊属性 , 这意味着你可以像使用任何预集成的DataSet或BoundColumn一样使用它们 。