Can GameplayEffect modify attribute of Source

The thing is
Think about Energy Transfer from A to B,The transfer amount is relevant to the
Transfer-rate, CurrentEnergy of A,
and Current Energy, Max Energy of B.
(Cause transfer amount should <= transfer-rate * Deltatime && <=CurrentEnergy of A && <= Max Energy of B - Current Energy of B).

When the Ability is activate, it should Minus A’s Energy while Plus B’s Energy,And Minus/plus amount is the same.

So, the basic method is apply a gameplay effect from A to B(Let’s call this effect PlusEffect), and when B got Energy plus, Apply an effect(Call this one MinusEffect) back to A to Minus A’s Energy.

The question is , if there has a way that I can apply the modifier to source,so the ability can archieve with one effect.,
Or there has any other simple solution?

By the way, add A to PlusEffect’s Targets doesn’t work cause if both source and target is A, the attribute will both captured from A,then the calculation will be wrong.