Professional Documents
Culture Documents
FRA Cheat Sheet Week2
FRA Cheat Sheet Week2
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
def calculate_simple_returns(prices):
return (prices / prices.shift(1)) - 1
returns = calculate_simple_returns(prices)
def calculate_log_returns(prices):
return np.log(prices / prices.shift(1))
log_returns = calculate_log_returns(prices)
import pandas as pd
import numpy as np
import scipy.optimize as sco
data = pd.read_csv('stock_prices.csv')
returns = data.pct_change()
mean_returns = returns.mean()
cov_matrix = returns.cov()
num_assets = len(data.columns)
initial_weights = np.array([1/num_assets] * num_assets) # Example initial weights
constraints = [{'type': 'eq', 'fun': lambda x: np.sum(x) - 1}] # Constraint: weights sum
to 1
bounds = tuple((0, 1) for _ in range(num_assets)) # Bounds: weights between 0 and 1
import pandas as pd
import numpy as np
import cvxpy as cp