通过Alpha Venture API提供实时金融数据(替代雅虎金融API)

sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理
2018年12月编辑 知识库

所以我相信我终于找到了一个不错的替代老雅虎金融API,这样你就可以把金融市场数据直接带入RapidMiner进行数据分析。一家名为Alpha Vantage的公司开发了一种API,似乎可以执行相同的功能。

你可以在他们的网站上获得一个免费的API密钥,你可以使用下面的过程直接进入RapidMiner 7.6:

<?xml version="1.0" encoding="UTF-8"?> <过程version = " 7.6.000”>
> <上下文
<输入/ >
<输出/ >
<宏/ >
> < /上下文

<过程扩展= " true " >

<列出关键= "宏" >
.
.
.

< / >列表
< /操作符>

<列出关键= " attribute_value " / >
<列出关键= " set_additional_roles " / >
< /操作符>


<列出关键= " string_machting_queries " / >
<列出关键= " regular_expression_queries " >
/> .
<列出关键= " xpath_queries " / >
<列出关键= "名称" / >
<列出关键= " index_queries " / >
<列出关键= " jsonpath_queries " / >
https://www.alphavantage.co/query?function=%{函数},outputsize = % {outputsize},象征= % {tickerSymbol}, apikey = % {apikey} " / >
<列出关键= " request_properties " / >
< /操作符>

<过程扩展= " true " >


<列出关键= " specify_weights " >

< / >列表
< /操作符>



.
/> .
<列出关键= " attribute_name " >
.
< / >列表
.

< /操作符>



.
< /操作符>


.
.
< /操作符>


.
.
< /操作符>

.
.
.
< /操作符>

.
< /操作符>

<参数键=“replace_what”值= "元数据(。)[0 - 9][]\ s " / >
< /操作符>

.
.
<列出关键= " rename_additional_attributes " / >
< /操作符>


.
< /操作符>



<列出关键= " set_additional_roles " / >
< /操作符>
/> .

/> .

/> .


.
.
> < /过程
清理
< /操作符>
/> . .

.
.
Alpha Vantage API(alphavantage.co)<br>作者:Scott Genzer<br>发布日期:‎‎8-25-2017<br>链接:http://community.www.turtlecreekpls.com/t5/RapidMiner-Studio-Knowledge-Base/Real-Time-Financial-Data-via-Alpha-Venture-API-alternative-to/ta-p/41119<br><br>Note:对于下面的每个进程,在运行之前,在Set Macros操作符中输入您的Alpha Vantage API密钥、股票代码和其他请求元素https://www.alphavantage.co/documentation/) & lt; br> & lt; br> > < /描述
> < /过程
< /操作符>
> < /过程

欢迎您的反馈。享受吧!

斯科特

Telcontar120 CraigBostonUSA hughesfleming68 luc_bartkowski Jasmine_ Rapidstudent
«1

