Welcome Guest
Log In | Register )
You last visited January 22, 2017, 11:19 pm
All times shown are
Eastern Time (GMT-5:00)

Modeling The P3

Topic closed. 23 replies. Last post 7 years ago by retxx.

Page 1 of 2
51
PrintE-mailLink
Avatar

United States
Member #7437
October 3, 2004
383 Posts
Offline
Posted: August 16, 2009, 5:57 pm - IP Logged

In this post we will propose a method for modeling any P3lottery. The method consists of determining which set(s) of 5 number wheelsgave the most winners over the last N draws. So, for example, if we say thatthe 10 day model for such and such a P3 lottery is 1-2-4-6-9, we would meanthat the 5 number wheel set , 1-2-4-6-9, produced the most winners over thelast 10 days. In this scenario, this model would be considered a short termmodel. Longer term models (15, 20, 25, or 50 days, for example) can be determinedas well and would have an analogous meaning. For example, if we said that thelong term model for such and such a P3 lottery is 0-2-4-6-7, and we chose 50days for the term, then we would mean that the 5 number wheel set, 0-2-4-6-7,produced the most winners over the past 50 days for this P3 lottery. As we willsee later on, for some time intervals there may be more than one model wheelset that produced a maximal amount of winners over the interval of time chosen.More about this later.

 

It should be clear that the reason for determining the modelwheel sets is that we would hope there’s still some spark left in the wheel setto produce a winner or two over the next 5 draws.  Additionally, for those who play“followers”(multi-state P3), determining a model for each state P3 beingplayed, may be helpful in determining which state P3 will hit next, becausethose states that show the same model, or nearly the same model, would be topcandidates for the next play.

 

Using our definition of the model, determining the 5 wheelsets would be quite heuristic using a pencil and paper, so we have to revert tocreating a software program to accomplish the goal.  Below the asterisks you will find the C codewhich, when compiled into an executable program, will produce the model wheelsets for any P3 lottery.

 

 

Here are the directions for compiling and using the code:

 

  1. Copy and paste the code to your editor and save as generateP3Model.c
  2. Create a draw file of at least 50 past draws for the P3 lottery you are playing and name the file drawsP3.txt. Latest draw on top, oldest draw on bottom, one draw per line, and no extra characters.
  3. Run your C compiler on generateP3Model.c to create3 the executable, gererateP3Model.exe
  4. Make sure the executable and the draw file are in the same working directory.
  5. To execute the program, click on the icon, generateP3Model.exe.
  6. You’ll be prompted for the term of the model you want to create. Choose any number of days up to 50.
  7. You’ll get display of the 5 number model wheel set and you will see how many winners were produced with this wheel set over the term, which you chose.

 

 

Let’s look at an example. We’ll take the NY Midday P308/06/09 and back, 50 draws, and we’ll determine the 50 day, 30 day, 25, dayand 10 day models. Here are the results:


Best Model -> 0-1-2-8-9                   

Wheeling with this model would have produced

17 winners over the past 50 draws 

 

Best Model -> 0-1-2-8-9

Wheeling with this model would have produced

13 winners over the past 30 draws

 

Best Model -> 0-1-2-8-9

Wheeling with this model would have produced

12 winners over the past 25 draws

 

Best Model -> 0-1-2-8-9

Best Model -> 0-1-5-8-9

Wheeling with any of these models would have

produced 4 winners over the past 10 draws

 

It looks like the 0-1-2-8-9 model has prevailed for all ofthe periods of time considered. For the 10 day model, we are seeing a new model0-1-5-8-9, in addition to 0-1-2-8-9. Here are the resulting draws over from 08/07/09 – 08/11/09:

 

438, 473, 331, 023, 202       

 

If we would have chosen to stick with the model 0-1-2-8-9,we would have snagged the 202 on 08/11/09.The model 0-1-5-8-9 came up with no hits.

 

We’ll update the draw file with these past 5 hits and createthe same models again to see if things might have changed. Here are the results.

 

Best Model -> 0-1-2-8-9

Wheeling with this model would have produced

17 winners over the past 50 draws

 

Best Model -> 0-1-2-8-9

Wheelingwith this model would have produced

13 winners over the past 30 draws

 

Best Model -> 0-1-2-8-9

Wheeling with this model would have produced

