All good factors that mentioned. Others include;
- Time of year/season
- Convetions/exhibitions being held in destination
- Carrier wants to build the route - so drops prices
- Carrier wants to stop the route - so raises prices
- Carrier part of a promotion by city/region.country
- Competition with direct/indirect flights
- etc.
Of course, not all of those apply to NYC, which has the other problem of over supply of capacity, which also skews the the pricing.