评论

  • Telcontar120Telcontar120 主持人,RapidMiner认证分析师,RapidMiner认证专家,会员职位:1635年独角兽

    太棒了。效果好极了!

    布莱恩·T。
    Lindon合资企业
    乐鱼平台进入数据科学咨询由认证的RapidMiner专家
    Jasmine_
  • luc_bartkowskiluc_bartkowski 成员职位:46Maven

    你好,斯科特,

    我将您的XML实现为子流程和构建块。但是我不理解这个过程的结果集。

    请看下面的图片。来自Alpha Vantage流程的每个示例都包含不同的属性。你能解释一下原因吗?

    TSLA3.jpeg对于任何后续的操作符,Alpha Vantage流程提供了一个只有3个属性的示例集

    TSLA2.jpegAlpha Vantage结果示例集写入CSV提供了一个完全不同的示例集。

    TSLA1.jpegAlpha Vantage示例集连接到一个流程输出端口。

    我不明白。这里发生了什么?

    为什么Alpha Vantage流程的结果示例集显示依赖于后续操作符的3种格式?

    最好的问候,

    卢克

  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理

    你好卢克,

    我认为这里发生的事情是元数据没有被推进。这是典型的通过Webservice来丰富数据,因为RapidMiner不知道它的方式是什么属性。它只选取我后来手动重命名的那些:Date、date_3和value。别担心——你所有的属性都在那里,你可以“选择”你想要的或多或少。只是您可能需要手动添加它们,而不是选择属性中的漂亮箭头。

    屏幕截图2017-10-08 14:41 .png

    斯科特

  • luc_bartkowskiluc_bartkowski 成员职位:46Maven

    谢谢,斯科特?

  • luc_bartkowskiluc_bartkowski 成员职位:46Maven

    对于此构件的其他用户:

    要获得TIME_SERIES_INTRADAY示例集,不要忘记在编译url字符串的“Enrich Data by Webservice(3)”操作符中调整url REGEX。对于TIME_SERIES_INTRADAY示例,必须在url中设置所需的“interval”参数和相关值。为了实现这一点,添加一个额外的宏“requiredInterval”,如下所示:

    requiredInterval.jpeg添加requiredInterval宏

    在“Enrich Data by Webservice(3)”操作符中调整url REGEX,如下所示:

    https://www.alphavantage.co/query?function=%{函数}&outputsize = % {outputSize} & symbol = % {tickerSymbol} apiKey = % {apiKey间隔= % {requiredInterval}

  • websiteguywebsiteguy 成员职位:24Maven

    @luc_bartkowski

    嗨,卢克,我是个新手,你能告诉我吗发布一个样本当应用INTRADAY时,如何调整这个过程的日期时间元素

    我已经按照规定做了修改,但流程失败了。感谢任何帮助和建议。把李

    fail.png失败

    fail.png 0 b
  • luc_bartkowskiluc_bartkowski 成员职位:46Maven

    嗨,李,
    很抱歉回复晚了。
    我很遗憾地说,我没有继续使用的过程@sgenzer

    我用MySQL创建了一个数据库,记录每日和盘中的股票价格。

    我写了一个python程序来不断更新这个数据库。

    从RapidMiner中访问股票价格数据只不过是从这个数据库中访问表/视图。

  • websiteguywebsiteguy 成员职位:24Maven

    @luc_bartkowski

    你好,卢克,抱歉我这么晚才回复:)

    你有可以借用的日内模型吗:/...

    我让它在日常工作,但似乎可以让它在盘中运行,价格,也许它的日期idk的格式。

    把李

  • luc_bartkowskiluc_bartkowski 成员职位:46Maven

    嗨,李,

    Alpha vantage API的事情是,Intraday返回一个额外的属性,例如5分钟,10分钟,15分钟等。@sgenzer的RM进程必须扩展以支持这个额外的参数。

    我没有RM盘中模型。我发现AV并不总是返回正确的答案,有时我收到一个API错误而不是一个结果集。在我的python脚本中,我包含了一个重试函数,如果收到这样的响应。其次:我想把数据存储在数据库中。这需要CRUD功能,我也在我的python脚本中包含了该功能。很抱歉我不能响应你的要求。

  • 1032956310329563 成员职位:1贡献我

    你好,

    有可能得到一步一步的教程这吗?

    亲切的问候,

    marek

  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理

    h@10329563-所以现在比我写那篇文章的时候更容易了。:)只需要做以下几点:

    1.去Alpha Vantage网站并获得API密钥

    2.进入Alpha Vantage进程,它已经在社区存储库中点击此链接

    3.遵循以下步骤:

    屏幕截图2018-10-22 10:58.46 AM.png

    屏幕截图2018-10-22 10:59.56 AM.png

    单击“Apply”并运行该流程。完成了。

    屏幕截图2018年10月22日上午11.03.59。png

    RapidMining快乐!

    斯科特

  • cleisnercleisner 成员职位:4贡献我

    嗨,这里有人访问过Accurint (https://secure.accurint.com/app/bps/main)通过RapidMiner?这是最好的收费网站的人物搜索和许多其他公共记录。任何提示都将非常感激,因为我只是一个初学者。

  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理

    @cleisner-据我所知没有。如果你是一个订阅者,很高兴合作使它连接。

    斯科特

  • cleisnercleisner 成员职位:4贡献我

    你好,@sgenzer.看来我不会再用Accurint了。事实证明,这是一个高度规范的数据源,我不能按计划使用它。

  • bjoernbalubjoernbalu 成员职位:3.贡献我

    你好,斯科特,

    感谢上传过程。我仍然有问题,以获得可用的属性。

    例如,我想计算接近数据的移动平均。我无法选择数据。

    谢谢你的帮助

    比约恩

  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理

    你好@bjoernbalu你能发布你的XML吗,这样我就能看到你在做什么了?

  • bjoernbalubjoernbalu 成员职位:3.贡献我

    你好@sgenzer

    这是XML。API被移除。

    <?xml version="1.0" encoding="UTF-8"?> <过程version = " 9.0.003”>
    > <上下文
    <输入/ >
    <输出/ >
    <宏/ >
    > < /上下文

    <过程扩展= " true " >

    <列出关键= "宏" >

    .
    .

    .
    < / >列表
    <描述align="center" color="紫色" colored="true" width="126">你需要在运行前把你的ALPHA VANTAGE API密钥放在第一个宏中!> < /描述
    < /操作符>

    <列出关键= " attribute_value " / >
    <列出关键= " set_additional_roles " / >
    这是空白-忽略我
    < /操作符>


    <列出关键= " string_machting_queries " / >
    <列出关键= " regular_expression_queries " >
    /> .
    <列出关键= " xpath_queries " / >
    <列出关键= "名称" / >
    <列出关键= " index_queries " / >
    <列出关键= " jsonpath_queries " / >
    https://www.alphavantage.co/query?function=%{函数},amp; outputsize = % {outputsize}, amp;符号= % {tickerSymbol}, amp; apikey = % {apikey}" / >
    <列出关键= " request_properties " / >
    Alpha Vantage API GET request
    < /操作符>

    <过程扩展= " true " >


    <列出关键= " specify_weights " >

    < / >列表
    < /操作符>



    .
    /> .
    <列出关键= " attribute_name " >
    .
    < / >列表
    .

    < /操作符>



    .
    < /操作符>


    .
    .
    < /操作符>


    .
    .
    < /操作符>

    .
    .
    .
    < /操作符>

    .
    < /操作符>

    <参数键=“replace_what”值= "元数据(。)[0 - 9][]\ s " / >
    < /操作符>

    .
    .
    <列出关键= " rename_additional_attributes " / >
    < /操作符>


    .
    < /操作符>



    <列出关键= " set_additional_roles " / >
    < /操作符>


    < /操作符>




    < /操作符>
    /> .

    /> .

    /> .





    .
    .
    .
    > < /过程
    JSON解析和更多后处理
    < /操作符>
    /> . .

    .
    .
    > < /过程
    < /操作符>
    > < /过程
  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理

    嗯,不确定……你能在正片叠底运算符(放一个断点)处显示ExampleSet是什么样子的吗?

  • bjoernbalubjoernbalu 成员职位:3.贡献我

    你好,

    仍然有13个常规属性,但是列表中只有3个属性(value、date_3、Date)可用。

    有趣的是,当我在存储库中存储数据时,一切都正常工作。检索属性后,在移动平均运算符中可用。我不明白。

    谢谢你的帮助和指导。

    比约恩

  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理

    是的,所以RapidMiner进程由于各种原因丢失元数据是很常见的。你总是可以直接在参数框中输入属性的名称,即使它没有出现在下拉菜单中:

    屏幕截图2018年10月29日下午4:40.46。png

  • PhilipDPhilipD 成员职位:2贡献我

    嗨,谢谢似乎很有用。

    1) Alpha Vantage API使用其他Web扩展;Web挖掘和文本处理,准备安装它们。Alpha Vantage API显示为红色,点击警告消息并按照步骤操作非常简单。

    2)当我现在运行它,只有日期列出现。没有价格或仪器信息。不能看到任何明显的,将尝试与断点检查数据..

    再次感谢

    菲利普

  • PhilipDPhilipD 成员职位:2贡献我

    嗨,看起来属性是不可选的。可能是轴心战略的结果?我对这个还不太了解。数据肯定在那里,直到Set Role(将Set Role exa连接到Out,结果显示的正是我所期望的)

    我想我想知道我是否需要选择属性。

    当我试着分析这些数据时,我将拭目以待。

    谢谢你!

  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理

    谢谢@PhilipD.如果我需要对模板进行更改,请随时通知我。


    斯科特

    abevensee
  • abevenseeabevensee 成员职位:4贡献我
    @sgenzer看到关于丢失元数据的评论,但我有一个问题,当通过RMServer上的web服务使用时,Get Pages操作符失败。流程在Studio中工作得很好,但我希望最终用户能够将报价器输入到web服务中,并让它运行以获得定价数据。你以前见过这个吗?任何想法都将非常感激。

    Jasmine_
  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理
    2020年2月编辑
    @abevensee-这很可能是由于没有在作业代理上安装Web挖掘扩展。

    斯科特
    Jasmine_ abevensee
  • SkyTraderSkyTrader 成员职位:88因素二世
    2020年6月编辑

    大家好,我是机器学习的新手,但对算法交易并不陌生。我很抱歉这里有这么多问题,但我不知道准备好用于ML的财务数据会有多复杂。

    使用Excel文件和RM:

    我假设,如果我想更新Excel并从雅虎金融(通过运行Web查询)获得更多数据,那么我将不得不导入一个更新版本的Excel文件到RM,并失去我在RM上所做的工作,例如,一个旧的Excel文件,只有数据到2020年5月,而不是有最新的数据到目前(10/06/2020)?

    如果实时数据被直接拉入RM,而不是使用Excel,这似乎更容易?所以我读了上面斯科特的帖子,其中包含:

    “2。通过点击这个链接进入Alpha Vantage Process,它已经在社区资源库中了”(我不得不引用它,因为没有url来引用单个帖子?)

    但是链接什么都不做,第一个图像我不确定如何实现/得到在RM?

    当我手动搜索市场时,也没有阿尔法优势过程?

    另外,你如何在Alpha Vantage网站上引入/调用一些金融指标,使它们与开盘/高位/低位/收盘价/成交量数据一起出现?用我的Excel解决方案,我将有O/H/L/C/V数据加上每天的指标值。

    你也知道为什么这个网站在Chrome中冻结/非常慢(与Firefox相比,我不得不完成这篇文章)?

    非常感谢。





  • SkyTraderSkyTrader 成员职位:88因素二世
    2020年6月编辑
    你好,
    我只是想知道这些论坛有多定期被监控,或者如果我写一篇新的帖子会更好?
    谢谢。
  • sgenzersgenzer 12管理员,版主,员工,RapidMiner认证分析师,社区管理员,成员,大学教授,PM版主职位:2959年社区经理

    你好@SkyTrader这些论坛一直受到监控,但人们是否对某个特定问题有答案是高度可变的。

    至于这篇文章,我会诚实地说,我已经有很长一段时间没有使用AlphaVantage了(差不多是从2017年写这篇文章开始的。我知道社区里有一群RM用户在处理财务数据…我的朋友@hughesfleming68我马上就想到了。也许他有一些想法?

    斯科特

    SkyTrader
  • Telcontar120Telcontar120 主持人,RapidMiner认证分析师,RapidMiner认证专家,会员职位:1635年独角兽
    由于您既没有提供流程也没有提供示例数据,并且提出了许多问题(其中一些问题很复杂),因此我将提供一些一般性的评论。
    RapidMiner进程被设计成能够非常容易地运行和重新运行。一旦您创建了一个从底层数据源获取数据并执行额外ETL的流程,当您有更多需要处理的数据时,重新运行该流程就非常简单了。只要底层数据结构没有任何变化,简单地添加更多行并不会抑制RapidMiner高效地工作。因此,丢失旧工作簿上的工作通常不是一个问题,因为该工作可以很容易地重新创建
    布莱恩·T。
    Lindon合资企业
    乐鱼平台进入数据科学咨询由认证的RapidMiner专家
    SkyTrader
  • hughesfleming68hughesfleming68 成员职位:323独角兽
    我从来没用过Alpha Vantage,但我用Quandl。大多数这些服务都有开发良好的python工具。在execute python操作符中使用它们是获取数据的最快方法。
    SkyTrader
登录注册置评。