Trading would be a great idea because Little Legends can only be purchased for RP, and therefore cannot be mass-grinded by bots.
To prevent fraud/theft, trading would need some limitations though:
Exchange only available to accounts with 100+ matchmade games.
Exchange only available to accounts older than 6 months.
Exchange disabled for 3 days after a password change/recovery from an unrecognized location.
Items placed on the exchange take 48 hours before they become available to barter with; this also gives hasty sellers time to rethink and avoid remorse.
Items can only be placed in the same regional exchange as the region they were obtained in.
As a one-time action, any currently owned tradable items would become 'unredeemed' (as in not already redeemed/unlocked for personal use) for trading purposes. Little Legends would be the first tradables to test, but skin shards, emotes, etc. could be considered in the future (requires some caution because hextech can theoretically be grinded).
Trading would work like this:
Players load items into their Exhange inventory so that they can use them for trades (this takes 48 hours as mentioned earlier).
A player creates a trade listing by populating two columns of information like so: Offering{ offer1 : A and B, or offer2 : C, or offer3 : A and D } Accepting{ asking1 : E and F, or asking2 : G } Can Message Seller = true;
Let's say each player can have up to 5 listings and each listing can have up to 5 distinct offera and asks. An item offered in one listing cannot be offered in another, but it can be in multiple combinations of items within the same listing.
Another player then browses through the listings, searching for item D for example. He finds the listing above, and wants to trade, but only has an item F. The second player creates a counter-offer trade listing of F for D. Because the first player has Can Message Player = true, the second player sends a message to the other player. "Hey, can I trade item F for your item D? I don't want item A and I don't have item E. Here is a link to my counter-offer: "
If the first player likes the counter-offer, then they can withdraw their listing and fulfill the counter-offer listing. Otherwise, they can reply or ignore the counter-offer. If they read the Exchange message it, then the other player will have this indicated to them ao that they're not left hanging if the first player doesn't send a reaponse.
Listings older than 30 days would automatically be withdrawn.
Players would be able to search, filter, and sort by criteria such as "new listings less than 24 hours old" and would also be able to view history of recently completed trades to guage their items' value in the Exchange. If it is a very rare item, there might not be any available history, though maybe that rarity can be communicated to player some other way ao that they don't sell themselves short. In general though, it would be up to the player to research their trades. It would be similar in concept to trading Pokemon cards.
Also when a trade offer is accepted, it would be held for 3 hours, during which other players could accept the same offer, and then a random person trader would be rolled to determine who actually fulfills the trade. This would prevent players from real world trading by coordinating to do an inequal trade in the Exchange. Like if if one player offers a mega valuable item for aome worthless junk in exchange for $50 in real life, the person paying real $ has no way to guarantee they will get the rare item, because there would be 3 hours where random people can queue up to roll for the uneven trade.