彭博社 - 从API获得真实世界的价格

时间:2013-10-07 13:37:43

标签: bloomberg

对于许多金融工具,Bloomberg会对终端中显示的价格进行调整 - 例如:

  • CME的外汇期货:例如ADZ3 Curncy(2013年12月澳门证券交易所澳元期货)显示为93。88(2013年10月4日收盘),而实际(CME)市场/结算价格为0.9388

  • 外汇汇率:有时外汇汇率会按比例调整 - 这可能因外汇汇率要求的方式而有所不同,因此EURJPY Curncy(即每欧元的日元汇率)有BGN收盘价。 2013年10月4日132.14。反向(每日元欧元)为0.007567。但是,对于JPYEUR Curncy(即每日元欧元),BGN在2013年10月4日的收盘价为0.75672。

  • FX远期:取决于您是要求差价还是远期积分(可以是set by overrides)......如果您要求汇率,您可能会根据原始汇率获得这些汇率,因此对于EURJPY1M CurncyBGN在2013年10月4日的收盘价为132.1174。但是如果你要求前进点,你会得到一些因子 - 即EURJPY1M Curncy的-1.28。

现在,我并不是要批评布隆伯格在终端中表示这些数据的方式。 Goodness只知道他们第一次编写这些系统的时间,并且他们必须保持市场从业者已经了解并可能喜欢的功能......在这种情况下,扩展到有意义的数字可能是有意义的。

但是,当我使用API​​时,我想获得真实世界,实际价格。比如...交易所的实际价格或您可以用日元交易欧元的实际价格。

那么......我怎么能这样做?

嗯......我使用的方法是找到传递此缩放信息的FLDS,然后我获取该值以反转它们应用于值的比例。对于期货,那是PX_SCALING_FACTOR。对于FX,我发现PX_POS_MULT_FACTOR最可靠。对于外汇远期积分,它是FWD_SCALE

(还值得一提的是这些是如何应用的vaires - 所以PX_SCALING_FACTOR是期​​货价格应该划分PX_POS_MULT_FACTOR是外汇汇率应该是什么? >乘以乘以,FWD_SCALE是将前向点除以得到可以添加到实际外汇汇率的值的小数位数。)

问题在于它增加了我必须进行的提取次数,这增加了我使用API​​的显着开销(参考数据提取似乎也需要比历史数据提取更长的时间。)(FWIW,I我在Java中使用API​​,但问题应该同样适用于在Excel或任何其他支持的语言中使用API​​。)

我已经考虑过找出这些信息并将其存储在某个地方......但我真的不想硬编码。而且,这需要花费很长时间才能找到我感兴趣的所有不同乐器的正确缩放因子。即便如此,我也无法保证他们不会在某些时候改变他们的音阶!

我真正希望能够做的是在我的提取中应用覆盖,这将允许我指定应该使用的比例。 (不,上面的字段似乎不能覆盖。)我已经在很多很多场合询问过“帮助台”了 - 我一直在讨论它约12个月,但一如既往与彭博社一起,似乎没有发生任何事情。

所以......

  • SO社区中的其他任何人都遇到过这个问题吗?
  • 还有其他人找到了将其设置为覆盖的方法吗?
  • 有没有其他人找到更好的解决方案?

1 个答案:

答案 0 :(得分:1)

简短的回答:您似乎掌握了所有可用的信息,而且您无法做更多的事情。但是这些约定随着时间的推移是稳定的,因此可以存储尺度/因子而不是每次都获取数据(EURGBP点的比例总是为4)。

对于FX,我有一个文件:

  • 小数(对于现货,积分和全进远期汇率)
  • 点数比例
  • 现货日期

回答具体问题:

  • CME的外汇期货:ADZ3 Curncy> DES> 3

      

    对于此特定合约,价格以美分/澳元而非交易所会议美元/澳元报价,以显示期货和期权的更高精确度。日历差价也会相应调整。请注意,刻度尺寸已调整为0.01,以确保刻度值和合约价值与交易所一致。

    除了手动检查因素外,还不确定你能做多少事情......

  • 汇率:PX_POS_MULT_FACTOR确实是您最好的选择 - 请注意,给定货币对的该字段的值极不可能改变。或者,您可以遵循配对和AFAIK的市场惯例,费率将始终是实际费率。所以使用EURJPY而不是JPYEUR。主要货币依次为:欧元,英镑,澳元,纽元,美元,加元,瑞士法郎,日元。对于不涉及任何这些的对,您将不得不获取信息。

  • FX Forwards:积分符合市场惯例,但规模可能会有所不同(大部分时间为4,但GBPCZK为3)。但是,对于给定的一对,它不应该随时间而改变。