BJStrike, Blackjack simulation and practice software

     BJStrike is a powerful Blackjack simulator and index generator that supports a wide spectrum of counting systems, betting strategies and user customization options. In addition, BJStrike can be used for practicing playing blackjack and card counting. BJStrike is useful for determining win rate of card counting systems and to estimate the risk involved in real play. BJStrike comes with a user friendly Graphical User Interface (GUI), see screen snapshots. In addition, BJStrike can be run from a shell terminal window or in batch mode for more intensive simulation tasks. See product options for software licenses available and pricing information. BJStrike comes with a comprehensive 150 page reference manual (in PDF format) that provides examples and detailed descriptions of definitions and algorithms used as well as comprehensive descriptions of each option. See also the technical support section for more documentation available on-line. A snapshot of the user manual (Chapter 1-4) can be downloaded here. Examples of single deck simulation results can be found here.
     BJStrike can utilize full multi-threading if so desired to achieve an almost linear simulation speed-up with number of processor cores in multi-core systems (for some of the operating systems supported).

Simulator and strategy analyzer

  • BJStrike supports most of the common rule variations including early and late surrender, any number of decks and up to 6 players. Several common bonus hand payoffs can be defined. In addition, the shoe can be set up in an arbitrary state in terms of composition and/or order prior to any simulation.

  • The simulator can keep up to 13 independent user-defined counting systems in true count or running count mode, which can be combined arbitrarily in strategy definitions and betting systems. This means that ace side counts and multi-parameter systems can easily be set up. There are several rounding modes supported for TC conversion.

  • The simulator comes with various predefined count systems including Hi-Lo, Zen, KO, Red-7, Hi-Opt and OPP. In addition, the user can specify his own tag point value array for running or true count systems for his own counting systems. BJStrike includes predefined strategies for single and multiple deck basic strategy as well as the Illustrious 18 playing strategy indices. The user has full flexibility in defining any deck composition for simulation and index generation.

  • BJStrike comes with a powerful segment handling engine for shuffle tracking/ace prediction analysis in which the shoe can be partitioned into segments. Each segment can be shuffled individually, not at all; or merged with other segments at shuffle time. The initial deck state and card order can be fully customized. Segments of a certain ace or face card density can be auto-generated at shuffle time and the simulator can be set up to automatically insert ace or face cards into a segment at a given probability for evaluating "steering techniques".

  • The user strategy definition module allows arbitrary composition dependent and penetration dependent playing strategies to be defined either from scratch or added incrementally on top of standard strategy templates. For example, up to three indices can be defined for each hand composition from any of the 13 count systems. Different strategies can be defined for top of the deck hands or at certain round numbers or based on a certain number of cards drawn. For advanced strategy declarations an 'if-then-else' construction is provided. Different betting schemes can be defined for different players or hands for evaluating multiple hand play. Statistics are reported per player as well as in total numbers to evaluate multiple hand strategies.

  • BJStrike has several options for "computer perfect strategy", which means that all possible play options are evaluated dynamically in BJStrike for each playing decision and the play (Hit, Stand, Double or surrender) that maximizes EV is chosen. Computer perfect strategy is useful for determining playing efficiency of a strategy. This option can be used both in regular simulation and in practice mode.

  • Certain types of progression betting styles are supported including Martingale betting systems. Run your own simulations to verify why progression systems alone can never provide any advantage against casinos in negative EV games.

  • Shuffle points can be specified in either number of rounds or number of cards drawn for up to 6 players. Total simulation length can be specified in number of hands, number of rounds or number of shoes

  • The standard statistics reports generated include EV, SCORE, standard deviation and hourly win rate. In addition, customized statistics can be generated per count or round number. Betting or sitting hands out can be controlled per round or player based count or win/loss results. Statistics are generated per hand as well as combined for all hands defined as the counter's hands.

  • BJStrike can generate Risk of Ruin (ROR) tables as well as calculate optimized betting ramps based on Kelly criterion for any supported strategy. Moreover, there is a special mode, Session Walk, in which short-term session or trip ROR can be estimated and effects of variance on session results can be studied. In addition, bankroll based betting can be simulated where the unit bet increases or decreases with preserved bet spread as the bankroll doubles or halves. Given an initial bankroll, a final bankroll to reach, and an initial bet ramp, the number or rounds it takes to reach a certain goal and ROR can be evaluated under optional max bet constraints.

  • Performance on an AMD Duron processor at 1.0 Ghz is on average 50 million hands per minute. Index generation mode runs on average at 200 million hands per minute. Unlimited number of hands can be simulated as BJStrike uses full 64 bit arithmetic for all internal counters. Utilizing the new multi-thread simulation mode achieves almost a linear performance speed-up with number of cores. BJStrike comes with several examples of settings for common simulation tasks to easy get started. A comprehensive reference manual is included that describes all commands and procedures in details.

  • A fixed bankroll can be specified to estimate risk of ruin through simulation and to estimate number of hands it takes to double the bankroll. A variety of betting schemes are provided that can be mixed with count based betting strategy. A playback mode is provided in which each hand played is reported in the results window including cards dealt, betting, playing decision, payoff and count. The shuffle procedure can be switched off and the deck stacked to evaluate certain strategies of user controlled shuffle.

  • BJStrike can analyze common side bets including the Royal Match, Lucky Ladies, Match the dealer and many more. For Royal Match, Red vs. Black as well as Majority vs. Minority suit count systems can be analyzed with indices generated. Generic bonus hands and side bet constructs are available for more complex side bets. All rule variations for Super Fun 21 and Spanish 21 are supported including: double on any number of cards, surrender on any number of cards, double down rescue surrender and redoubling in index generation and simulation.

