My two cent,
I feel like what we are trying to avoid with trades are uncompetitiveness and unfairness.
I think one of the main roles of the manager is to build his team.
Therefore, if a manager is careful to build his team around serious and dedicated players while another is content to take players accustomed to doing good results, we must admit that they are responsible for their choices and that they must assume the consequences if one of their players lacks seriousness.
In this case, the competitiveness is respected.
On the other hand, I find it very unfair for a player to be forced to join another team.
Providing efforts and supporting the same flag every week, befriending teammates and being forced to give up all this should not be allowed.
Therefore, for a trade to be allowed, each person involved should agree.
In this case, the fairness is respected.