2

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

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

  • 外汇汇率:有时外汇汇率是按比例缩放的——这可能会因要求外汇汇率的方式而异,因此EURJPY Curncy(即日元兑欧元)BGN在 2013 年 10 月 4 日的收盘价为 132.14。倒数(欧元兑日元)为 0.007567。然而,对于JPYEUR Curncy(即欧元兑日元)而言, BGN2013 年 10 月 4 日的收盘价为 0.75672。

  • 外汇远期:取决于您要的是汇率还是远期点(可以通过覆盖来设置)...如果您要汇率,您可能会根据原始汇率得到这些,因此对于EURJPY1M CurncyBGN收盘价为 132.1174 2013 年 10 月 4 日。但是,如果您要求前向点,您会得到这些点按某个因子缩放 - 即 -1.28 为EURJPY1M Curncy.

现在,我并不是要批评彭博在终端中表示这些数据的方式。善良只知道他们何时首次编写这些系统,并且他们必须保持市场从业者已经了解并可能喜欢的功能......在这种情况下,缩放到重要数字可能是有意义的。

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

那么......我该怎么做呢?

嗯......我开始使用的方法是找到FLDS传达此缩放信息的,然后我获取该值以反转它们应用于值的缩放。对于期货来说,就是PX_SCALING_FACTOR. 对于 FX,我发现PX_POS_MULT_FACTOR最可靠。对于 FX 远期点数,它是FWD_SCALE.

(还值得一提的是,这些变量是如何应用的——PX_SCALING_FACTOR期货价格应该除以什么,PX_POS_MULT_FACTOR外汇汇率应该乘以多少,以及FWD_SCALE将远期点除以多少小数位才能得到一个可以加到实际汇率中。)

这样做的问题是它使我必须进行的提取次数增加了一倍,这给我使用 API 增加了很大的开销(参考数据提取似乎也比历史数据提取花费更长的时间。)(FWIW,我正在使用Java 中的 API,但问题应该同样适用于在 Excel 或任何其他受支持的语言中使用 API。)

我曾考虑找出这些信息并将其存储在某个地方......但我真的不想硬编码。此外,这将需要花费很长时间为我感兴趣的所有不同乐器找出正确的比例因子。即使那样,我也不能保证他们在某些时候不会改变他们的比例!

我真正想做的是在我的 fetch 中应用一个覆盖,这将允许我指定应该使用什么比例。(不,上面的字段似乎不能被覆盖。)我已经在很多很多场合向“帮助台”询问过这个问题——我一直在纠缠他们大约 12 个月,但一如既往与彭博社,似乎什么都没有发生。

所以...

  • SO社区中的其他人是否遇到过这个问题?
  • 有没有其他人找到将其设置为覆盖的方法?
  • 有没有其他人找到更好的解决方案?
4

1 回答 1

1

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

对于 FX,我有一个文件:

  • 小数位数(即期、点数和全押远期汇率)
  • 积分量表
  • 现货日期

回答您的具体问题:

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

    对于此特定合约,价格以美分/澳元报价,而不是交易所惯例美元/澳元,以显示期货和期权的更高精确度。日历点差也相应调整。请注意,分时大小已调整 0.01,以确保分时值和合约值与交易所保持一致。

    除了手动检查因素之外,不确定您可以做很多事情......

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

  • 外汇远期:点数遵循市场惯例,但规模可能会有所不同(大多数情况下为 4,但例如 GBPCZK 为 3)。但是,对于给定的一对,它不应随时间而改变。

于 2013-10-08T09:40:33.183 回答