Honestly, this is probably the biggest single choice in the game. I personally prefer to hit Russia turn 2-3 as Germany. With Japan I like to do either a J1 attack or wait it out until turn three. J2 attack is interesting, but usually reliant on Allied moves (like a juicy target). J4 attack I strongly discourage as US and UK and ANZAC all get their NOs regardless. With Germany, attacking Russia turn one is an option, by you can get diced and you need to be prepared for the resulting war of attrition. Waiting until turn four is strongly discouraged unless you are doing amphibious assault on UK.
Basically, both work: waiting and getting in there fast.
Here are some pros and cons:
The earlier you attack, the more targets you can take out and the sooner you can get your IPCs rolling. But, the sooner you attack, the sooner the Allies can get NOs and start attacking you and helping China. Keep in mind your brothers in Europe. The US will not be able to attack them unless you start something.
The later you attack, the better positioning you can get and the more you can crush China (and possibly Russia). You also get an extra ten IPCs for leaving French Indo-China alone, and the Allies won’t be getting NO bonuses. But you give up the juicy targets of J1, and prolong your ascension to the higher rung of income. You also let UK and ANZAC farm the Dutch East Indies.
For Germany, the longer you wait to attack Russia, the more forces you can assemble and the more you can get other things done like England, Balkans, and Africa. But you lose time and find yourself facing more and more Russian hordes.
Attacking turn one is the riskiest, but you get a golden opportunity to wipe out seven Russian infantry on the border. Attacking turn two or three, you get some momentum into Russia and have enough forces to finish up France and the Royal Navy. Keep in mind that attacking Russia gives them a possible NO for archangel and the ability to expand into Finland and Middle East.
As for Russia, fighting Japan is largely based on Japan for the Mongolian front. If he attacks, you make him get bogged down, and if he leaves too few forces in the North, you take Korea and give Manchuria to your fellow Chinese Communists. I would not suggest retreating every Russia soldier to fight Germany. Even just two is good so you can cap Korea and Manchuria.
However, there is something else Russia can do. Fight Japan via China. Send in mechs, tanks, and planes and help make the Burma Road a stronghold and possibly threaten Japanese factories built on the mainland. Of course, every Russia volunteer in China makes it that much easier for Germany to take Moscow.
In short, situations will present different needs for action, but when to declare war is basically based on you. What can you exploit by waiting or not waiting?
Again, I personally say ideal is
Japan: j1 attack or wait it out until turn 3
Germany: hit Russia turn 2 or 3
Russia: Make Japan fortify northern China, support China through the back when you can, but make sure you are sending adequate supplies to fight Germany.