|
|
51CTO旗下网站
|
|
移动端

2.2.1 函数的使用和定义

《量化交易之路:用Python做股票量化分析》第2章量化语言——Python,第2部分(第2~6章)主要讲解了量化交易需要的基础知识及相关工具,如Python语言、NumPy、pandas、数据可视化及量化数学等知识,适合完全没有任何编程经验的读者从头开始阅读。本节为大家介绍函数的使用和定义。

作者:阿布来源:机械工业出版社|2017-10-19 16:04

2.2  函 数

在所有语言中,函数的作用是相当大的,没有函数的话将不断编写重复的代码,函数是对代码的抽象封装。

2.2.1  函数的使用和定义

1.内置函数

【需求3】从前面组合的字典数据中找到最小的一个收盘价格。

以下代码直接对字典使用min()函数,发现输出结果只是针对字典的keys进行操作,结果只是最小日期,并不是最小的一个收盘价格。

  1. min(stock_dict) 

输出如下:

  1. '20170118' 

要满足需求寻找最小的一个收盘价格,使用以下代码实现。

  1. min(zip(stock_dict.values(), stock_dict.keys())) 

输出如下:

  1. ('26.36', '20170120') 

2.自定义函数

【需求4】计算所有收盘价格中第二大的价格元素。

系统中没有提供直接找到一个序列中第二大值的函数,但是可以自己编写函数完成需求。

  1. def find_second_max(dict_array):  
  2.     # 对传入的dict sorted排序  
  3.     stock_prices_sorted = sorted(  
  4.         zip(dict_array.values(), dict_array.keys()))  
  5.     # 第二大值的函数也就是倒数第二个  
  6.     return stock_prices_sorted[-2] 

使用find_second_max()函数:

  1. # 系统函数callable()验证是否为一个可调用(call)的函数  
  2. if callable(find_second_max):  
  3.     print find_second_max(stock_dict) 

输出如下:

  1. ('32.56', '20170121') 

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

非常网管——网络工程案例

本书面向企业网络应用需求,详细介绍了Windows网络互联解决方案、中小企业共享上网解决方案、基于ISA Server 2006的代理服务器与防火墙解决...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