可以比较,但前提是把外币报价拆成“签约日折算价”和“结算日风险价”两层,并固定一个记录汇率的口径。如果只把外币金额按当天汇率折成一次本币数字,之后无论汇率怎么动,这个比较基准都会失真;如果合同允许用任意日期的汇率结算,却仍拿最初折算价去比,结论会直接失效。
收到外币报价时,不要急着把它换算成一个本币数字。先把报价里的币种、金额、付款节点和结算规则分开记录。至少需要两类数字:一是按某个明确日期的汇率折算出的参考价,用于横向比较;二是按合同约定的结算汇率规则推算出的风险价,用于判断预算上限。
参考价的作用是让不同币种的报价能放在同一张表里比较。它的前提是:所有报价都使用同一个记录日期和同一种汇率来源。比如假设有三份报价,两份用美元、一份用欧元,如果分别用三个不同日期的汇率折算,比较结果里就混进了汇率波动,而不是开发成本差异。这个短例子只是说明比较方法,不代表任何真实报价。
风险价的作用是回答另一个问题:如果汇率在付款周期内朝不利方向走,预算会被推高多少。它不要求预测汇率,只需要把合同里的结算规则写清楚,再按规则做敏感度检查。常见需要确认的规则包括:签约日汇率、付款日汇率、固定汇率,还是双方约定某个中间价。
不是所有外币报价都适合用同一个折算口径比较。遇到下面几种情况,先不要下“哪家更便宜”的结论,因为比较基准已经不一致。
其中最容易让结论失效的反例是:两份外币报价金额接近,但一份约定固定汇率、另一份按付款日汇率结算。如果只看签约日折算价,两者几乎一样;一旦付款周期跨过汇率明显波动,按付款日结算的那份实际支出可能高出不少。这时“金额接近”只是折算时点的巧合,不是成本接近。
如果拿不到完整合同、看不到对方所在国的汇率来源,也不确定未来付款日期,仍然可以做一件最小动作:把每份外币报价转成一张“汇率假设卡”,而不是一个折算数字。卡片上只写四项:原币金额、假设折算汇率及日期、结算汇率规则、付款节点。四项里任何一项缺失,就标注为待确认,不强行补一个数字。
做完这张卡后,下一步动作是向对方确认缺失项,尤其是结算汇率规则。确认结果会直接影响比较方式:如果对方接受固定汇率,折算价和风险价可以合并成一个预算数;如果对方坚持按付款日汇率,就必须保留风险价,并在预算里留出波动空间。这个动作不能推出“哪家报价更低”,只能推出“哪些报价目前不可比”。
出现下面任一变化,之前的比较结论就应作废,而不是在原表上微调:结算币种改变、付款节点改变、汇率规则从固定改为浮动、报价有效期已过。原因是这些变化影响的是折算基准本身,不是某个数字的小数点。
另外,汇率变动带来的支出变化,和开发工作量变化带来的支出变化,要分开记录。把两者混在一个总额里比较,容易把汇率影响误判成报价差异。比较时至少保留两列:按固定口径折算的开发价,以及按结算规则估算的汇率影响。这样即使汇率变动,也能看出哪部分是可比成本,哪部分是待确认风险。
先为每份外币报价补上结算汇率规则和付款节点,再用同一个记录日期重算参考价;如果规则无法统一,就把这些报价放进“不可比”组,单独做风险区间,而不是硬排一个名次。这样处理之后,预算表回答的是“在什么汇率假设下谁更贵”,而不是一个看似精确、实际会随汇率失效的单一数字。