My English is weak but you ask me what you don't know.
Raspberry Pi:
install raspbian, config static ip for wifi or ethernet, install wvdial and usb-modeswitch, install 3proxy from github (important - last beta version).
Modem 3g/4g - best option use Huawei, It is helpful to turn off the cd drive in the modem (i can't add links but please use google and "Disable virtual CD-ROM drive with built in software on Huawei"
now - config
example /etc/wvdial.conf
[Dialer P0]
Modem=/dev/ttyUSB0
Phone = *99***1#
Username = "blank"
Password = "blank"
New PPPD = yes
Stupid Mode = 1
Dial Command = ATDT
[Dialer P1]
Modem=/dev/ttyUSB3
Phone = *99***1#
Username = "blank"
Password = "blank"
New PPPD = yes
Stupid Mode = 1
Dial Command = ATDT
[Dialer P2]
Modem=/dev/ttyUSB6
Phone = *99***1#
Username = "blank"
Password = "blank"
New PPPD = yes
Stupid Mode = 1
Dial Command = ATDT
and add dialer for all modems, you need modification this section for your modem and provider.
Next tuch file ppp0 , ppp1, ppp2 etc in /etc/network/interfaces.d/
example ppp0:
auto ppp0
iface ppp0 inet wvdial
provider P0 #this is dialer name from wvdial.conf
example ppp1
auto ppp1
iface ppp1 inet wvdial
provider P1 #this is dialer name from wvdial.conf
Now time to 3proxy.conf, add lines:
proxy -a -i192.168.1.15 -p3128 -Deppp0
proxy -a -i192.168.1.15 -p3129 -Deppp1
proxy -a -i192.168.1.15 -p3130 -Deppp2
-a - anonymous
-i - RPi local ip
-p -proxy port
-De - modem
-good luck-