Moving Average using Pandas

import numpy as np import pandas as pd def moving_average(df, column, size, name): df[name] = df[column].rolling(window=size).mean() pass def moving_averages(df, tickers, sizes): for ticker in tickers: for mav in sizes: moving_average(df, ticker+':Close',mav, ticker+':MA'+str(mav)) pass pass for mav in sizes: filtered = filter(lambda x:x>mav, sizes) for top in filtered: for ticker in tickers: df[ticker+':MA'+str(mav)+'-MA'+str(top)] = df[ticker+':MA'+str(mav)] - df[ticker+':MA'+str(top)] pass pass pass pass