Index generator and hand analyzer

The index generator provided in BJStrike is simulation based, which means that the indices are generated by simulating the two plays independently and determining the EV for a range of consecutive counts. Next, the count at which the EV functions of the two plays meet is reported. Realistic representative deck compositions for each count are generated by drawing cards randomly from a shuffled deck under certain criteria. Many different deck compositions are evaluated for each count. The distribution of deck compositions evaluated for a certain count will follow the normal distribution of compositions that occur in normal play, which means that the indices will be accurately generated under the same playing conditions as they are being used in real play.
  • Index generation can be run in either EV maximizing (normal) or SCORE maximizing (commonly called risk-averse) modes. The purpose of SCORE maximizing mode is to sacrifice some EV in a strategy at the benefit of lower variance, and, hence increase the SCORE.

  • The deck can be set in an arbitrary state for index generation and there are options to specify at which penetration to generate the indices. Both running and true count systems are handled.

  • The expected value vs. count can be reported during index generation. Composition dependent indices can be generated for up to 6 card hands as well as total (composition independent) indices.

  • A hand analysis mode is provided for estimating EV of a certain hand composition vs. dealer upcard for arbitrary deck composition and penetration, which can also be used for basic strategy generation.

  • Top-of-deck expectation (basic strategy) as well as indices and expectation for any deck composition can be determined for any supported rule variations and hand composition using a new sample based index generation methodology.

  • A basic strategy generation engine is provided for easy generation of any composition dependent basic strategy for any deck composition and supported rule variation.

Card counting practice features

  • Play one or multiple (1-5) hands at a blackjack table or just watch a game being played by all computer players for practicing back-counting. Auto play mode can be used for realistic card counting drills.

  • The user interaction for betting and playing decision during play is handled through the the standard mouse buttons or certain dedicated keys to provide a comfortable feeling and fast playing speed.

  • Most of the rule variations and set-ups available for simulation are also available in playing mode including advanced betting and playing strategy control and multiple card counting systems. In addition, computer perfect playing strategy can be used in practice mode with any deviation flagged and reported in the results file.

  • Action on playing decision error or betting error can be set to auto-correct and notify or notify only. Statistics about number of playing and betting errors can easily be checked at each round or after a session. A window showing running count, true count, penetration as well as suggested play according to the active strategy or according to computer "perfect" play can be brought up during each round.

  • The animation and playing speed can be fully customized using 20 different parameters to accurately emulate specific playing conditions or choose from several pre-customized speed options.

  • Examples of screen snapshots: Control window 1 and a playing table where the user plays two out the three hands in play.

Samples of screen snapshots

Examples of single deck simulation results

Home Products Ordering Contact

Copyright © 2002-2010 DFTSimuLab. All rights reserved.