银行核心系统之外汇买卖

青海

小胖换到新核心项目组后,开始学习java编程语言,之前只是在大学课程里学过一些基本语法,毕业后一直做主机开发,都基本忘光了。看了几天代码和功能书后,感觉手痒的很,下班后依然在坐在座位上发呆,心里在琢磨着得写一套维护交易玩一玩。

负债组外汇买卖的石大哥下班后又回到了办公室,看到小胖还没走,关切地说:“小胖,还在加班呢,在忙啥呢?”

小胖转过头说:“是啊,石大哥,没啥事,看看代码学习一下。来帮忙看下,这行代码是什么鬼,啥意思啊?”

石大哥喝了口水,笑了笑说道:“是啥不重要,看代码没用,要实践啊兄dei~”

小胖乐呵呵地点了点头。

“现在,我这里有个很好的学习机会,你要不要试试?其实就是一个联机交易。”石大哥继续说。

“外汇买卖的交易吗哥?这块我没有接触过啊,这交易干嘛的?”小胖瞪大眼睛看着石大哥,期待他继续讲下去。

石大哥看到小胖对这个话题很感兴趣,笑着说:“没事,很简单,就是一个外汇买卖试算交易,类似于一个小计算器,取几个值做个运算就完了。嗯?要不要试一下?我协助你完成,怎么样?”

小胖对石大哥说的这个任务很兴奋,跃跃欲试。

这时,小胖的组长杜老大刚开完会,大步流星地走了过来,看他们俩很高兴,问原因。

石大哥忙笑着说:“我叫小胖写个外汇试算的交易,他就高兴成这样了。”

“哦,好啊!”杜老大也希望小胖能尽快上手,说道:“只有亲自写代码后,才能发现学习过程中更多的问题,熟能生巧,代码敲多了就知道编程的套路,套路熟了就不容易翻车了。当然,在编程之前,重要的是清楚交易的目的和需求,有什么业务场景会使用?主要用来做什么?用什么算法来实现?”

“哦,我明白了,意思是编码必须理清楚需求、做好详细设计之下进行。”小胖说。

杜老大说:“嗯,是这样的,不然你代码敲不下去呀,所以需求分析和详细设计要先于编码。外汇买卖业务主要包括结汇、售汇、套汇,计算外汇的挂牌汇价又分为买入价、卖出价、中间价,以及现钞买入价、现钞卖出价等等。这些都是外汇试算交易的重要组成部分。”

小胖听的一脸懵圈,说:“这么多内容啊,对我来说,感觉压力好大呀。”

“压力大就对了,”石大哥笑嘻嘻的说道,“有压力才有动力嘛,成长才会更快。”

杜老大鼓励道:“了解清楚一些名词和用途后,做起来还是比较容易的。只不过要对各方面的知识了解都比较透彻的话,还需要长期积累,大家都是从第一步开始的,这两天就跟石大哥好好学下。”

小胖嘿嘿一笑,充满自信的大声说:“好,我试一试。”

态度决定一切

小胖非常清楚,要做一个合格的银行核心程序员不容易,不仅要具备与电脑打交道的能力,而且还要有扎实的银行业务知识功底。要向经理、组长、同事多多学习,当然,能向这位具有丰富外汇经验的石大哥请教,也是难得的机会,所以他不断的提醒自己:态度决定一切!

外汇买卖基本概念

小胖第二天上班后,找到石大哥,希望石大哥在外汇买卖业务上给自己指点迷津。

石头哥拿起笔,打开笔记本,先给小胖讲了外汇买卖业务的基本概念。

银行的外汇业务根据资金性质可以分为自营外汇业务和代客外汇业务;根据牌价取值和买卖货币的不同,可分为结售汇、外汇买卖;根据交割期限的不同(即期限种类),又可以分为即期外汇业务、远期外汇业务、掉期外汇业务。

结汇是指境内企事业单位、机关和社会团体按国家外汇政策规定,将各类外汇收入按银行挂牌汇率结售给商业银行。商业银行购入外汇,付给相应的人民币,外币利息找零按牌价以人民币折付。

