A picture of the type you draw would indeed indicate that there is serial correlation, but the "real" reason for this seems to be lack of exogeneity in that a linear regression is used to fit a data set that appears to be generated by some polynomial model, maybe of order 5 or so.
Suppose, as a simpler example that is however enough to make the point, that $y_t$ is actually generated as (the "true model")
$$
y_t=\beta_1x_t+\beta_2x_t^2+u_t,
$$
with $u_t$ independent of $x_t$, such that the regressors are exogenous. If we however attempt to model $y_t$ with a simpler function like $y_t=bx_t+v_t$, we face an issue of omitted variable bias. [Note that we leave out an intercept in both the true and the simpler linear model to keep the algebra short.]
To see this, add and subtract $bx_t$ to obtain
$$
y_t=bx_t+(\beta_1-b)x_t+\beta_2x_t^2+u_t.
$$
Hence, the residual $v_t$ in the linear model is given by
$$
v_t=(\beta_1-b)x_t+\beta_2x_t^2+u_t
$$
Then, $$E(v_t|x_t)=(\beta_1-b)x_t+\beta_2x_t^2\neq0,$$
so that the error is not independent of the regressor in the simple model.
We can say a little more given more specific assumptions. Suppose $x_t\sim N(\mu,1)$ and $b$ is the linear projection coefficient of the projection of $y_t$ on $x_t$ (this is what an OLS estimate would be consistent for, see here). In this case, we would obtain (see here)
$$
b=\frac{E(x_ty_t)}{E(x_t^2)}=\frac{E(x_t(\beta_1x_t+\beta_2x_t^2+u_t))}{\mu^2+1}=\beta_1+\beta_2\frac{\mu^3+3\mu}{\mu^2+1}
$$
Then,
$$E(v_t|x_t)=-\beta_2\frac{\mu^3+3\mu}{\mu^2+1}x_t+\beta_2x_t^2$$
and one could play around with regions for $x_t$ where $E(v_t|x_t)>0$ and $E(v_t|x_t)<0$. E.g., for $\beta_2<0$ (and when $(\mu^3+3\mu)/(\mu^2+1)>0$), $E(v_t|x_t)>0$ when $x_t\in[0,(\mu^3+3\mu)/(\mu^2+1)]$.
Here is a numerical example.
n <- 10000
mu <- 1
x <- rnorm(n, mu)
beta_1 <- 4
beta_2 <- -1
y <- beta_1*x+beta_2*x^2 + rnorm(n,sd=.1)
plot(x,y, cex=.1, col="grey")
abline(lm(y~x-1))
abline(v=0, lty=2)
abline(v=(mu^3+3*mu)/(mu^2+1), lty=2)
Consider instead an example with "actual" serial correlation, like in $y_t=\beta t+u_t$, $u_t=\rho u_{t-1}+v_t$. Here, there is no relationship between the regressor and the error:
n <- 1000
u <- arima.sim(list(ar=0.9), n=n)
beta <- 0.01
x <- 1:n
y <- beta*x + u
plot(x, y, type="l", lwd=2, col="lightblue")
abline(a=0, b=beta)
For comparison, a data-generating process for your plot might be something like
n <- 60
x <- -n:n
y <- 0.1 + 0.02*x - .01*x^2 + .00003*x^3 + .0000001*x^4 + .0000001*x^5 + rnorm(1)
plot(x,y, type="l", lwd=2, col="lightblue")