In relation to flight dates, there are two approaches. If you want the lowest generally-available fare, shop more than two weeks before flight date, and further ahead (4 weeks or more) for holidays.
If you want to risk paying a lot, but maybe saving a lot, then wait until the last minute. For example, JetBlue sends out a special deals email once a month, and if the deals are going where you want to go, you can save a lot.
It also helps to avoid the very peak days - for example, if you can take off the Wednesday before Thanksgiving, fly out Tuesday night. And if you can include a Saturday away, you will save some money, as airlines figure weekday travel is likely to be on a corporate account, and charge more.