售汇是指境内企事业单位、机关和社会团体的经常项目下的正常对外支付会,持有关有效凭证,用人民币到商业银行办理兑换,商业银行收进人民币,支付等值外汇。

注:为了对银行的结售汇交易进行监控,我国外管局规定,外汇指定银行要定期向外管局报送结售汇报表。

套汇是指商业银行将外币在现钞和现汇间互换或两种不同币种现汇间的互换。前者指商业银行从客户手中买入外币现钞,卖给客户外币现汇;或买入外币现汇,卖给客户外币现钞。后者是一种外币兑换为另一种外币,必须将买入币种按买入价折成人民币数额,再卖出另一种外币,把人民币数额按卖折算为另一种外币。

即期外汇买卖是指外汇买卖达成交易成交后的第二个营业日之内(可能遇假期顺延)办理资金交割的外汇结售汇业务和外汇买卖业务,可以满足客户临时性的支付需要。

远期外汇买卖是指交易双方在达成交易后不立即交割,而是事先约定日期、币种、汇率、金额等条件,到期后进行交割的外汇买卖交易。最长可达一年以上,属于金融衍生品业务。

交割是指在起息日进行外汇资金清算的过程。

多头是指买入待平盘的数量大于卖出待平盘的数量。

空头是指卖出待平盘的数量大于买入待平盘的数量。

平盘是指银行在办理代客结售汇业务或自身结售汇业务后,通过外汇交易市场将外汇结汇头寸卖出或买入外汇头寸,用于补充售汇头寸的交易。

买入价是指外汇业务指定银行从客户手中买入外币,卖给客户人民币时候用到的牌价。即:客户拿外币到银行换成人民币,是结汇时的参考牌价。

卖出价是指外汇指定银行从客户手中买入人民币,卖给客户外币时候用到的牌价。即:客户拿人民币换外币,是售汇业务的参考牌价。

注:买入价、卖出价,都是站在银行的角度,是指银行买入和卖出,不是指客户。

中间价是指买入价与卖出价的平均价,不对个人,指银行通过外管局的基准价制订本行牌价的标准。常见于报刊杂志或经济分析之中。

注:银行柜台提供服务分别标为买入价和卖出价,和外汇牌价按照中间价换算上存在着一定的差额,它等同于银行换汇的手续费。

听了这么多专业术语,小胖嘴巴一歪,沮丧地插话道:“哥,这有点复杂啊,我越听越糊涂了。”

“慢慢来嘛,先了解下基本名词和外汇买卖的业务,对你接下来的工作有帮助。不懂的哥再一步一步教你,行不?”石大哥看向小胖,小胖立马点头。

外汇买卖算法及核算

石大哥打开了中国银行官网,进入了外汇牌价页面,指着图笑着说:“你看,这是中国银行的外汇牌价。”

小胖一看,图片格式规范,各币种的买入和卖出价不一样,似乎看出了些什么。

“石大哥,汇率每家行都不一样吧...”小胖一边说一边画了起来。

石大哥点点头说:“汇率算是一个单独的模块,包括核心系统获取汇率、发布汇率、输出查询、设置优惠、其他交易渠道和系统获取最新时点或历史的汇率及优惠信息、系统异常无法提供汇率等各个功能点。这块属于公共模块,我们可以先不理,有机会再聊。”

“嗯,行,没问题。”小胖说。

“那好,我给你讲讲外汇试算的功能,举两个例子先。”石大哥说道

结汇

“①.客户A近期收到在国外打工的亲人的工资2000美元,到银行做结汇业务。即客户卖出美元,银行买进美元。应该采用买入价。某银行12月10日的美元现汇买入价为6.61,则客户能够得到的人民币=2000美元*6.61=13220元。”

石大哥说完,歪着脑袋看着小胖。

小胖马上说:“明白了,本币金额 = 外汇金额 * 银行买入汇率。”

“正确,联机交易中结汇的逻辑,按这公式套就可以了。”

石大哥停顿了一下,他知道小胖此时一定想了解对应的科目是什么意思,有必要再简单讲讲。

石大哥说:“外汇银行办理各项外汇业务时,账务和处理都是以原币作为记账单位,便于反应本、外币业务和交易的实际情况,为了按记账货币编制会计报表,为了使各货币分账核算、账务互不混淆,所以采用原币记账法,并且还会设置外汇买卖专业科目。”

