Their price are based on what prices are always based: supply and demand.
A few years ago when there was a natural catastrophe on Thailand or whatever it was the HDD prices jumped due to low supply but high demand. When some new GPU card comes out the prices are steep again because of low supply and high demand.
You can notice the same thing with all others things you buy especially gas/diesel. Their prices vary a lot due to constant wars/peace breaking out/being made on the middle east.
By the same rule when something new comes out the price of the old stuff tends to drop to get rid of stock. Or if you know about a hardware store that's about to close you can usually get good deals. Some companies also lower the prices at the end of the year or before getting new shipments