Bricklink is a pretty good indicator of market value, but unfortunately you have to look at the data in depth to really find out what a set is worth. There's several issues:
They have two major categories: New and Used, however we all know a sealed set is worth more than an opened set. You can't list only sealed sets in the price guide.
Within the New category, there's three subcategories: sealed, complete, incomplete
You can exclude incomplete sets in the price guide, but there's no strict enforcement of the categories. Which basically means I can list a set as Sealed and put in the commentary field: set opened, bags are sealed.
Other examples are: no minifigures, only certain parts included (e.g. Snowspeeder in Assault On Hoth), ...
Minifigure value is very innacurate:
The distinction between new and used minifigures is sometimes rather vague
People sometimes list complete sets of 16 minifigures under the part number for a sealed box (60 figures) and even list it as sealed
Another major problem is the use of super lots. This is also an issue with regular sets, but with minifigures it's a huge problem. Here's the problem: a super lot is basically a collection of items which are offered all at once, however on bricklink each item gets it's own listing through the catalog. Take for example a set of 16 minifigures for 90€ total. This means that each figure on average costs about 5.63€. However, there is no rule on bricklink that says you can't list one figure in the lot at 89.84€ and all the others at 0.01€. Now a buyer would see those minifigures listed for 0.01€ on the catalog page! Of course you can exclude super lots when selecting an item in the "items for sale" tab. However, for some reason this option is not available in the price guide. This means that all super lot sales are included in the price guide, even the ones that have this unrealistic price of 0.01€.
I've complained about it a lot, but it really is a huge issue because it drives the prices down. Buyers look at the price guide and see an average price that is way too low. This price determines (in part) what they are willing to pay for a figure. I urge anyone on bricklink to report this to bricklink support. I've done so a couple of times already, but they keep telling me "they'll pass it on to the tech team". Since all of the sales are listed in a database, adding the option to exclude super lots is a really minor adjustment.