Well... what do you mean by "a stable process" in this context?
Let's try repeating the same example, but now drawing samples from a fixed distribution (in this case, a log-normal distribution):
> data <- exp(rnorm(100))
> sum(as.numeric(data > mean(data)))/length(data)
[1] 0.32
So, again, quite far from a 50/50 split, even though I am assuming a stable/fixed data generation process.
In general, it would help if statistical subjects are not presented in a careless way (i.e., containing things which are obviously not true). I would suggest at least adding an "assuming a symmetrical distribution" (so that at least your claim is approximately correct under the arithmetic average and for bounded variance distributions).
EDIT: If by "a stable process" you mean "a process following a stable distribution"... then, no, it doesn't help.
Here's an example with samples drawn from a Lévy distribution (which is a stable distribution):
> data <- rmutil::rlevy(100)
> sum(as.numeric(data > mean(data)))/length(data)
[1] 0.07
Let's try repeating the same example, but now drawing samples from a fixed distribution (in this case, a log-normal distribution):
> data <- exp(rnorm(100))
> sum(as.numeric(data > mean(data)))/length(data)
[1] 0.32
So, again, quite far from a 50/50 split, even though I am assuming a stable/fixed data generation process.
In general, it would help if statistical subjects are not presented in a careless way (i.e., containing things which are obviously not true). I would suggest at least adding an "assuming a symmetrical distribution" (so that at least your claim is approximately correct under the arithmetic average and for bounded variance distributions).
EDIT: If by "a stable process" you mean "a process following a stable distribution"... then, no, it doesn't help.
Here's an example with samples drawn from a Lévy distribution (which is a stable distribution):
> data <- rmutil::rlevy(100)
> sum(as.numeric(data > mean(data)))/length(data)
[1] 0.07