Тестируем систему Фибоначчи На днях листал Youtube, посмотрел This Is Horosho, потом по «похожим видео» опять пришел к казино схемам. Опять уверенный голос, опять слова типа: «я полностью финансово независим, делаю по 350$ в день не выходя из дома, это ваш шанс!». Конечно, все люди (особенно финансово независимые) на земле всегда «палят свои темы», ведь конкуренция это хорошо, добавляет азарта. Для тех, кто не понял — это был сарказм. Интересно то, что на этот раз мне не стали впаривать Мартингейла, видимо гугл по аналитике понял, что для меня это уже проверенный трюк, и намекнул на проверку другой схемы. Сказано — сделано. С чего я хочу начать пост? Начнем с того, для чего я это делаю. Делаю это я ради интереса, в свое свободное время. А еще делаю это для того, чтобы кто-то еще, как и я понял простой факт: НИКОГДА НЕ ИГРАЙТЕ В ИНТЕРНЕТ-КАЗИНО. НИКОГДА. НИ ПОД КАКИМ ПРЕДЛОГОМ. ОНИ СДЕЛАНЫ ДЛЯ ПОЛУЧЕНИЯ ПРИБЫЛИ, НЕ ПОЛУЧАЯ ЕЕ – НЕ БЫЛО БЫ ЭТИХ КАЗИНО. НЕТ НИКАКИХ ТЕМ И СХЕМ ПО УГАДЫВАНИЮ РУЛЕТКИ. ОСОБЕННО ИНТЕРНЕТ. Теперь когда я дал совет, можно приступать к основной части. Копипаста, которую вы могли найти сами, но сделал это за вас: В рулетке, числовая последовательность Фибоначчи составляет основу системы ставок, которая в некотором отношении обходится игроку дешевле, чем система Мартингейл и считается более медленной. Это объясняется тем, что ставки в системе Фибоначчи растут гораздо медленее, однако Вам придется участвовать в большем количестве раундов перед окончанием игры. Если вы проигрываете: Применение системы, каждый раз когда вы проигрываете раунд, вы повышаете ставку в следующем раунде, так же как в системе Мартингейл. Только вместо удвоения ставки, вы следуете числовому принципу Фибоначчи. Предположим вы сделали однократную ставку. При проигрыше повторите ту же ставку. Если вы опять проиграете, поставьте ставку, втрое большую предыдущей, затем в 5 раз больше предыдущей, в 8, и т.д.. При выигрыше: После каждого выигрыша игроку не нужно считать заново,вместо этого, вы вычеркиваете две последние цифры из ряда и ставите полученное число. Последовательность закончиться, если вы возвращаетесь к единице. Скажем, вы увеличиваете ставку в 13 раз и выигрываете, значит вы вычеркиваете 13 и 8 из числового ряда. Следующую ставку Вы повышаете на 5, и если выигрываете, то вычеркиваете 5 и 3. Далее Вы увеличиваете ставку в два раза. Пример последовательности ставок по системе Фибоначчи. Число 1 проигрывает Число 1 проигрывает Число 2 проигрывает Число 3 проигрывает Число 5 выигрывает – вычеркиваем 5 и 3 Число 2 проигрывает Число 3 выигрывает – вычеркиваем 3 и 2 Число 1 выигрывает Завершение последовательности (переход к новой последовательности к числу 1) Больше мне добавить нечего, если непонятно с первого раза — читать еще раз. Все просто. Сразу код (php, что еще?): Code: <?php class FSystem { public $startBalance; public $log = false; private $maximum; private $total; private $currentFibBet = 1; public function fibonacci($n) { if ($n == 1 || $n == 2) return 1; return $this->fibonacci($n - 1) + $this->fibonacci($n - 2); } public function runOnce() { $this->currentFibBet = 1; $this->total = 0; $currentBalance = $this->startBalance; while (true) { $win = false; $currentBet = $this->fibonacci($this->currentFibBet); if ($currentBet > $currentBalance) { // проиграли if ($this->log) echo "You lose!"; return false; } if ($currentBalance >= ($this->startBalance * 2)) { // выиграли if ($this->log) echo "You win!"; return true; } $this->total = $this->total + 1; $currentBalance -= $currentBet; if (rand(1, 37) === 1) { $win = false; } else { // В идеальной рулетке шанс выпадения черного или красного = 50/50 if (rand(1, 2) === 1) $win = true; } if ($win) { if ($this->log) echo "Число $currentBet выигрывает. Вычеркиваем $currentBet и " . $this->fibonacci(($this->currentFibBet - 1 < 1) ? 1 : $this->currentFibBet - 1); $this->currentFibBet = $this->currentFibBet - 2; if ($this->currentFibBet < 1) $this->currentFibBet = 1; $currentBalance += $currentBet * 2; if ($this->log) echo " Новая ставка:" . $this->fibonacci($this->currentFibBet) . "\r\n"; } else { if ($this->log) echo "Число $currentBet проигрывает."; $this->currentFibBet = $this->currentFibBet + 1; if ($this->log) echo " Новая ставка:" . $this->fibonacci($this->currentFibBet) . "\r\n"; } if ($this->maximum < $currentBalance) $this->maximum = $currentBalance; } } public function runTests($amount) { $wins = 0; $loses = 0; for ($i = 0; $i < $amount; $i++) { if ($this->runOnce()) { $wins++; } else { $loses++; } } $winPercents = ($wins / $amount) * 100; $losePercents = 100 - $winPercents; $percents = array( 'wins' => $winPercents, 'loses' => $losePercents ); return array( 'wins' => $wins, 'loses' => $loses, 'percents' => $percents ); } } $casino = new FSystem(); $casino->startBalance = 100; $result = $casino->runTests(1000); echo 'Результаты: <br />'; echo '<ul> <li>Побед: ' . $result['wins'] . '</li> <li>Проигрышей: ' . $result['loses'] . '</li> <li>% побед: ' . $result['percents']['wins'] . '% </li> <li>% поражений: ' . $result['percents']['loses'] . '% </li> </ul>'; Апр 07, 2012 http://bafoed.net http://bafoed.net/blog/post2196
Тестировал по правилам: - рулетка с одним зеро - минимальная ставка 50 - максимальная ставка 500 - на руках 100000 - если ставка должна быть выше максимума то ставка = максимуму Итого: стабильно проигрываю на 500 000 ходу, плюс минус 100 000 Делаю на руках в 10 раз больше и проигрываю на 6 000 000 ходу. Делаю максимальную ставку в 100 раз больше - проигрыш на 600 000 ходу, а иногда и меньше 100 000. Либо я не так понял тактику либо она хуже обычного удвоения. upd: Если при выигрыше прыгать не на 2 назад а в начало то проигрываешь медленнее в 3 раза.