9 winners over the past 25 draws

 


Best Model -> 0-1-2-3-6

Best Model -> 0-1-2-3-7

Best Model -> 0-1-2-3-9

Best Model -> 1-3-4-7-8

Wheeling with any of these models would have

produced 4 winners over the past 10 draws

 

Again, we see that the model 0-1-2-8-9 has prevailed for allof the terms considered up to the past 25 days. It is only for the 10 day modelthat we are getting 4 different models, and the 0-1-2-8-9 is not includedamongst them. Here are the resulting next five draws:

 

099, 856, 595, 886, 847

 

By sticking with the model 0-1-2-8-9, we would have snaggedthe 099 on 08/16/09. Noticethat only one of the 4 of the 10 day models was able to produce a winner. Themodel is 1-3-4-7-8, and it got the 847 on 08/12/2009.

 

When more than one model comes up for a given term, it’s notclear which one to pick, and this could use some research.

 

Let’s update the draw file so that we can determine the samemodels for possible play from 08/17/09  - 08/21/09. Here are the results:

 

Best Model -> 0-1-2-8-9

Wheeling with this model would have produced

16 winners over the past 50 draws

 

Best Model -> 0-1-2-8-9

Wheeling with this model would have produced

10 winners over the past 30 draws

 

Best Model -> 0-1-2-3-9

Best Model -> 0-1-2-8-9

Best Model -> 0-1-5-8-9

Wheeling with any of these models would have

produced 8 winners over the past 25 draws

 

Best Model -> 0-1-2-3-9

Best Model -> 0-2-3-5-9

Best Model -> 0-5-6-8-9

Best Model -> 1-3-4-7-8

Wheeling with any of these models would have

produced 4 winners over the past 10 draws

 


We are seeing some new scenery here. Although 0-1-2-8-9 isin all of the models up to the past 25 days, it seems to be staling off. It hasnot produced as many winners as it has in the past sets of 50, 30 and 25 day periods.  Maybe it’s time to consider one of the newmodels that have been showing up, or maybe the 0-1-2-8-9 will surface again andproduce more winners. Also consider that 0-1-2-3-9 has appeared as one of themodels in the 25day and 10day models. Again, this area needs research, and anyprogress in determining which model to choose for the next five days worth ofplay will prove to be exciting.

 

Enjoy!

 

Feedback welcome.

 

jayemmar 

 

#include <math.h>

#include <stdlib.h>

#include <stdio.h>

 

int main()

