The discount rules are a double edged sword realy. They are super flexible, but it means that they a super contextual. When you have rules that an order must meet certain criteria, it then becomes impossible to know if/when a discount would apply outside of an order context. Should you say there is a 20% on item X, even if you only meet the criteria if you are Member Y, and you have a subtotal greater than £50? This is why we can't know for sure if a discount applies, and by how much.
The general options are:
1) Record a "originalPrice" on a product, and just always show that with a strike through on the front end. This means there is a bit of duplication though as you'll need to record the pre discoutned price, and then also setup the discount.
2) I've seen some people create a temporary order, adding the given product to it, and then seeing what discounts apply. Extracting those and then showing them on the product details page. This could get pretty intensive though.
3) I have also seen people query the discounts and just look for ones you know are global discounts, ie, they have no rules, but apply a percentage discount. You could extract those and then dynamically calculate what that discount would be on the price.