This is not my area of expertise, but there's a fairly lengthy exploration of it here. Some of the reasons:
You use the arm as a antenna. as long as the opponent are outside of your reach you are safe. The oppnent have to lauch his attacks from slightly longer range than he is used to and it drives them insane. Sometimes I just move out of the way when they try to go in, sometimes I keep the arm rigid and use bodyweight shift to meet them half way and push them off ballance. sometimes, once the opponet has understood that they need to get inside the arm length to attack, I move the shoulder back and shorten the distance without them noticing it, and then launch an attack when they think they are safe.It is a very defensive stance.
Opponents tend to be frustrated and become focused on he hand as they cannot grasp that it really is not a threat in itself, and that you really give upp that hand as a effective offensive weapon. It is weak against good kickers (especially front kicks/teeps).
....
Plenty of fighters use it, it can obstruct the opponent's view, it can check their jab (assuming southpaw) and so on. It's also very common in Muay Thai which tends to have a longer guard than boxing. I've used it pretty much for as long as I've been training and I was taught with it - and honestly I've never had any problems, you've just got to understand WHY you use it - as opposed to just doing it because you've seen other fighters do it.
You move it in and out because, well, keeping any limb outstretched is practically begging for it to be struck or grappled. You don't see this as much in boxing because boxing tends to be an arm-reach sport while MMA has closer (grappling) and further (kicking) ranges to worry about, making gauging the distance all the more important. Also, if you're within striking range, it may be illegal. Apparently, the term for this is "posting" and it's meant to refer to pushing your opponent away or stiff-arming them instead of punching them, but it basically makes an extended arm potentially illegal if within range.