Another (perhaps more drastic) approach would be to force shareholders to hold their shares for a minimum period of time, or institute a mechanism that distributes losses across the shareholders of the last X years. That would incentivize long-term investment strategies over short-term rent-seeking.
Or you use taxes. In Germany (where I live) we have a speculation tax on property, for example: If you (as a private individual) sell a property less than 10 years after you have acquired it, any profit from that sale is taxed as income. After the 10-year cut-off you don't have to tax it at all.
The US tax code already does this by differentiating tax treatment between short- and long-term capital gains, although you might argue that the time required to qualify as long-term (1 year) is too short.