Bitcoin
Lightning Network – Autonomous Loop Channel
Yes, you can rebalance the channels by creating a circular onion. It also currently incurs low routing costs.
However, to get on-chain funds you need to close the channel (or open it if you want more liquidity). This means that you cannot actually exchange on-chain funds for off-chain funds to provide inbound liquidity. This is the purpose of the loop/submarine swap.
c If you use Lightning, use the rebalce plugin (https://github.com/lightningd/plugins/tree/master/rebalance) or the drain plugin (https://github.com/lightningd/plugins/tree/master/drain). Can be used. Depending on what exactly you want to do, you may need to fork these plugins.