Tides
Shore diving is very much dependant on the tide. Tidal inlets and rivers will flow with the tide, such that a river may even flow upstream for a time when the tide is incoming. Normal river currents are far too strong to swim against, and will simply sweep away a loaded diver. Many inlets have time restrictions for divers, so you will have to take the local laws and the tide tables into account to work out a good dive time.
However, there are two times when the currents drop to near zero. Those are dead high tide, and dead low tide. Of the two, dead high tide is usually better, simply because there is more water, and it is cleaner ocean water rather than silty river water. You will get about a half-hour window on either side of dead high tide during which you can either drift in the weak current or swim against it. After that, you'd better get out.
Tides are fairly irrelevant for boat diving, with a few exceptions: on the shallowest wrecks, high tide will have less surge from the surface waves than any other time. This also applies to beach dives. Also, anywhere near the entrance to New York harbor, the tide may generate a strong long-shore current, washing either into or out of the basin. This encompasses the area from Sandy Hook to Rockaway, sometimes further.