Fintech概念正受到不少互联网金融公司的热捧,主要是指代那些可用于撕裂传统金融服务方式的高新技术。越来越多的企业开辟了新的部门去研究各种各样能让自己产品增值的科技类产品。 尤其是在很多互联网金融公司,业务分析师BA (Business Analyst) ,又称产品经理受到大家的追捧,虽然身处西二旗等ITer聚集地,但是他们做的工作与金融街上的白领们并无不同,他们是无所不懂的金融达人,顶着各个海外学校金融数学系的Master光环,手持CFA,CPA,FRM,AFP/CFP,CIIA,ACCA等等。 既然是在IT公司做需求分析的工作,除了需要出具需求说明书,然后将需求翻译成程序员能够理解的说明文档,不可避免的也需要做一些测试的工作。现在各种工具琳琅满目,各种智能的自动化测试平台也在全面普及,越来越多的人工工作被取代,于是测试工程师经常会接到任务说:写个工具给BA用,让他们可以参与测试。说起来容易做起来难,对于大部分金融达人来说,代码对于他们无异于普通人看哥德巴赫猜想的手稿,如何让他们能够参与进来,能够更多地参与测试成为了测试工程师更多关注的问题。 第三列是卖出期权:
我们对应在代码里需要读取写入Excel里面的数据,依然使用最熟悉 的xlrd和xlwt包。之所以把路径之类的都参数化,主要是为了生成UI之后,BA使用起来更方便。 # 获取文件 在Java中我们一般会使用BigDecimal来进行金融数据的处理,但是在Python中,虽然也有BigDecimal包,但是处理起来会出现各种各样不明原因的报错,所以我们选择了float类型。 # 打开文件 # 获取sheet内容 # 获取整列的值 # 更改格式 # 创建文件 接下来就是完成BA需求里面逻辑计算,排列组合的部分了,由于需求不同,我就不展示这部分代码了,有个提示在这个地方,如果需要在console里面打印出浮点,请使用如下代码: 这样我们逻辑部分就完成了,下面就要进行UI部分的设计和制作了,由于技 (懒) 术 (惰) 原因,我们还是使用Python来做,一气呵成。 import tkinter.font as tkFont 对于一般的BA的需求来说,一个输入文件,一个输出文件足够了,所以我们也本着极简的原则做一个UI,成品如下,贴入输入文件的路径,点击GO后,会显示输出文件的链接,点击链接可以打开生成的文件:
在Pycharm的Console里,我们可以看到打印出来的结果:
在文件夹里,我们会找到新生成的文件new file.xls:
在这个文件里,有我们需要的所有符合条件和不符合条件的排列组合: