وبلاگ بلیان

Slave Labor: A Submissive Male Must Earn His Keep

جلد کتاب Slave Labor: A Submissive Male Must Earn His Keep

معرفی کتاب «Slave Labor: A Submissive Male Must Earn His Keep» نوشتهٔ Daniel Hanson و Bruce Cambell، منتشرشده توسط نشر 2016 در سال 2016. این کتاب در فرمت azw3، زبان انگلیسی ارائه شده است.

This practical book demonstrates why C++ is still one of the dominant production-quality languages for financial applications and systems. Many programmers believe that C++ is too difficult to learn. Author Daniel Hanson demonstrates that this is no longer the case, thanks to modern features added to the C++ Standard beginning in 2011. Financial programmers will discover how to leverage C++ abstractions that enable safe implementation of financial models. You’ll also explore how popular open source libraries provide additional weapons for attacking mathematical problems. C++ programmers unfamiliar with financial applications also benefit from this handy guide. Learn C++ basics from a modern perspective: syntax, inheritance, polymorphism, composition, STL containers, and algorithms Dive into newer features and abstractions including functional programming using lambdas, task-based concurrency, and smart pointers Implement basic numerical routines in modern C++ Understand best practices for writing clean and efficient code Copyright Table of Contents Preface Navigating This Book Conventions Used in This Book Using Code Examples O’Reilly Online Learning How to Contact Us Acknowledgments Chapter 1. An Overview of C++ C++ and Quantitative Finance C++11: The Modern Era Is Born Open Source Mathematical Libraries Some Myths about C++ Compiled Versus Interpreted Code The Components of C++ C++ Language Features The C++ Standard Library Some New Language Features Since C++11 The auto Keyword Range-Based for Loops The using Keyword Uniform Initialization Formatting Output Class Template Argument Deduction Enumerated Constants and Scoped Enumerations Lambda Expressions Mathematical Operators, Functions, and Constants in C++ Standard Arithmetic Operators Mathematical Functions in the Standard Library Mathematical Special Functions Standard Library Mathematical Constants Naming Conventions Summary Further Resources Chapter 2. Writing User-Defined Classes with Modern C++ Features A Black-Scholes Class Representing the Payoff Writing the Class Declaration Writing the Class Implementation Using a Functor for Root Finding: Implied Volatility Move Semantics and Special Member Functions Data Members and Performance Considerations An Introduction to Move Semantics Initialization of Constructor Arguments with std::move(.) Anonymous Temporary Objects and Move Semantics Return Value Optimization Default Constructor Three-Way Comparison Operator (Spaceship Operator) Lambda Expressions and User-Defined Class Members Summary Additional References Chapter 3. Inheritance, Polymorphism, and Smart Pointers Polymorphism Resource Ownership with Raw Pointers Using Clone Methods Creating an Instance of OptionInfo Preventing Shallow Copy Implementing the OptionInfo Destructor Pricing an Option Implementing Copy Operations The (Old) Rule of Three Introducing Smart Pointers Unique Pointers Shared Pointers Managing Resources with Unique Pointers Just Move It Using the Result in a Pricing Model If Copy Operations Are Required Summary Further Resources Chapter 4. The Standard Template Library Part I: Containers and Iterators Templates Using Function Templates Using Class Templates Compiling Template Code STL Containers Sequential Containers Associative Containers STL Iterators Using auto to Reduce Verbosity Using Constant Iterators Iterators or Indices? Iterators on Associative Containers Summary Further Resources Chapter 5. The Standard Template Library Part II: Algorithms and Ranges STL Algorithms A First STL Algorithm Example A First Example with Ranges Some Commonly Used Algorithms Function Objects as Auxiliary Functions Class Member Functions as Auxiliary Functions Locating, Sorting, Searching, Copying, and Moving Elements Numeric Algorithms Range Views, Range Adaptors, and Functional Programming Range Views Chaining for Functional Composition Views, Containers, and Range-Based for Loops Summary Additional References Chapter 6. Random Number Generation and Concurrency Distributional Random Number Generation Introducing Engines and Distributions Generating Random Normal Draws Using Other Distributions Shuffling Monte Carlo Option Pricing A Review of Monte Carlo Option Pricing Generating Random Equity Price Scenarios Calculating the Option Price Pricing Path-Dependent Options Concurrency and Parallelism Parallel Algorithms from the Standard Library Task-Based Concurrency Concluding Remarks on async and future Summary Further Resources Chapter 7. Dates and Fixed Income Securities Representation of a Date Serial Representation Accessor Functions for Year, Month, and Day Checking the Validity of a Date Checking Leap Years and Last Day of the Month Identifying Weekdays and Weekends Adding Years, Months, and Days A Date Class Wrapper Class Declaration Class Implementation Day Count Basis Yield Curves Deriving a Yield Curve from Market Data Discount Factors Calculating Forward Discount Factors Implementing a Yield-Curve Class Implementing a Linearly Interpolated Yield Curve Class A Bond Class Bond Payments and Valuation Designing a Bond Class Implementing the Bond Class A Bond Valuation Example Summary Additional Reference Chapter 8. Linear Algebra Lazy Evaluation and Expression Templates Lazy Evaluation Expression Templates The Eigen Linear Algebra Library Eigen Matrices and Vectors Matrix and Vector Math Operations STL Compatibility Matrix Decompositions and Applications Fund Tracking with Multiple Regression Correlated Random Equity Paths and the Cholesky Decomposition Yield-Curve Dynamics and Principal Component Analysis Future Directions: Linear Algebra in the Standard Library mdspan BLAS Interface Summary Further Resources Chapter 9. The Boost Libraries Mathematical Constants Statistical Distributions Probability Functions Drawdown Example, Revisited Random Number Generation with Boost Distributions MultiArray A Simple Two-Dimensional MultiArray Binomial Lattice Option Pricing Accumulators Max and Min Example Mean and Variance Rolling Mean and Variance Trading Indicator Examples Summary Further Reading Chapter 10. Modules and Concepts Modules Standard Library Header Units Templates in Modules import Versus #include Declarations in Module Interfaces Separating Declarations from Implementation Namespaces Partitions Concepts Defining Concepts Defining Concepts with Multiple Conditions Standard Library Concepts Summary Appendix A. Virtual Default Destructor Appendix B. Object Slicing Appendix C. Implementation of Move Special Member Functions Appendix D. Resolving Conflicts in the Initialization of a vector Appendix E. valarray and Matrix Operations Arithmetic Operators and Math Functions valarray as a Matrix Proxy Index About the Author Colophon A Lot Of Financial Modeling Has Gravitated Toward Python, R, And Vba, But Many Developers Hit A Wall With These Languages When It Comes To Performance. This Practical Book Demonstrates Why C++ Is Still One Of The Dominant Production-quality Languages For Financial Applications And Systems. Many Programmers Believe That C++ Is Too Difficult To Learn. Author Daniel Hanson Demonstrates That This Is No Longer The Case. Financial Programmers Coming From Python Or Another Interpreted Language Will Discover How To Leverage C++ Abstractions That Enable Safer And Quicker Implementation Of Financial Models. You'll Also Explore How Popular Open Source Libraries Provide Additional Weapons For Attacking Mathematical Problems. C++ Programmers Unfamiliar With Financial Applications Will Also Benefit From This Handy Guide. Learn C++ Basics: Syntax, Inheritance, Polymorphism, Composition, Stl Containers, And Algorithms Dive Into Newer Features And Abstractions Including Functional Programming Using Lambdas, Task-based Concurrency, And Smart Pointers Employ Common But Nontrivial Financial Models In Modern C++ Explore External Open Source Math Libraries, Particularly Eigen And Boost Implement Basic Numerical Routines In Modern C++ Understand Best Practices For Writing Clean And Efficient Code
دانلود کتاب Slave Labor: A Submissive Male Must Earn His Keep