{

int i, j , k, temp1, temp2, temp3, temp4, a1, a2, a3, a4,a, temp5, k1;

int drawCount, hit,  percent,  results, numSets = 0,hitNum = 50;

int  twoHitsa1 = 0,twoHitsa2 = 0, twoHitsa3 = 0, twoHitsa4 = 0;

FILE *in, *out, *out2;

int drawArray[300], knfArray[10];

int scoreArray01[210], scoreArray02[210],scoreArray12[210];

 

long int arrayOfFives[252] = {

1234,1235,1236,1237,1238,1239,1245,1246,1247,1248,1249,

1256,1257,1258,1259,1267,1268,1269,1278,1279,1289,1345,

1346,1347,1348,1349,1356,1357,1358,1359,1367,1368,1369,

1378,1379,1389,1456,1457,1458,1459,1467,1468,1469,1478,

1479,1489,1567,1568,1569,1578,1579,1589,1678,1679,1689,

1789,2345,2346,2347,2348,2349,2356,2357,2358,2359,2367,

2368,2369,2378,2379,2389,2456,2457,2458,2459,2467,2468,

2469,2478,2479,2489,2567,2568,2569,2578,2579,2589,2678,

2679,2689,2789,3456,3457,3458,3459,3467,3468,3469,3478,

3479,3489,3567,3568,3569,3578,3579,3589,3678,3679,3689,

3789,4567,4568,4569,4578,4579,4589,4678,4679,4689,4789,

5678,5679,5689,5789,6789,12345,12346,12347,12348,12349,12356,

12357,12358,12359,12367,12368,12369,12378,12379,12389,12456,12457,

12458,12459,12467,12468,12469,12478,12479,12489,12567,12568,12569,

12578,12579,12589,12678,12679,12689,12789,13456,13457,13458,13459,

13467,13468,13469,13478,13479,13489,13567,13568,13569,13578,13579,

13589,13678,13679,13689,13789,14567,14568,14569,14578,14579,14589,

14678,14679,14689,14789,15678,15679,15689,15789,16789,23456,23457,

23458,23459,23467,23468,23469,23478,23479,23489,23567,23568,23569,

23578,23579,23589,23678,23679,23689,23789,24567,24568,24569,24578,

24579,24589,24678,24679,24689,24789,25678,25679,25689,25789,26789,

34567,34568,34569,34578,34579,34589,34678,34679,34689,34789,35678,

35679,35689,35789,36789,45678,45679,45689,45789,46789,56789};

 

 

      /*

      **Open files

      */

        in = fopen("drawsP3.txt","r");

      out =fopen("out.txt", "w");

      if(in ==NULL)

      {

          printf("error in opening drawsP4.txt\n");

          getch();

          exit(0); 

      }

 

      for(i = 0; i< 10; i++)

      {

          knfArray[i] = 0; 

      }

 

  printf("Enter the number of days back you want to go to determinethe model\n");

  printf("Choose a number less than or equal to 50\n");

      scanf("%i", &k1);

 

      drawCount =k1;

      hitNum ==k1;

 

      i = 0;

      for(i = 0; i< 50; i++)

      {

          fscanf(in, "%d", &a);

          drawArray[i] = a;

      }

 

 

      results =0; 

start:

      hit =0;     

      for(i = 0; i< 210; i++)

      {    hit = 0;

            temp1= arrayOfFives[i]/10000;

            temp2= (arrayOfFives[i] - 10000*temp1)/1000;

            temp3=  (arrayOfFives[i] -10000*temp1 - 1000*temp2)/100;

            temp4= (arrayOfFives[i] - 10000*temp1 - 1000*temp2 - 100*temp3)/10;

            temp5= arrayOfFives[i] - 10000*temp1 - 1000*temp2 - 100*temp3 - 10*temp4;

            for(j= 0; j < drawCount; j++)

            {

                a =drawArray[j];           

                a1= a/100;

                a2= (a - 100*a1)/10;

                a3=  (a - 100*a1 - 10*a2);

               

               

                twoHitsa1 = 0;   

                twoHitsa2 = 0;   

                twoHitsa3 = 0;   

                if((a1 == temp1 || a1 == temp2 || a1 == temp3 || a1 == temp4

                    || a1 == temp4 || a1 == temp5))

                {

                    twoHitsa1++; 

                }

                if((a2 == temp1 || a2 == temp2 || a2 == temp3

                    || a2 == temp4 || a2 == temp5))

                {

                  twoHitsa2++;   

                }

                if((a3 == temp1 || a3 == temp2 || a3 == temp3 ||

                    a3 == temp4 || a3 == temp5))

                {

                  twoHitsa3++;   

                }

              if(twoHitsa1 + twoHitsa2 + twoHitsa3    == 3 )

              {

                  hit++;

              }

                           

            }

             

           

            scoreArray01[i] = hit;

             

            if(hit== hitNum)

            {

                printf("Best Model ->%i-%i-%i-%i-%i\n",

                        temp1,  temp2, temp3, temp4,temp5);

                fprintf(out, "Best Model -> %i-%i-%i-%i-%i\n",

                        temp1,  temp2, temp3, temp4,temp5);

                knfArray[temp1]++;       

                knfArray[temp2]++;       

                knfArray[temp3]++;       

                knfArray[temp4]++;       

                numSets++;       

                results = 1;

            }

               

                 

 

      } 

 

 

      if(results== 0)

      {

          hitNum--;

          gotostart;       

      }

 

 

      if(numSets> 1)

      {

          printf("Wheeling with any of these models would have\n");

          printf("produced %i winners over the past %i draws\n", hitNum,k1);

          fprintf(out, "Wheeling with any of these models would have\n");

          fprintf(out, "produced %i winners over the past %i draws\n",hitNum, k1);

       

      }

 

      if(numSets== 1)

      {

          printf("Wheeling with this model would have produced\n");

          printf("%i winners over the past %i draws\n", hitNum, k1);

          fprintf(out, "Wheeling with this model would have produced\n");

          fprintf(out, "%i winners over the past %i draws\n", hitNum,k1);

       

      }

 

      printf("***Enter any key to exit***\n");

      getch(); 

 

      close(in);

 

 

 

}

    Shawn67's avatar - Lottery-061.jpg

    United States
    Member #45970
    September 1, 2006
    4763 Posts
    Offline
    Posted: August 16, 2009, 6:42 pm - IP Logged

    Not sure that I understand the code, but I like the idea and thinking behind it. I've thought about something like this before, but as someone who does almost everything using pencil and paper, this seems like a huge pain to do manually. Hopefully someone with more knowledge and experience could explain a pencil and paper method for this approach that would be easy for everyone to understand.

      ace649's avatar - Lottery-019.jpg

      Canada
      Member #66533
      October 28, 2008
      170 Posts
      Offline
      Posted: August 16, 2009, 6:57 pm - IP Logged

      Impresive idea JAY.

        Stalyn's avatar - 260g8d0
        Brooklyn, NY
        United States
        Member #26302
        November 16, 2005
        594 Posts
        Offline
        Posted: August 16, 2009, 7:08 pm - IP Logged

        Thank you jay, will test this when i get some free time.

          Avatar

          United States
          Member #7437
          October 3, 2004
          383 Posts
          Offline
          Posted: August 17, 2009, 11:26 am - IP Logged

          Here are some models that were determined for the Ga Midday and Eve P3.

           

          Ga Midday P3 -> 50day model - 0-2-3-5-9; 30day model - 0-1-5-7-8, 0-4-5-8-9,and 0-5-7-8-9; 25day model -0-4-5-8-9; 10day model 0-3-4-5-8, 0-4-5-6-8, and 0-4-5-7-8

          Ga Eve P3 -> 50day Model - 2-3-4-5-9; 30day model - 2-3-5-6-9;

          25day model - 0-2-5-6-9, 2-3-4-5-9, and 2-3-5-6-9; 10day model - 0-2-3-5-9,

          0-3-5-6-9, 0-3-5-7-9, 0-3-5-8-9, 2-3-4-5-9, and 2-3-5-6-9

          We can see two things from here:

          1. The Midday and Eve P3s are quite different, because their models are not similar.

          2. It's not clear which model to stick with for the Midday P3 over the next five days. I would keep my eye on the long term model and the 25day model.

          3. For the Eve P3 the model 2-3-4-5-9 shows itself in three places. I would watch it over the next 5 days.

           

          jayemmar

            mej023's avatar - avatar 5857.gif
            Greencastle, Indiana
            United States
            Member #74738
            May 19, 2009
            102 Posts
            Offline
            Posted: August 17, 2009, 1:27 pm - IP Logged

            I was wondering if it would be a good idea to switch out a couple of the numbers every other day or so.

            For example, I have noticed that in the Indiana daily that a 0 or 1 shows up constantly with a draw or two gap in between hits of those digits. The same thing for the numbers 7, 8 or 9. The kicker is that the two groups seem to alternate, so one day playing 0-1-2-8-9 will result in a hit but not the next day. The next day the grouping might be 4-5-7-8-9.

            I guess, I am wondering if the time period for the models is shorter than five days or that there might be four models to use in a five day period.

              Avatar

              United States
              Member #7437
              October 3, 2004
              383 Posts
              Offline
              Posted: August 17, 2009, 1:39 pm - IP Logged

              Not a bad idea, but how do you keep the cost down?

               

              jayemmar

                Avatar

                United States
                Member #7437
                October 3, 2004
                383 Posts
                Offline
                Posted: August 17, 2009, 1:45 pm - IP Logged

                I'm real sorry for this, but there's a mistake in the code I supplied to create the models that were described in the Post. Below the asterisks you'll find the correct code.

                The error did not allow for the complete coverage of the 252 possible sets of 5 wheels. Only 210 of the 252 were considered. 

                 

                jayemmar

                ********************************************************************

                #include <math.h>
                #include <stdlib.h>
                #include <stdio.h>

                int main()
                {
                int i, j , k, temp1, temp2, temp3, temp4, a1, a2, a3, a4, a, temp5, k1;
                int drawCount, hit,  percent,  results, numSets = 0, hitNum = 50;
                int  twoHitsa1 = 0, twoHitsa2 = 0, twoHitsa3 = 0, twoHitsa4 = 0;
                FILE *in, *out, *out2;
                int drawArray[50], knfArray[10];
                int scoreArray01[210], scoreArray02[210], scoreArray12[210];

                long int arrayOfFives[252] = {
                1234,1235,1236,1237,1238,1239,1245,1246,1247,1248,1249,
                1256,1257,1258,1259,1267,1268,1269,1278,1279,1289,1345,
                1346,1347,1348,1349,1356,1357,1358,1359,1367,1368,1369,
                1378,1379,1389,1456,1457,1458,1459,1467,1468,1469,1478,
                1479,1489,1567,1568,1569,1578,1579,1589,1678,1679,1689,
                1789,2345,2346,2347,2348,2349,2356,2357,2358,2359,2367,
                2368,2369,2378,2379,2389,2456,2457,2458,2459,2467,2468,
                2469,2478,2479,2489,2567,2568,2569,2578,2579,2589,2678,
                2679,2689,2789,3456,3457,3458,3459,3467,3468,3469,3478,
                3479,3489,3567,3568,3569,3578,3579,3589,3678,3679,3689,
                3789,4567,4568,4569,4578,4579,4589,4678,4679,4689,4789,
                5678,5679,5689,5789,6789,12345,12346,12347,12348,12349,12356,
                12357,12358,12359,12367,12368,12369,12378,12379,12389,12456,12457,
                12458,12459,12467,12468,12469,12478,12479,12489,12567,12568,12569,
                12578,12579,12589,12678,12679,12689,12789,13456,13457,13458,13459,
                13467,13468,13469,13478,13479,13489,13567,13568,13569,13578,13579,
                13589,13678,13679,13689,13789,14567,14568,14569,14578,14579,14589,
                14678,14679,14689,14789,15678,15679,15689,15789,16789,23456,23457,
                23458,23459,23467,23468,23469,23478,23479,23489,23567,23568,23569,
                23578,23579,23589,23678,23679,23689,23789,24567,24568,24569,24578,
                24579,24589,24678,24679,24689,24789,25678,25679,25689,25789,26789,
                34567,34568,34569,34578,34579,34589,34678,34679,34689,34789,35678,
                35679,35689,35789,36789,45678,45679,45689,45789,46789,56789};


                      /*
                      **Open files
                      */
                       in = fopen("drawsP3.txt", "r");
                       out = fopen("allSelectionsP3.txt", "w");
                       out2 = fopen("hitStatsP3.txt", "w");
                       if(in == NULL)
                       {
                          printf("error in opening drawsP4.txt\n");
                          getch();
                          exit(0);   
                       }

                       for(i = 0; i < 10; i++)
                       {
                          knfArray[i] = 0;   
                       }

                       printf("Enter the number of days back you want to go to determine the model\n");
                       printf("Choose a number less than or equal to 50\n");
                       scanf("%i", &k1);

                       drawCount = k1;
                       hitNum == k1;

                       i = 0;
                       for(i = 0; i < 50; i++)
                       {
                           fscanf(in, "%d", &a);
                           drawArray[i] = a;
                       }


                       results = 0;  
                start:
                       hit = 0;     
                       for(i = 0; i < 252; i++)
                       {     hit = 0;
                             temp1 = arrayOfFives[i]/10000;
                             temp2 = (arrayOfFives[i] - 10000*temp1)/1000;
                             temp3=  (arrayOfFives[i] - 10000*temp1 - 1000*temp2)/100;
                             temp4 = (arrayOfFives[i] - 10000*temp1 - 1000*temp2 - 100*temp3)/10;
                             temp5 = arrayOfFives[i] - 10000*temp1 - 1000*temp2 - 100*temp3 - 10*temp4;
                             for(j = 0; j < drawCount; j++)
                             {
                                a = drawArray[j];             
                                a1 = a/100;
                                a2 = (a - 100*a1)/10;
                                a3=  (a - 100*a1 - 10*a2);
                               
                               
                                twoHitsa1 = 0;   
                                twoHitsa2 = 0;   
                                twoHitsa3 = 0;   
                                if((a1 == temp1 || a1 == temp2 || a1 == temp3 || a1 == temp4
                                    || a1 == temp4 || a1 == temp5))
                                {
                                    twoHitsa1++;   
                                }
                                if((a2 == temp1 || a2 == temp2 || a2 == temp3
                                    || a2 == temp4 || a2 == temp5))
                                {
                                   twoHitsa2++;   
                                }
                                if((a3 == temp1 || a3 == temp2 || a3 == temp3 ||
                                    a3 == temp4 || a3 == temp5))
                                {
                                   twoHitsa3++;   
                                }
                               if(twoHitsa1 + twoHitsa2 + twoHitsa3    == 3 )
                               {
                                  hit++;
                               }
                                             
                             }
                             
                             
                             scoreArray01[i] = hit;
                             
                             if(hit == hitNum)
                             {
                                printf("Best Model -> %i-%i-%i-%i-%i\n",
                                        temp1,  temp2, temp3, temp4, temp5);
                                knfArray[temp1]++;       
                                knfArray[temp2]++;       
                                knfArray[temp3]++;       
                                knfArray[temp4]++;       
                                numSets++;       
                                results = 1;
                             }
                               
                                   

                       }  


                       if(results == 0)
                       {
                          hitNum--;
                          goto start;       
                       }


                       if(numSets > 1)
                       {
                          printf("Wheeling with any of these models would have\n");
                          printf("produced %i winners over the past %i draws\n", hitNum, k1);
                       
                       }

                       if(numSets == 1)
                       {
                          printf("Wheeling with this model would have produced\n");
                          printf("%i winners over the past %i draws\n", hitNum, k1);
                       
                       }

                       printf("***Enter any key to exit***\n");
                       getch();  

                       close(in);



                }

                  mej023's avatar - avatar 5857.gif
                  Greencastle, Indiana
                  United States
                  Member #74738
                  May 19, 2009
                  102 Posts
                  Offline
                  Posted: August 17, 2009, 1:52 pm - IP Logged

                  I guess one way would be to develop some sort of indicator that would point to the appropriate model.

                  Maybe you find 5 models that account for 70% or more hits in all of the past draws. Then figure out what model to use on a particular day.

                   

                  Let's say the last draw was 756. I have two models - one is 4-5-6-8-9 and the other is 1-2-4-5-7. I would probably choose the second model just because the next number drawn (in general) will probably be lower than 756.

                   

                  You have a really interesting idea. The only issue I ever had with a five digit model is that you end up not being able to make a profit long term while keeping your costs down.

                    Avatar

                    United States
                    Member #7437
                    October 3, 2004
                    383 Posts
                    Offline
                    Posted: August 17, 2009, 2:32 pm - IP Logged

                    You know what happens when you hit one nail -  another one pops up. It seems that the correction to the last error has caused another. Please bear with me until all errors are determined and fixed. I'll keep you posted.

                     

                    jayemmar

                      Avatar

                      United States
                      Member #7437
                      October 3, 2004
                      383 Posts
                      Offline
                      Posted: August 17, 2009, 3:19 pm - IP Logged

                      OK. I think we are back on track. Below the asterisks, you'll find the corrected code for modeling the P3.

                       

                      Thanks for your patience.

                       

                      jayemmar

                      ***********************************************************

                      #include <math.h>
                      #include <stdlib.h>
                      #include <stdio.h>

                      int main()
                      {
                      int i, j , k, temp1, temp2, temp3, temp4, a1, a2, a3, a4, a, temp5, k1;
                      int drawCount, hit,  percent,  results, numSets = 0, hitNum = 50;
                      int  twoHitsa1 = 0, twoHitsa2 = 0, twoHitsa3 = 0, twoHitsa4 = 0;
                      FILE *in, *out, *out2;
                      int drawArray[50], knfArray[10];
                      int scoreArray01[210], scoreArray02[210], scoreArray12[210];

                      long int arrayOfFives[252] = {
                      1234,1235,1236,1237,1238,1239,1245,1246,1247,1248,1249,
                      1256,1257,1258,1259,1267,1268,1269,1278,1279,1289,1345,
                      1346,1347,1348,1349,1356,1357,1358,1359,1367,1368,1369,
                      1378,1379,1389,1456,1457,1458,1459,1467,1468,1469,1478,
                      1479,1489,1567,1568,1569,1578,1579,1589,1678,1679,1689,
                      1789,2345,2346,2347,2348,2349,2356,2357,2358,2359,2367,
                      2368,2369,2378,2379,2389,2456,2457,2458,2459,2467,2468,
                      2469,2478,2479,2489,2567,2568,2569,2578,2579,2589,2678,
                      2679,2689,2789,3456,3457,3458,3459,3467,3468,3469,3478,
                      3479,3489,3567,3568,3569,3578,3579,3589,3678,3679,3689,
                      3789,4567,4568,4569,4578,4579,4589,4678,4679,4689,4789,
                      5678,5679,5689,5789,6789,12345,12346,12347,12348,12349,12356,
                      12357,12358,12359,12367,12368,12369,12378,12379,12389,12456,12457,
                      12458,12459,12467,12468,12469,12478,12479,12489,12567,12568,12569,
                      12578,12579,12589,12678,12679,12689,12789,13456,13457,13458,13459,
                      13467,13468,13469,13478,13479,13489,13567,13568,13569,13578,13579,
                      13589,13678,13679,13689,13789,14567,14568,14569,14578,14579,14589,
                      14678,14679,14689,14789,15678,15679,15689,15789,16789,23456,23457,
                      23458,23459,23467,23468,23469,23478,23479,23489,23567,23568,23569,
                      23578,23579,23589,23678,23679,23689,23789,24567,24568,24569,24578,
                      24579,24589,24678,24679,24689,24789,25678,25679,25689,25789,26789,
                      34567,34568,34569,34578,34579,34589,34678,34679,34689,34789,35678,
                      35679,35689,35789,36789,45678,45679,45689,45789,46789,56789};


                            /*
                            **Open files
                            */
                             in = fopen("drawsP3.txt", "r");
                             out = fopen("allSelectionsP3.txt", "w");
                             out2 = fopen("hitStatsP3.txt", "w");
                             if(in == NULL)
                             {
                                printf("error in opening drawsP4.txt\n");
                                getch();
                                exit(0);   
                             }

                             for(i = 0; i < 10; i++)
                             {
                                knfArray[i] = 0;   
                             }

                             printf("Enter the number of days back you want to go to determine the model\n");
                             printf("Choose a number less than or equal to 50\n");
                             scanf("%i", &k1);

                             drawCount = k1;
                             hitNum = k1;

                             i = 0;
                             for(i = 0; i < 50; i++)
                             {
                                 fscanf(in, "%d", &a);
                                 drawArray[i] = a;
                             }

                             numSets = 0;
                             results = 0;
                      start:
                             hit = 0;     
                             for(i = 0; i < 252; i++)
                             {     hit = 0;
                                   temp1 = arrayOfFives[i]/10000;
                                   temp2 = (arrayOfFives[i] - 10000*temp1)/1000;
                                   temp3=  (arrayOfFives[i] - 10000*temp1 - 1000*temp2)/100;
                                   temp4 = (arrayOfFives[i] - 10000*temp1 - 1000*temp2 - 100*temp3)/10;
                                   temp5 = arrayOfFives[i] - 10000*temp1 - 1000*temp2 - 100*temp3 - 10*temp4;
                                   for(j = 0; j < drawCount; j++)             
                                   {
                                      a = drawArray[j];
                                      a1 = a/100;
                                      a2 = (a - 100*a1)/10;
                                      a3=  (a - 100*a1 - 10*a2);
                                   
                                     
                                      twoHitsa1 = 0;   
                                      twoHitsa2 = 0;   
                                      twoHitsa3 = 0;   
                                      if((a1 == temp1 || a1 == temp2 || a1 == temp3 || a1 == temp4
                                          || a1 == temp4 || a1 == temp5))
                                      {
                                          twoHitsa1++;   
                                      }
                                      if((a2 == temp1 || a2 == temp2 || a2 == temp3
                                          || a2 == temp4 || a2 == temp5))
                                      {
                                         twoHitsa2++;
                                      }
                                      if((a3 == temp1 || a3 == temp2 || a3 == temp3 ||
                                          a3 == temp4 || a3 == temp5))
                                      {
                                         twoHitsa3++;   
                                      }
                                     if(twoHitsa1 + twoHitsa2 + twoHitsa3    == 3 )
                                     {
                                        hit++;
                                       
                                     }
                                                                 
                                   }
                                   
                                   
                                   
                                   if(hit == hitNum)
                                   {
                                      printf("Best Model -> %i-%i-%i-%i-%i\n",
                                              temp1,  temp2, temp3, temp4, temp5);
                                      knfArray[temp1]++;       
                                      knfArray[temp2]++;       
                                      knfArray[temp3]++;       
                                      knfArray[temp4]++;       
                                      numSets++;       
                                      results = 1;
                                   }
                                     
                                         

                             }  


                             if(results == 0)
                             {
                                hitNum--;
                                goto start;       
                             }


                             if(numSets > 1)
                             {
                                printf("Wheeling with any of these models would have\n");
                                printf("produced %i winners over the past %i draws\n", hitNum, k1);
                             
                             }

                             if(numSets == 1)
                             {
                                printf("Wheeling with this model would have produced\n");
                                printf("%i winners over the past %i draws\n", hitNum, k1);
                             
                             }

                             printf("***Enter any key to exit***\n");
                             getch();  

                             close(in);



                      }

                        Avatar

                        United States
                        Member #7437
                        October 3, 2004
                        383 Posts
                        Offline
                        Posted: August 17, 2009, 3:35 pm - IP Logged

                        Hi mej023:

                         

                        This is an interesting idea and would require some thought.

                        If you run the model program I wrote, you'll notice that over any term chosen, the model set(s) that comes up always shows quite a generous profit over the selected term. That's why I chose a 5 number model.

                         

                        jayemmar

                          Avatar

                          United States
                          Member #7437
                          October 3, 2004
                          383 Posts
                          Offline
                          Posted: August 17, 2009, 4:07 pm - IP Logged

                          Here's something interesting to consider when creating models. A 10day model of the NY Midday P3 gave the following results, using 50 past draws starting from 08/12/09 and back:

                           

                          Best Model -> 1-3-4-7-8

                          Wheeling with this model would have produced

                          5 winners over the past 10 draws

                          These last 10 days of play provided quite a hefty win. Let's analyze this. The 5 number wheel set, 1-3-4-7-8, gave 50% winners over the last 10 days. Ordinarily, given any 5 number wheel set, the probability of winning with it over the long run is 12.5%. This means we got 4 times the expected result with our 5 number wheel set . On the other side of the coin, the complement 5 number set, 0-2-5-6-9, went 5 out of 10 draws without getting a single digit.  The probability of missing all three digits with any one given 5 number set, over the long run, is also 12.5%. This means the 5 number set, 0-2-5-6-9 is 4 times overdue to produce at least one digit

                          Conclusion: The number set 0-2-5-6-9 may be a good candidate to choose to provide at least one digit within the next 5 draws. Definitely a good key number set, and good for maybe even a pair, or all three digits.

                          Here are the results of the NY Midday P3 from 08/13/09 - 08/17/09

                          496, 099, 856, 595, 886

                          Conclusion: You really have to consider both sides of the coin.

                           

                          jayemmar

                           

                          jayemmar

                            mej023's avatar - avatar 5857.gif
                            Greencastle, Indiana
                            United States
                            Member #74738
                            May 19, 2009
                            102 Posts
                            Offline
                            Posted: August 17, 2009, 4:11 pm - IP Logged

                            Hi jayemmar -

                             

                            You have probably been asked this before. Is there any way you could compile this to an executable file that people could download?

                            With the 5 digit models, when we wheel those then we get 35 boxed numbers and if we filter out triples then we get 30 boxed numbers. Is this correct?

                             

                            To really test the models, would you take a draw file of say 100 draws and then run the model program on the first 50 draws to get the model that produces the most hits for the first 50 draws and then test that model against the next 50 draws to see how many hits it would produce?

                            Is that what you are doing? I don't mean to be dense about this, I am trying to understand it better as it sounds like a good system.

                              Avatar

                              United States
                              Member #7437
                              October 3, 2004
                              383 Posts
                              Offline
                              Posted: August 17, 2009, 4:35 pm - IP Logged

                              I'm posting this again, becase I did not see the answer I posted to the above Post.

                              You have probably been asked this before. Is there any way you could compile this to an executable file that people could download?

                               

                              If someone could explain the mechanics of doing this, I would agree.

                               

                              When boxing a 5 wheel number set there are 30 numbers minus the triples.

                               

                              jayemmar