当买入外汇(结汇及外币兑本币业务)时,外币“外汇买卖”金额,记入科目的贷方;相应的人民币“外汇买卖”金额,记入科目的借方。上面例子的会计分录如下:

借:库存现金                     USD2 000.00

贷:外汇买卖--汇买价 661.00%  USD2 000.00

借:外汇买卖                      ¥13 220.00

贷:现金                                       ¥13 220.00

石大哥把买入外汇科目的运用介绍完后,问小胖:“买入外汇的基本会计分录就是这样的,现在还有没有问题?”

借:XX科目                       (外汇)

贷:外汇买卖--汇买价       (外汇)

借:外汇买卖                      (本币)

贷:XX科目                        (本币)

小胖回答道:“嗯,没问题,明白了。”

售汇

石大哥看小胖明白了,就开始讲卖出外汇的算法和会计分录。“②.客户B想要为假期出国旅游准备2000美元,到银行购汇汇出(售汇)。即银行卖出美元,客户买进美元,应该采用卖出价。某银行12月10日的美元现汇卖出价为6.82,则客户需要付出的人民币=2000美元*6.82=13640元。”

小胖听完石大哥举的例子后,说道:“这不就反过来了嘛,本币金额 = 外汇金额 * 银行卖出汇率。”

石大哥点了点头,对小胖说:“算法对的,那卖出外汇(包括售汇及本币兑外币业务)的会计分录是什么样的呢?”

小胖想了想,答到:“当卖出外汇时。外币外汇买卖金额,记入科目的借方;相应的人民币“外汇买卖”金额,记入科目的贷方。”

石大哥笑道:“哈哈,可以可以,看来我的讲解能力还不错嘛。”

小胖接着写下了例子2的会计分录。

借:库存现金                        ¥13 640.00

贷:外汇买卖--汇卖价682.00% ¥13 640.00

借:外汇买卖                          USD2 000.00

贷:现金                                      USD2 000.00

又接着写下了卖出外汇的基本会计分录。

借:XX科目                           (本币)

贷:外汇买卖--汇卖价            (本币)

借:外汇买卖                          (外汇)

贷:XX科目                            (外汇)

套汇

“套汇是其中最复杂的一个,当然也是必须要掌握的基本知识。”石大哥抿了一口茶,接着说道。

小胖摸了下脑袋,然后安静了下来,认真的听着。

石大哥又拿起笔在笔记本上边写边画到,说:“套汇业务的基本会计分录是这样的,分为3步。”

1.买进A种货币:

借:XX科目                       (A种货币)

贷:外汇买卖--汇买价        (A种货币)

2.通过人民币套算:

借:外汇买卖                     (本币)

贷:外汇买卖--汇卖价         (本币)

3.卖出B种货币:

借:外汇买卖                      (B种货币)

贷:XX科目                         (B种货币)

“哦,这样啊。快给我再讲讲吧石大哥。”小胖一听原来如此。

“你先想想看。另外,我们做出来的外汇试算交易,结汇、售汇、套汇,不仅要支持通过买入金额计算卖出金额,也要支持通过卖出金额计算买入金额哦。写代码时也留意下四舍五入的问题之类的。”

小胖连着点头,表示同意石大哥的说法。

石大哥笑呵呵地说:“不错,今天就先到这里,先回去梳理一下。慢慢来,后面抽空我们在聊聊外汇买卖凭证、外汇存贷款业务核算、外汇买卖的功能框架、以及与核心其他模块的关系、与外围系统的关系、外汇宝、外币零钱包......”

“嗯行,我先回去看看。”小胖看了看手机,已经十点了,赶紧回到座位记下重点,收获不少新的知识,联机交易功能的开发也有了思路。

精彩回顾

1.    银行核心系统之自贸区

2.    银行核心系统之产品工厂

3.    银行核心系统之互联网开放平台

4.    银行核心系统之学习思路

5.    银行核心系统之账户体系

6.    银行核心系统架构之利率市场化

谢谢您的阅读!

如果你喜欢我的文章

(0)

相关推荐