My Account Log in

1 option

Financial Data Science with Python : An Integrated Approach to Analysis, Modeling, and Machine Learning.

Ebook Central College Complete Available online

View online
Format:
Book
Author/Creator:
Chen, Haojun.
Language:
English
Physical Description:
1 online resource (278 pages)
Edition:
1st ed.
Place of Publication:
New York : Business Expert Press, 2025.
Summary:
In today's finance industry, data-driven decision-making is essential. Financial Data Science with Python: An Integrated Approach to Analysis, Modeling, and Machine Learning bridges the gap between traditional finance and modern data science, offering a comprehensive guide for students, analysts, and professionals. This book equips readers with the tools to analyze complex financial data, build predictive models, and apply machine learning techniques to real-world financial challenges. Beginning with foundational Python concepts, the author covers essential topics like data structures, object-oriented programming, and key libraries such as NumPy and Pandas. The book advances into more complex areas, including financial data processing, time series analysis with ARIMA and GARCH models, and both supervised and unsupervised machine learning methods tailored to finance. Practical techniques like regression, classification, and clustering are explored in a financial context. A key feature is the hands-on approach. Through real-world examples, projects, and exercises, readers will apply Python to tasks like risk assessment, market forecasting, and financial pattern recognition. All code examples are provided in Jupyter Notebooks, enhancing interactivity. Whether you're a student building foundational skills, a financial analyst enhancing technical expertise, or a professional staying competitive in a data-driven industry, this book offers the knowledge and tools to succeed in financial data science.
Contents:
Front cover
Half title
Title
Copyright
Description
Contents
Preface
Key Features of This Book
Guide for Readers
Code Reference
Steps to use the Notebook
Structure of the Book
End-of-Chapter Exercises
CHAPTER 1 Introduction to Python Programming
1.1 Why Python for Finance?
1.1.1 Real-World Applications
1.2 Setting up Your Python Environment
What Does It Mean to "Install Python"?
What Is a Python Version?
Why Focus on Python 3.12?
What to Be Aware of When Using Other Versions
1.2.1 Using Jupyter Notebook as Your Python IDE
Different Types of Cells in Jupyter Notebook
1.3 Basic Syntax and Commands
Python Commands
Conclusion
CHAPTER 2 Python Programming Fundamentals
2.1 Data Types and Variables
2.1.1 Understanding Variables as Pointers in Python
2.1.2 Variable Creation
2.2.1 Numbers, Strings, and Booleans
Numbers
F-Strings: Formatted String Literals
2.2.2 Type Conversion
Dynamically Typed Versus Statically Typed Languages
2.3 Control Structures: Conditionals and Loops
2.3.1 If Statements
2.3.2 For and While Loops
Infinite Loops
2.4 Functions and Modules
2.4.1 Defining and Calling Functions
Default Parameters in a Function
Function Scope
Types of Scope
2.4.2 Importing and Using Modules
Installing New Modules Through Anaconda
Installing New Modules Through pip
Importing and Using Modules in Python
How Python Finds Modules
2.5 Python Exceptions
2.5.1 Exception Handling With try and Except Blocks
Exercises
CHAPTER 3 Data Structures in Python
3.1 Lists
3.1.1 Creating List Objects
3.1.2 Accessing List Elements
3.1.3 Altering List Elements
Adding Elements
Removing Elements
3.2 Tuples
3.2.1 Creating Tuple Objects
Using the Tuple() Constructor.
3.2.2 Accessing Tuple Elements
Indexing and Slicing
3.2.3 Altering Tuple Elements (Concatenation, Exclusion)
Concatenation
Exclusion
Using Tuples for Functions With Multiple Return Values
3.3 Dictionaries
3.3.1 Creating Dictionary Objects
3.3.2 Accessing Dictionary Elements
3.3.3 Altering Dictionary Elements (Modifying, Adding, Removing)
Modifying Elements
3.4 Sets
3.4.1 Creating Set Objects
3.4.2 Accessing Set Elements
3.4.3 Altering Set Elements (Modifying, Adding, Removing)
3.4.4 Set Operations
Union
Difference (- Operator)
Intersection
Symmetric Difference
3.5 Built-in Methods for Iterables
TypeError
CHAPTER 4 Objects and Classes in Python
4.1 Introduction to OOP
4.1.1 The Basic Structure of OOP
Classes and Objects
4.1.2 The Basic Principle of OOP
The Self Parameter
4.2 Class Instances
Public Attributes
Private Attributes
4.3 Class Inheritance
Basic Syntax of Inheritance
Polymorphism in Action
4.4 Examining Built-in Classes
Using Built-in Functions to Examine Classes
4.5 Examining External Classes
Moving Forward
Part 1: Define the Base Class
Part 2: Create a Subclass
Part 3: Test your Code
CHAPTER 5 NumPy for Financial Computation
5.1 Introduction to NumPy
Introduction to Array
Comparing NumPy Arrays With Lists
5.2 Creating and Manipulating Arrays
Creating Arrays
Reshaping Arrays
Accessing Elements and Slicing
5.3 Mathematical Operations With NumPy
5.3.1 Basic Arithmetic Operations
Vectorized Operations
Broadcasting
Aggregation Functions
Example: Calculating Weighted Returns
5.4 Using NumPy for Financial Calculations
5.4.1 Financial Functions in NumPy.
Net Present Value (NPV)
Calculate IRR
Future Value (FV)
Payment (PMT)
CHAPTER 6 Financial Data Processing With Pandas
6.1 Introduction to Pandas
6.2 Introduction to Series
The Roles of Indexes of Pandas Data Object
6.2.1 Creating and Accessing Pandas Series
Specifying the Index and Data Type
6.2.2 Data Type Specification in Pandas
Common Data Types in Pandas
6.2.3 Accessing Series
Using Label/Index
List of Labels
Boolean Array
6.2.4 Reassigning or Adding Entries to a Series
Reassigning Entries
Adding New Entries
6.3 Introduction to DataFrame
DataFrame Structure Diagram
6.3.1 Creating DataFrame
From a Dictionary
Setting Row, Column, and Data Type
Import From a File
6.3.2 Accessing DataFrame
Accessing Columns
Accessing Rows
Accessors With Indexes and Slices
6.3.3 Modifying Series and DataFrame
Changing Index and Column Labels
Changing Data Entries
Removing and Adding Data Entries
Dropping Entries From a DataFrame
Adding Entries to DataFrame
Adding New Rows and Columns With Concat (Pandas.concat)
6.4 Operations With Series and DataFrame
Element-Wise Operations
Aggregation Methods
Element-Wise Operations: 'Apply' and 'Map'
The Update Function
6.5 Data Cleaning and Filtering
Converting Data Using to_numeric Function (Pandas.to_numeric)
Marking Invalid Entries
Dropping NA Entries
Conditional Filtering
CHAPTER 7 Principle of Statistics for Financial Data Science
7.1 Introduction to Financial Statistics
Introduction to Computer Simulation
7.2 Probability Distributions
7.2.1 Review of Common Probability Distribution in Finance
Uniform Distribution
Binomial Distribution
Lognormal Distribution
F Distribution.
7.2.2 Probability Distributions Using Python
7.3 Descriptive Statistics
7.3.1 Review of Common Descriptive Statistics
Sample Mean
Sample Median
Sample Standard Deviation (std)
Sample Skewness
Sample Kurtosis
7.3.2 Calculating Descriptive Statistics
7.4 Statistical Estimators
Randomness
Accuracy (Unbiasness)
Preciseness (Reliability)
Consistency
Selecting Estimators
7.4.1 Evaluating Estimators
7.4.2 Eye-Balling Analysis
7.4.3 Asymptotic Analysis
Complex Estimators
7.5 Hypothesis Testing
Major Steps
Test Statistic
The p-Value
7.5.1 One-Sample and Two-Sample t-Test
Type I and Type II Errors and Power of Hypothesis Testing
7.5.2 Power Analysis
7.5.3 Testing the Relationship
Formulating Hypothesis
Perform Hypothesis Testing
7.5.4 Power Plot
7.6 Nonparametric Statistics
Applications and Benefits
7.6.1 Nonparametric Versions of Analysis
Wilcoxon Signed-Rank Test
Two-Sample Wilcoxon Signed-Rank Test
Spearman Rank-Order Test
Further Exploration
Exercise
CHAPTER 8 Financial Time Series Analysis
8.1 Financial Time Series Data
8.2 Manipulating Time Serie Data With Pandas
pd.DatetimeIndex
Time Series DataFrame
8.3 Handling and Manipulating Time Series Data
Resampling and Frequency Conversion
Time Series Indexing and Slicing
Reindexing Time Series Data
Time-Shifting in Time Series Data
Time-Rolling and Expanding in Time Series Data
Time-Expanding (Expanding Window Statistics)
Managing Missing Values in Time Series Data
Filling the NA Values
8.4 Time Series Analysis
8.4.1 Components of Time Series Data
How These Components Aid Financial Decision Making
8.4.2 Stationarity Analysis
Mathematical Definition of Stationarity
Test for Stationarity
Converting Nonstationary Series.
8.4.3 Seasonal Decomposition
8.4.4 Autoregressive Analysis
ACF Versus PACF
Identifying Significant Lags
ACF/PACF Plot
8.4.5 ARIMA Model
Prediction With ARIMA
8.4.6 GRACH Model
Implementation of GARCH Model
Predicting Variance With GARCH
8.4.7 Cointegration Model for Lead-lag Relationship
Steps to Perform Cointegration Analysis
CHAPTER 9 Data Visualization
9.1 Plotting With Matplotlib
9.1.1 Basic Plotting
9.1.2 Building Subplot
9.1.3 Customizing Plots
9.1.4 Other Commonly Used Plots
Histogram
Scatter Plot
Box Plot
9.2 Advanced Visualization With Seaborn
Distribution Plot
Kernel Density Estimate
Pair Plot
Heatmap
9.3 Interactive Visualizations
9.3.1 Building Interactable Plots With plotly
Basic Line Plot With plotly
9.3.2 Animated Plot
CHAPTER 10 Financial Modeling With OOP
Introduction
10.1 Object-Oriented Modeling for Fixed-Income Securities
10.1.1 Introduction to Fixed-Income Securities
Interest Rate, Yield Rate and Discount Rate
Yield Curve
10.1.2 Model Construction Under OOP Framework
Step 1: Creating the Parent Class
Basic Attributes
Methods
Step 2: Creating the Bond Subclass
Fixed-Rate Bond
Year Conventions in Finance
Accrued Interest Calculation
Clean and Dirty Prices
Net Present Value
Duration
10.2 Model Testing and Analysis
Testing Zero-Bond Model
Testing Fixed-Rate Bond Model I: Constant Yield
Testing Fixed-Rate Bond Model II: Nonconstant Yield
Testing Float-Rate Bond Model
CHAPTER 11 Introduction to Machine Learning
What Is Machine Learning?
11.1 Comparing Machine Learning With Traditional Quantitative Methods
11.2 Overview of Model Training
Loss Function
11.3 Data Preparation.
Training, Validation, and Test Sets.
Notes:
Description based on publisher supplied metadata and other sources.
ISBN:
1-63742-826-X
OCLC:
1518284443

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account