Since 2012, ggplot forbids Error: Mapping a variable to y and also using stat="bin" . Decision:
ggplot(dat, aes(variable, value, fill=Level)) + geom_bar(position="identity", stat="identity")
It also helps a lot if you use an asymmetric example, otherwise how do you know if you are not looking at the top series mirrored twice ?!
dat <- data.frame( variable=c("A","B","A","B"), Level=c("Top-2","Top-2","Bottom-2","Bottom-2"), value=c(.8,.7,-.2,-.3) )
gives the desired tornado plot:

source share