I don't understand what is going on.
Let me try my best to explain.
An immediate answer is that function np.average raises TypeError: unsupported operand type(s) for /: 'BoundColumn' and 'int'.
inputs = [USEquityPricing.close]
window_length = 60
Why? Roughly speaking because it expects an array of numbers to take an average of, but you are giving it an array of objects of type BoundColumn.
A more general answer is that once you manage to fix that bug (probably by taking a closer look at built-in factors DailyReturns and SimpleMovingAverage), you will encounter a set of the other ones. There is a tab "Build Errors" in the Quantopian IDE, I suggest that you start there.
You did not ask for advice, but here it is: do not rush to build an algorithm. Take your time to understand it's building blocks, and only then assemble them all together. After you've researched your idea and concluded that it is worth doing at all.
Hope it helps :)