Double Streets Step Ladder roulette system

System Name

Double Streets Stepladder

Description

This is a progressive system that tracks double streets (sometimes called 6 number bets). You start at one unit and increase up to 20 units.

You go up the ladder on a loss and down on a win. The idea is to get back to step 1 and complete a round of the system. Zeros are not counted and you just ignore them when doing the system.

So you track the last 6 numbers and bet on the one that has come up most. For example, if the first 6 numbers are 35, 3, 10, 2, 6 and 20, the dominant street is the one between 1 and 4. You bet on that until it comes up (so 1,2,3,4,5 or 6).

1,1,1,1,1
2,2,2,2
3,3,3
4,4,4
5,5
6,6
7,7
8,8
9
10,10
11
12
13
14
15
16
17
18
19
20

is the progression. Step down 6 numbers after a win.

Video Review

Bank Roll Graph

Surprisingly after 10000 spins, this system actually was positive. It only ended up negative after 40000 spins.

Conclusion

This is a fun roulette system which does make your bankroll last longer. No system can overcome the negative expectation but this one does last a lot more spins than most. I suspect its due to only better really small amounts which is the key to playing roulette for a long time. The less you play, the less you lose!

Code for roulette Xtreme

                    
system "Double_Streets_Stepladder"

{Stepladder - the example here is played on the double streets (line bet)
Bets start at 1u and gradually increase to a maximum of 20u
You go up  the ladder on a loss and down on a win  - the aim being to get back to
step 1 ASAP.
=================================================================
Note: If any Zeros come up, we skip them since they do not have any nearest areas to bet
=================================================================
Track the last six (6) spins and find a dominant Double Street before betting.
After a win, find a new dominant Double Street
=================================================================
}
method "main"
begin
    While Starting a New Session
    begin
        Call "Initialize";
        call "Input Data";
        exit;
    end

    Call "Track Spins";
    Call "Find Double Streets";
    
    While Flag "1" is True
    And  Any Inside Bet has lost each time
    begin
        Add 1 to Record "Progression" Data index;
    end
    
    While Flag "1" is True
    And  Any Inside Bet has won each time
    And  Record "Progression" Data index > 1
    begin
        Subtract 6 on Record "Progression" Data index;
        Set Flag "1" to False;
    end
    
    While Record "Progression" Data index > 35
    Or Record "Progression" Data index < 1
    begin
        Put 1 on Record "Progression" Data index;
    end
    
{=================================================================
 Check if Flag is False, then get New Dominant Street
=================================================================
}
    While Flag "1" is False
    begin
        Call "Find Double Streets";
    end
    
    Call "Make Bet";
end

method "Make Bet"
begin
    Put 100 % of Record "Progression" data on Record "Last Spin Number" layout;
end

//==================================================================
//Section below is Added to Find a Dominant Street from the last 6 spins
//==================================================================
method "Find Dominant Double Street"
begin
    Set Max Record "Line (Double Street) Layout" Layout index;
    put 100% Record "Line (Double Street) Layout" Layout index to
                                Record "Line (Double Street) Layout" Data index;
    Put 0  on Record "temp data" data;

    Loop until Record "Line (Double Street) Layout" Data index = 0
    begin
        While Record "Line (Double Street) Layout" data >= Record "temp data" data
        begin
            Copy Record "Line (Double Street) Layout" layout to the Record "Last Spin Number" layout;
            Put 100 % of Record "Line (Double Street) Layout" data on Record "temp data" data;
        end

        Subtract 1 to Record "Line (Double Street) Layout" Layout index;
        Subtract 1 to Record "Line (Double Street) Layout" Data index;
    end

    Set Max to Record "Line (Double Street) Layout" Layout index;
end

method "Find Double Streets"
begin
    While Record "Tracked Spins" Layout index < 6
    begin
        Exit;
    end
    
    While Flag "1" is True
    begin
        Return;
    end
    
    Clear Record "Line (Double Street) Layout" data;

    put 1 to Record "Tracked Spins" Layout index;

    Loop until Record "Tracked Spins" Layout index > Record "Tracked Spins" Layout count
    begin
        Call "Calculate Double Street from Tracked Spins";
        Add 1 to Record "Tracked Spins" Layout index;
    end

    Set Max to Record "Tracked Spins" Layout index;

    Call "Find Dominant Double Street";
    Set Flag "1" to True;
