Answer:
with rollingtotals as
(select customerid,
orderid,
orderdate,
totalamount,
sum(totalamount) over (partition by customerid
order by orderdate rows between 4 preceding and current row) as rollingtotal
from orders)
select customerid,
orderid,
orderdate,
totalamount,
rollingtotal,
rank() over (partition by customerid
order by rollingtotal desc) as rank
from rollingtotals;