There sure are a lot of responses out there from people who don't have any engineering skills especially on slots. I write slot programming software and I can tell you exactly how it works and there is no secret to it. The machines just have too many blank stops so the casino has the advantage all the time.
Each reel is separate from each other and each reel has its own set of stops. The random numbers are chosen for each reel by the internal programming on the chip in the machine and the spinning reels displays the result of the numbers. Each stop is assigned a number so if the Double Diamond's number on reel 1 is say: 31, Reel 2: 22 and Reel 3: 5 then you would need the computer to pick 31, 22, 5 for the DD's to come up. If it picks 31, 22, 8, then you'll get DD DD blank for example. The cherry symbol is easier to hit because there might be 3 or 4 numbers associated with the cherry and maybe 6 numbers associated with a blank.
If it looks like you're on a winning streak then it is only because you got lucky. There aren't any cycles or whatever. This is only what people look at after people have played the machine. Just pick machines that have very simple payouts and you'll be able to play for a long time with a decent chance at a smaller jackpot. Pick machines with many different combinations and you'll either lose or have a very slim chance at a big payout.