1.
Python & Technical Questions
👉
Q1. What are Python’s key features that make it suitable for finance applications?
Python is open-source, has strong data analysis libraries (NumPy, Pandas, SciPy), easy
syntax, strong community, supports API integration, and is fast for prototyping financial
models.
Q2. Explain the difference between lists, tuples, sets, and dictionaries. Which would you use
👉
for large financial datasets?
List: Ordered, mutable. Good for small collections.
Tuple: Ordered, immutable. Faster & memory efficient.
Set: Unordered, unique values only. Good for removing duplicates.
Dictionary: Key-value pairs. Best for storing structured data.
➡ For large financial datasets: Pandas DataFrame (built on NumPy arrays) is preferred, not
raw lists.
👉
Q3. How do you handle large datasets in Python efficiently?
Use Pandas with chunksize, NumPy vectorization, Dask for parallel processing, or
databases like PostgreSQL.
👉
Q4. Difference between NumPy arrays and Pandas DataFrames?
NumPy = numeric arrays, fast for math operations. Pandas = tabular data with labels
(rows & columns). Pandas is better for financial data.
👉
Q5. How would you deal with missing financial data in Pandas?
Use .dropna(), .fillna(method="ffill" or "bfill"), or replace with statistical values (mean,
median).
Q6. Write a Python function to calculate moving average of stock prices.
import pandas as pd
def moving_average(prices, window=5):
return [Link](window=window).mean()
👉
Q7. What is vectorization in NumPy and why is it faster than loops?
Vectorization means applying operations to whole arrays instead of looping. It’s faster
because NumPy uses C under the hood.
👉
Q8. How would you fetch financial data from an API (e.g., Yahoo Finance)?
Using yfinance library:
import yfinance as yf
data = [Link]("AAPL", start="2020-01-01", end="2021-01-01")
👉
Q9. What are generators in Python, and why useful in financial data processing?
Generators yield values one at a time using yield. Useful for streaming large datasets
(don’t load all stock data in memory).
👉
Q10. How would you optimize slow Python code in a trading system?
Use vectorization, caching results, multiprocessing, Cython/Numba, or moving heavy
calculations to databases.
---
🔹 2. Finance / Domain-Specific Questions
👉
Q1. Explain the difference between stocks, bonds, derivatives, and ETFs.
Stocks: Ownership in a company.
Bonds: Debt instruments, fixed income.
Derivatives: Contracts based on underlying assets (options, futures).
ETFs: Basket of assets traded like a stock.
👉
Q2. What is market volatility?
Volatility = measure of how much prices fluctuate. Higher volatility = higher risk.
👉
Q3. What is a candlestick chart?
A chart showing open, high, low, and close prices in one candle. Traders use patterns to
predict trends.
👉
Q4. How do you calculate returns and risk for a stock portfolio?
Return = (Current Price - Initial Price) / Initial Price.
Risk = Standard deviation of returns.
👉
Q5. Difference between fundamental analysis and technical analysis?
Fundamental = studying company financials, revenue, P/E ratio.
Technical = studying price charts, patterns, indicators.
👉
Q6. Explain SMA & EMA.
SMA = simple average of prices. EMA = weighted average, gives more importance to
recent prices. EMA reacts faster.
👉
Q7. Limit order vs. Market order?
Market order = execute immediately at best price.
Limit order = execute only at specified price or better.
👉
Q8. Build a simple trading signal strategy.
Example: Buy when 10-day EMA > 50-day EMA, Sell when 10-day EMA < 50-day EMA.
👉
Q9. Key risk management techniques?
Diversification, stop-loss, position sizing, hedging.
👉
Q10. How do you analyze market trends using Python?
Use moving averages, RSI, Bollinger Bands, or linear regression on price data with
Pandas/NumPy.
---
🔹 3. Problem-Solving & Practical Scenarios
Q1. Given a CSV file with daily stock prices:
Clean = use dropna() for missing values.
Daily returns = (df['Close'] / df['Close'].shift(1)) - 1.
Most volatile = df['returns'].std().
👉
Q2. API returns incomplete data. How handle it?
Retry request, use caching, fill missing values with interpolation.
👉
Q3. Storing/querying large financial datasets?
👉
For small-medium: Pandas + HDF5/Parquet.
For very large: SQL (PostgreSQL) or NoSQL (MongoDB).
Q4. Simple moving average crossover strategy:
df['SMA10'] = df['Close'].rolling(10).mean()
df['SMA50'] = df['Close'].rolling(50).mean()
df['Signal'] = df['SMA10'] > df['SMA50']
👉
Q5. How to test performance of a trading strategy?
Backtesting with historical data, measure Sharpe Ratio, Drawdown, Win/Loss ratio.
---
🔹 4. HR & Role-Specific Questions
👉
Q1. Why Finance + Python?
I enjoy problem-solving with Python and I’m interested in financial markets. Combining
both lets me build data-driven solutions for trading and investments.
👉
Q2. How do you stay updated with financial trends?
I follow NSE/BSE news, Bloomberg, Moneycontrol, TradingView, and use APIs to
analyze market data.
👉
Q3. Any finance-related projects?
Example: Built a stock price analysis tool with Pandas, implemented a moving average
crossover strategy, and backtested it on NIFTY50 data.
👉
Q4. Comfortable working full-time on-site in Surat?
Yes, I am a local candidate and I am comfortable working on-site.