2011-04-25 111 views
0

我正在使用RBloomberg库查询实时和历史价格数据,但我想知道是否有可能让变量持续更新其实时定价。现在:R-Bloomberg价格描述中的实时价格更新

> library(RBloomberg) 
Loading required package: rJava 
> conn <- blpConnect() 
R version 2.12.2 (2011-02-25) 
rJava Version 0.8-8 
RBloomberg Version 0.4-148 
Java environment initialized successfully. 
Looking for most recent blpapi3.jar file... 
Adding C:\blp\API\APIv3\JavaAPI\v3.4.1.3\lib\blpapi3.jar to Java classpath 
Bloomberg API Version 3.4.1.3 
> bdp(conn, "EURUSD Curncy", "Last Price") 
       Last Price 
EURUSD Curncy  1.4575 

所以,你可以很容易地得到欧元兑美元的汇率。但我怎样才能使变量订阅到EURUSD Curncy Last_price,以便变量为当前值实时更新自己,而不是总是重新运行bdp(conn,“EURUSD Curncy”,“last price”)?我可以做这样的事吗?

> eurusd <- bdp(conn, "EURUSD Curncy", "Last Price") 
> eurusd 
       Last Price 
EURUSD Curncy  1.4575 

这样,每当我型我,欧元兑美元获得最新汇率,而不是一个从我初始化变量?目前这似乎并不奏效(即使在汇率发生变化后,它也始终具有相同的价值)。

> eurusd 
       Last Price 
EURUSD Curncy  1.4575 
> eurusd 
       Last Price 
EURUSD Curncy  1.4575 
> eurusd <- bdp(conn, "EURUSD Curncy", "Last Price") 
> eurusd 
       Last Price 
EURUSD Curncy  1.4578 
> 

基本上可R请勿什么Excel完全相同,这是有它总是有其欧元兑美元的最新值的单元格,而无需不断磨合BDP更新变量?

+0

我想你可以做'eurusd = function()bdp(conn,“EURUSD Curncy”,“Last Price”)''。这样,只要你叫'eurusd()',你就可以放心,你正在获得最新的价格。 – Ramnath 2011-04-25 21:15:10

+0

感谢Ramnath,但这似乎不起作用。如果我这样做,那么只要输入> eurosd – 2011-04-25 21:42:48

+0

输入'eurosd()'来执行该功能,它就会打印出“function()bdp(conn,”EURUSD Curncy“,”Last Price“)。没有'()',R让你查看函数的内部。请参阅[这里](http://www.stat.tamu.edu/~aredd/site/?q=node/44)以便快速写下它。 – Chase 2011-04-25 21:54:28

回答

1

最终,BB会让你得到一个数据许可证,如果你继续击中它们监视的项目请求限制。不幸的是,数据许可证只是静态数据。如果你真的想要更多,那么你必须使用BPIPE。

+0

。这就是为什么我打算使用Python进行数据订阅。两个相关的问题: 1)我如何知道我有多接近我的极限? 2)什么是BPIPE? – 2011-10-05 18:56:53