Random time vs stopping time & expectation

198 Views Asked by At

Let $B_t$ be a standard Brownian motion. Let us introduce a stopping time $\tau$ as $$\tau \ = \ \ \inf\Big\{t:\ |B_t|=1\Big\}.$$ Now, what I am interested in are random variables $\tau_x$ defined as $$\tau_x(\omega) \ = \ x\cdot\tau(\omega),$$ for $x> 0$. Obviously, $\tau_x$ is not a stopping time anymore. Nevertheless, we can still consider a random variable $$B_{\tau_x}(\omega) \ = \ B_{\tau_x(\omega)}(\omega),$$ and it is (if I understand correctly) still well defined, i.e. measurable - as claimed in

The strong Markov property with an uncountable index set.

My question is, are basic quantities such as $$\mathbb{E}\Big(B_{\tau_\frac{1}{2}}\Big|B_{\tau}=1\Big)$$ computable? How can we calculate it? My crude intuition is, that $$\mathbb{E}\Big(B_{\tau_x}\Big|B_{\tau}=1\Big) \ = \ x,$$ as $\Delta:=B_{\tau}-B_{0}=1$ and on average we should make $x$ of it in the first $x$ part of random $\tau$ time.

I would be glad for any help and insight.

1

There are 1 best solutions below

4
On BEST ANSWER

The following R-code serves to compute the mean of $B_{\tau/2}$ conditionally on $B_\tau = 1$. Paths of Brownian motions on $[0,1]$ are simulated via independent Gaussian increments. For the subsample where $\tau \leq 1$ and $B_{\tau} = 1$, the values $B_{\tau/2}$ are computed, if necessary via linear interpolation. The mean is then approximated by taking the average of these values.

(Intuitively, conditioning on $\tau \leq 1$, shouldn't be too problematic; but a rigorous argument escapes me.)

I find that $\mathbb{E}[B_{\tau/2} \, | \, B_\tau = 1] \approx 0.26$. Replacing $\tau$ by $\bar{\tau} := \inf\{t > 0 : B_t = 1\}$, one also finds $\approx 0.26$. I find these numerical results to be somewhat consistent with an earlier comment of mine.

set.seed(2)

N <- 5000
n <- 5000

h <- 1/n

X <- apply(rbind(rep(0,N),matrix(rnorm(n*N, mean = 0, sd = sqrt(h)), nrow = n, ncol = N)), 2, cumsum)
    
tau <- apply(X, 2, function(y){Position(function(x){x>=1 | x<=-1}, y)})

B_tau <- vector()
B_tau_half <- vector()
for (i in 1:N){
  if(!is.na(tau[i]) & X[tau[i],i] >= 1){
    B_tau <- c(B_tau,X[tau[i],i])
    if(tau[i] %% 2 == 0){
      B_tau_half <- c(B_tau_half,X[tau[i]/2,i])
    }
    else{
      B_tau_half <- c(B_tau_half,X[(tau[i]-1)/2,i]/2 + X[(tau[i]+1)/2,i]/2)
    }
  }
}

mean(B_tau_half)