end

method "Calculate Double Street from Tracked Spins"
begin
    While Record "Tracked Spins" layout = Number 1
    Or Record "Tracked Spins" layout = Number 2
    Or Record "Tracked Spins" layout = Number 3
    begin
        put 1 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 4
    Or Record "Tracked Spins" layout = Number 5
    Or Record "Tracked Spins" layout = Number 6
    begin
        put 1 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 2 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 7
    Or Record "Tracked Spins" layout = Number 8
    Or Record "Tracked Spins" layout = Number 9
    begin
        put 2 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 3 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 10
    Or Record "Tracked Spins" layout = Number 11
    Or Record "Tracked Spins" layout = Number 12
    begin
        put 3 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 4 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 13
    Or Record "Tracked Spins" layout = Number 14
    Or Record "Tracked Spins" layout = Number 15
    begin
        put 4 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 5 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 16
    Or Record "Tracked Spins" layout = Number 17
    Or Record "Tracked Spins" layout = Number 18
    begin
        put 5 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 6 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 19
    Or Record "Tracked Spins" layout = Number 20
    Or Record "Tracked Spins" layout = Number 21
    begin
        put 6 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 7 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 22
    Or Record "Tracked Spins" layout = Number 23
    Or Record "Tracked Spins" layout = Number 24
    begin
        put 7 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 8 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 25
    Or Record "Tracked Spins" layout = Number 26
    Or Record "Tracked Spins" layout = Number 27
    begin
        put 8 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 9 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 28
    Or Record "Tracked Spins" layout = Number 29
    Or Record "Tracked Spins" layout = Number 30
    begin
        put 9 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 10 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 31
    Or Record "Tracked Spins" layout = Number 32
    Or Record "Tracked Spins" layout = Number 33
    begin
        put 10 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
        put 11 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
    
    While Record "Tracked Spins" layout = Number 34
    Or Record "Tracked Spins" layout = Number 35
    Or Record "Tracked Spins" layout = Number 36
    begin
        put 11 to Record "Line (Double Street) Layout" Data index;
        Add 1 to Record "Line (Double Street) Layout" data;
    end
end

method "Track Spins"
begin
    While Number 0 has hit each time
    Or Number 00 has hit each time
    begin
        Return;
    end
    Else
    begin
        add 1 to Record "Tracked Spins" Layout index;
        Copy last Number to Record "Tracked Spins" layout;
        Add 1 on Record "Total Tracked Spins" data;

        if Record "Tracked Spins" Layout index>6 then
        begin
            Move List Up by 1 to Record "Tracked Spins" Layout;
            Set Max Record "Tracked Spins" Layout index;
        end
    end
end

method "Initialize"
begin
    Clear All Records;

    set list [1,1,1,1,1,2,2,2,2,3,3,3,4,4,4,
              5,5,6,6,7,7,8,8,9,10,10,11,12,
              13,14,15,16,17,18,19,20] of Record "Progression" data;

    Copy list [Line(1-6),Line(4-9), Line(7-12),
               Line(10-15),Line(13-18),Line(16-21),
               Line(19-24),Line(22-27),Line(25-30),
               Line(28-33),Line(31-36)] to Record "Line (Double Street) Layout" layout;

    Clear Record "Tracked Spins" layout;
    Put 1 on Record "Current step in progression" data;
    Clear Record "Current step in progression" data;
    Clear Record "Starting Bankroll" data;
    Clear Record "Last Spin Number" data;
    Clear Record "Straight-up Number that we will target" data;
    Clear Record "Table Layout (1=European, 2=American)" data;

    Set Flag "1" to False;
    Put 1 to Record "Spins to track" data;
    Clear Record "Total Tracked Spins" data;
    Return;
end

method "Input Data"
begin
    Group
    begin
        Input Dropdown "What Table Layout do you want to use?
                  
                  1:=European Layout
                  2:=American Layout" to Record "Table Layout (1=European, 2=American)" data;

        Input Data "Enter your starting Bankroll." to Record "Starting Bankroll" data;
    end
    
    Put 100 % of Record "Starting Bankroll" data on Bankroll;

    While Record "Table Layout (1=European, 2=American)" data = 1
    begin
        Load Single Wheel;
    end
    Else
    begin
        Load Double Wheel;
    end
end