Use HAProxy as a Forward Proxy for PowerMTA
If you would like to use HAProxy as a "forward proxy" as you call it, you would basically flip the sides and end up with a reverse proxy for reverse proxying towards your own mail relays:
frontend ft_smtp
bind 12.34.56.78:2525
mode tcp
timeout client 1m
log global
option tcplog
default_backend bk_smtp
backend bk_smtp
mode tcp
log global
option tcplog
timeout server 1m
timeout connect 7s
server postfix 10.10.10.101:25 send-proxy
This means you can connect to HAProxy on 2525/tcp and will be forwarded to one of the servers added in the backend "bk_smtp" on the port specified. Using the "send-proxy" setting, you enable proxy protocol v1, which will transmit the original client's IP at the beginning of the session. Note that the application on 10.10.10.101:25 will have to support proxy protocol v1 in this case.
Remove the "send-proxy" to disable proxy protocol if the upstream (read "server") does not support this OR if you would like to make it look like the request came from the node your HAProxy instance is running on.
Add as many relaying mail servers to your backend as you like by replicating the line beginning with "server" and assigning it the name of your choice and the proper IP + port the mail relay is running on. In the default setting, HAProxy will cycle through them round-robin.