Постановка проблеми
Yt=log10(Mt)Mtt
q
Y0=1YL=−2YWYW→∞
Випадкова прогулянка
Yt
Yt=Y0+∑i=1tXi
де
P[Xi=aw=log(1+2q)]=P[Xi=al=log(1−q)]=12
Ймовірність банкрутства
Мартингейл
Вираз
Zt=cYt
c
caw+cal=2
c<1q<0.5
E[Zt+1]=E[Zt]12caw+E[Zt]12cal=E[Zt]
Ймовірність закінчитися банкрутом
Yt<YLYt>YWYW−YLaw
E[Zτ]τE[Z0]
Таким чином
cY0=E[Z0]=E[Zτ]≈P[Yτ<L]cYL+(1−P[Yτ<L])cYW
і
P[Yτ<YL]≈cY0−cYWcYL−cYW
YW→∞
P[Yτ<YL]≈cY0−YL
Висновки
Чи існує оптимальний відсоток від вашої готівки, який ви можете запропонувати, не втрачаючи всього?
Який би оптимальний відсоток не залежатиме від того, як ви оцінюєте різні прибутки. Однак можна сказати щось про ймовірність втратити все це.
Тільки коли гравець ставить нульову частку своїх грошей, тоді він точно не збанкрутує.
qqgambler's ruinqgambler's ruin=1−1/b
cawal
b=2
чи зменшуються або збільшуються шанси втратити всі гроші з часом?
q<qgambler's ruin
Ймовірність банкрутства при використанні критерію Келлі.
q=0.5(1−1/b)bbc0.10.1S−L
Тобто незалежно від параметра асиметрії бмагічного дерева, ймовірність збанкрутувати, використовуючи критерій Келлі, дорівнює співвідношенню кількості грошей, де гравець збанкрутує, і кількості грошей, з якої починається гравець. Для десяти доларів і 1 цент це ймовірність збанкрутувати 1: 1000 при використанні критерію Келлі.
Моделювання
Наведені нижче моделі показують різні модельовані траєкторії для різних стратегій азартних ігор. Червоні траєкторії - це ті, хто закінчився банкрутом (потрапив на лініюYт= - 2).
Розподіл прибутку за часом т
Щоб додатково проілюструвати можливі результати азартних ігор із грошовим деревом, можна моделювати розподіл Yтяк одновимірний процес дифузії в однорідному силовому полі та з поглинаючою межею (де гравець збанкрутує). Вирішення цієї ситуації дав Смолуховський
Смолуховський, Маріан В. "Über Brownsche Molekularbewegung unter Einwirkung äußerer Kräfte und deren Zusammenhang mit der verallgemeinerten Diffusionsgleichung." Аннален дер Фізик 353,24 (1916): 1103-1112. (доступне в Інтернеті за адресою : https://www.physik.uni-augsburg.de/theo1/hanggi/History/BM-History.html )
Рівняння 8:
W( х0, x , t ) = e- c ( x - x0)2 Д- c2т4 Д2 πД т----√[ е- ( х - х0)24 Д т- е- ( х + х0)24 Д т]
Це рівняння дифузії стосується проблеми дерева, коли ми встановлюємо швидкість c дорівнює очікуваному приросту Е[ Yт], ми встановили D дорівнює дисперсії зміни за один крок Вар ( Xт), х0 - початкова сума грошей, і т - кількість кроків.
Зображення та код нижче демонструють рівняння:
Гістограма показує результат від моделювання.
Пунктирна лінія показує модель, коли для наближення розподілу ми використовуємо наївний нормальний розподіл (це відповідає відсутності поглинаючого бар'єру "банкрутства"). Це неправильно, оскільки деякі результати вище рівня банкрутства включають траєкторії, які раніше пройшли рівень банкрутства.
Суцільна лінія - це наближення за допомогою формули Смолуховського.
Коди
#
## Simulations of random walks and bankruptcy:
#
# functions to compute c
cx = function(c,x) {
c^log(1-x,10)+c^log(1+2*x,10) - 2
}
findc = function(x) {
r <- uniroot(cx, c(0,1-0.1^10),x=x,tol=10^-130)
r$root
}
# settings
set.seed(1)
n <- 100000
n2 <- 1000
q <- 0.45
# repeating different betting strategies
for (q in c(0.35,0.4,0.45)) {
# plot empty canvas
plot(1,-1000,
xlim=c(0,n2),ylim=c(-2,50),
type="l",
xlab = "time step", ylab = expression(log[10](M[t])) )
# steps in the logarithm of the money
steps <- c(log(1+2*q,10),log(1-q,10))
# counter for number of bankrupts
bank <- 0
# computing 1000 times
for (i in 1:1000) {
# sampling wins or looses
X_t <- sample(steps, n, replace = TRUE)
# compute log of money
Y_t <- 1+cumsum(X_t)
# compute money
M_t <- 10^Y_t
# optional stopping (bankruptcy)
tau <- min(c(n,which(-2 > Y_t)))
if (tau<n) {
bank <- bank+1
}
# plot only 100 to prevent clutter
if (i<=100) {
col=rgb(tau<n,0,0,0.5)
lines(1:tau,Y_t[1:tau],col=col)
}
}
text(0,45,paste0(bank, " bankruptcies out of 1000 \n", "theoretic bankruptcy rate is ", round(findc(q)^3,4)),cex=1,pos=4)
title(paste0("betting a fraction ", round(q,2)))
}
#
## Simulation of histogram of profits/results
#
# settings
set.seed(1)
rep <- 10000 # repetitions for histogram
n <- 5000 # time steps
q <- 0.45 # betting fraction
b <- 2 # betting ratio loss/profit
x0 <- 3 # starting money
# steps in the logarithm of the money
steps <- c(log(1+b*q,10),log(1-q,10))
# to prevent Moiré pattern in
# set binsize to discrete differences in results
binsize <- 2*(steps[1]-steps[2])
for (n in c(200,500,1000)) {
# computing several trials
pays <- rep(0,rep)
for (i in 1:rep) {
# sampling wins or looses
X_t <- sample(steps, n, replace = TRUE)
# you could also make steps according to a normal distribution
# this will give a smoother histogram
# to do this uncomment the line below
# X_t <- rnorm(n,mean(steps),sqrt(0.25*(steps[1]-steps[2])^2))
# compute log of money
Y_t <- x0+cumsum(X_t)
# compute money
M_t <- 10^Y_t
# optional stopping (bankruptcy)
tau <- min(c(n,which(Y_t < 0)))
if (tau<n) {
Y_t[n] <- 0
M_t[n] <- 0
}
pays[i] <- Y_t[n]
}
# histogram
h <- hist(pays[pays>0],
breaks = seq(0,round(2+max(pays)),binsize),
col=rgb(0,0,0,0.5),
ylim=c(0,1200),
xlab = "log(result)", ylab = "counts",
main = "")
title(paste0("after ", n ," steps"),line = 0)
# regular diffusion in a force field (shifted normal distribution)
x <- h$mids
mu <- x0+n*mean(steps)
sig <- sqrt(n*0.25*(steps[1]-steps[2])^2)
lines(x,rep*binsize*(dnorm(x,mu,sig)), lty=2)
# diffusion using the solution by Smoluchowski
# which accounts for absorption
lines(x,rep*binsize*Smoluchowski(x,x0,0.25*(steps[1]-steps[2])^2,mean(steps),n))
}