The highest piston speed is never at mid-stroke, it's where the rod beam is at 90° to the crankpin, at roughly 70-80° B/ATDC depending on the rod ratio (unless the ratio is infinite).
The exact point is easy to calculate using
sine of rod thrust angle = .5 ÷ R/S ratio (1.8, etc.)
1 Double-click your “Calculator” icon to open it
2 Click “View”, then “Scientific”
3 Input the result from the formula above
4 In the left margin of Calculator, look for the check-box that says “Inv” - check it
5 Make sure the box marked “Degrees” (not Radians) is checked
6 Click on “sin”
7 The rod thrust angle in degrees will show in the window
8 subtract 90 (you'll get a negative number, ignore it)
9 The result is the crank position for maximum piston speed
Example: 1.8:1 rod ratio
.5 ÷ 1.8 = .27778
arcsin .27778 = 16.13°
90 - 16.13 = 73.87° ATDC

Piston speeds around TDC and BDC are always different, except for exactly TDC & BDC, when they're stopped (assuming centered piston pin, and nothing else odd).
90° crank rotation has already done more than 50% of the stroke in all engines (57% in a 1.8:1 rod motor), so the motion around TDC is faster.