龙听期货论坛's Archiver

龙听 发表于 2024-11-7 11:50

成为Quant 的 C++经典著作

成为Quant 的 C++经典著作

原创 MichaelNotes 量化金融初学者 2020-09-19 17:54

Coding Skills是Quant/Quantative Developer完成日常工作重要能力之一;C++是算法交易、高频交易中常用的编程语言;因为,C++ 在各个领域的运用,市面上能买到的有关C++编程语言书籍非常多,本文分享几本专门为量化金融领域设计的5本C++书籍供大家参考。

Sams Teach Yourself C++ in One Hour a Day
Author:Siddhartha Rao

这本书专门为初学者编写,目前现在已是第8版,涵盖了C++的基础语法:变量、表达式、函数、控制流,数组和字符串等,后半部分讨论了面向对象的编程;对于具备其他编程语言的金融从业人员来说,大大降低的上手的难度。

推荐阅读对象:成为C++ 入门的程序员必备,量化研究值得拥有,量化开发所需知识最低限度。

C++: A Beginner's Guide, Second Edition
Author:Herbert Schildt

这本书涵盖的基础内容与Siddhartha的类似。但是在特定部分有更多细节,因此,可以作第一本的补充读物。此书的附录中包含了在初学者书籍中很少提及的预处理器的内容;现实工作中的开发环境往往并非按最新软件进行配置,quant编译程序时也许会因为编译器版本出现问题,本书还包含这部分问题的处理。

推荐阅读对象:C++入门程序员可以通过此书给自己加个BUFF

Accelerated C++: Practical Programming by Example
Author: Andrew Koenig, Barbara E. Moo

上面两本书C++基础内容,而这本书是以实际例子出发,假定读者已经熟悉了C++的基础语法,讲述面向对象的内容:内存管理、继承、多态等等,非常值得一提的是,此书讨论了智能指针,在现实的量化算法交易开发过程中,智能指针使用的非常多。

推荐阅读对象:C++入门程序员到C++面向对象程序员的晋级宝典

An Object-Oriented Approach (The Wiley Finance Series)
Author: Daniel J. Duffy

Daniel Duffy的这本书我现在正在读。十分全面,对于面向对象编程的语法结构只是简述了,更多的是结合金融理论、数值理论进行编程了,包含常见的BS模型、数值分析、金融数据结构、蒙特卡洛模拟等。

推荐阅读对象:晋级金融量化大师级程序员必经之路。

Effective C++: 55 Specific Ways to Improve Your Programs and Designs
Author: Scott Meyers

如果说John Hull的《Futures Options And Other Derivatives》是金融工程的圣经,那么这本书就是量化开发的圣经,Scott在本书中提供了C++的55个“技巧”,包括构造函数、析构函数、内存管理、继承、多态性,模板类等等。每个“技巧”都讨论的非常细致,这些内容经常在Quant和Quant Developer工作和面试中出现。

推荐阅读对象:所有人。量化开发圣经,不仅可以多次阅读,在调试过程中经常翻阅。

一点点体会

C++虽然难学,但是值得花时间和精力去学习;C++面向对象的编程设计涵盖:指针、引用、继承、多态和重载等内容,语法和代码学起来可能困难一点,但是在学习过程中,会慢慢的体会到程序语言设计者的思维逻辑,而这一点比简单了解编程语言的语法,更加能提升自我内核竞争力。

尝试学习多语言,开拓思路;编程语言没有优劣之分,只有适合自己工作、学习的才是最好的,目前本人也在1V1辅导学员学习Python编程,Python同样也有面向对象编程,也能实现多态和继承;学好一门语言以后,再去写其他语言的代码并不复杂,毕竟很多的逻辑思路是一样的,只是语法上可能有些差异;而多接触一门语言却能更好开拓思路,了解不同语言的实现功能的逻辑。

页: [1]