I'll just leave this for you guys to ponder over.
NMC (in game version): Can be traded only at the deadline by a non-playoff team to a playoff team (based on current standings). This is something a real player might waive their NMC for. Would give teams an option with a brief window of opportunity, in which to move these "unmovable" players.
NTC: I feel like every current NTC should be an NTC - 1 and work as follows:
NTC - 1: May be traded once per season during the course of the current contract.
NTC - X: May not be traded until the trade deadline of the final year of the contract.
Just a rough example, with the point being this:
Offering a clause in free agency gives a salary reduction.
NTC - 1: 10% salary reduction until they are traded
NTC - X: 12.5% salary reduction for the length of the contract (including after they are traded, which can only occur at the deadline of the final contract year)
NMC: 5% salary reduction
I didn't put much thought into it, just a brief example of an idea I had. Feel free to play with it or dismiss it, I won't be checking back on it.