By |
Another small step forward |
Windoor 7/1/2011 2:40:11 PM | With a lot of help from Harry (Hcap) I have finally be able to indentify the horses that make up one of my spot plays. If you doing anything with Excel and get stuck, I highly recommend him. He does not work for free, but is very reasonable and knows his way around horse racing.
So now I have a file in Excel that lists all horses that qualify for this spot play.
I have the date, race ID, program number of the horse, and the horse name among other things.
How can I get these horses (and only these horses) in a quick index file to use with J/Cap? A layman's thoughts:
Can I just get them in a format that will run through the J/Capper file builder tool again? Place them in a different folder and build a database from that?
Assign a number 1 rank in a field J/Cap recognizes?
Understand that these horses are from HDW files and are already in the J/Cap database.
Maybe the easiest way would be, to just run a search for these horses in an existing J/Cap database and have them placed in a quick index file for further study.
Looks like an add on. Jeff, how doable is that?
Regards
Windoor.
~Edited by: Windoor on: 7/1/2011 at: 2:40:11 PM~
|
Windoor 7/1/2011 5:45:35 PM | If I were to modify the .XRD files (scratch all who did not qualify for spot play) and built a database using these .XRD files, would that work?
I think I can do that. At least it will give me a project for the weekend.
Regards,
Windoor
|
ryesteve 7/2/2011 10:14:33 AM | I don't think you want to mess with the xrd files. You might need them. If you're going to be manually editing, why not just take the playlist file, make a copy of it, and delete the horses from THAT file?
|
jeff 7/2/2011 12:39:08 PM | Windoor, Glad to hear you are making some progress.
Creating a routine to do this (outside of JCapper) (using VBA code inside of Excel) isn't rocket science.
If I were writing such a routine and adding it to JCapper I would write it out as "psuedocode" on a whiteboard first.
It would look something like this:
We have two lists:
1. A list of horses (text file) from a 3rd party app that "fit a given set of criteria" not part of the JCapper factor set.
2. A list of all horses (bigger text file or table) from JCapper spanning a (as your database grows) significant time horizon.
The routine's job as I see it is:
1. Load List 1 above into an array.
2. Load List 2 above into an array.
3. Iterate through the records in List 2 one at a time. Each time a new record is pulled up, do the following:
a. Iterate through the array records in List 1 above one at a time. Each time a new List 1 record is in front of you do the following:
b. Compare the common attributes from both records: Track, date, race, horsename. If the common attributes match do the following:
c. Add the current record from List 2 to a third array (which contains a list of matching records from List 1 and List 2.)
Pull up the next record from List 1 and look for a match. When all records from List 1 have been looked at, pull up the next record from List 2 and repeat.
4. Final step: Write all of the array items in List 3 to disc. (This is your quick index file.) If you use the same number of fields found in a pl_profile.txt file and name the file so that the first 3 characters of the file name are "pl_" and the file extension is ".txt" (without the quotes) the Data Window will handle this new file without a problem.
I'm thinking if you show Harry what I've posted above, he should be able to make it happen for you inside of Excel.
-jp
.
|
Windoor 7/2/2011 5:45:24 PM | --quote:"I don't think you want to mess with the xrd files. You might need them. If you're going to be manually editing, why not just take the playlist file, make a copy of it, and delete the horses from THAT file? " --end quote
The idea is to get these horses re-ranked by the J/capper build routine. Either by only having these horses in the .JCP file or eliminating the others in the race (.xrd file) I would do this with a copy of the files and build a separate database from them.
It would have to be automated,(way too many to do by hand) but I though I would take a handful of files and do it manually, just to see if the file builder would accept them.
Think of it as finding your contenders in a race. Some of the time it's just one horse, but other times there are 2,3,4 or more in the race. Maybe you pass, look for value, or try to separate them with some rank numbers. What to do?
If you re-rank the contenders, and put them through all that J/Cap has to offer, you might just find something that would point you to the right horse (most of the time) at a good odd and percentage.
I'm working with a 40% win rate for contenders at a good odd.I can afford to give up 10 percentage points, if the odd does not change much, to get it down to 1 play per race.
An interesting puzzle, I just wish I knew more about the tools I'm working with.
Regards,
Windoor.
|
Windoor 7/2/2011 5:49:14 PM | Jeff,
I sent your post to Harry. I hope he understands it better than I do.
Old pen and paper guy here. Learning slowly.
Thanks for the reply.
Regards,
Windoor
|
jeff 7/2/2011 6:20:30 PM | Windoor,
A suggestion for helping Harry create an array that holds all of the fields (and only the exact number of fields) found in a pl_profile.txt file:
1. Create a test folder
2. Add one .jcp file and one matching .xrd file to that folder.
3. Build a database from scratch in Mode 1 on that folder.
The resulting pl_profile.txt file will have all fields populated for a single race card file.
The resulting pl_profile.txt file will be small enough so that you can attach it to an email and mail it to Harry.
Harry can then import the file into Excel 07 and will be able to SEE (and easily count) the data fields... and from that do the programming to create the needed arrays.
-jp
.
|
Windoor 7/4/2011 11:44:14 AM | Ok, Thanks.
Question:
When does J/Capper rank the horses? Is this not done when building the database? Or on the fly depending on the query?
If done during the build routine, how will I be able to run a key factor report on these horse only, If I removed the number 1 ranked horse.
Does it automatically update the rankings as horses are removed? Even if I don't run a scratch routine.
A flow chart or better understanding on how these things work, would have been helpful here.
Regards,
Windoor
|
jeff 7/4/2011 2:08:28 PM | --Quote: | "When does J/Capper rank the horses? Is this not done when building the database? Or on the fly depending on the query?"
--End Quote. |
Factor ranking and gapping of horses within each race takes place towards the end of "number crunching."
Number crunching takes place during the following two routines:
1. Calc Races
2. Build Database
--Quote: | "Does it automatically update the rankings as horses are removed? Even if I don't run a scratch routine. "
--End Quote. |
Scratched horses will definitely impact factor rank and gap within each field. The effect will vary greatly (or sometimes not at all) from race to race. The degree of impact depends on the makeup of each race as well as which horse(s) are scratched.
--Quote: | "Even if I don't run a scratch routine."
--End Quote. |
It depends HOW you remove horses. On race day you could remove them by one of two means:
1. Add horses you want to remove to the scratches.txt file on the current active data folder. (Hint: double click the file to pop it open in Notepad to see the file format.)
2. Remove individual horses from the .JCP file by manually (or 3rd party app) editing the file.
If you are looking to remove horses from fields prior to running a Build Database routine, use the following method:
Remove individual horses from the .JCP file by manually (or 3rd party app) editing the file.
I hope I managed to lay that out in a way that makes sense.
-jp
.
~Edited by: jeff on: 7/4/2011 at: 2:08:28 PM~
|
jeff 7/4/2011 2:29:13 PM | --Quote: | "If done during the build routine, how will I be able to run a key factor report on these horse only, If I removed the number 1 ranked horse."
--End Quote. |
You won't... at least not a true Key Factors Report. If you remove the top ranked horse for a factor you would be "tricking" the program into displaying the 2nd best horse as the top for those races where you removed the top horse.
Suggestion:
In my opinion you might be better served in the long run by not attempting to remove horses from data files and/or races.
Instead, work towards getting horses flagged by your (outside of JCapper) method into a quick index file or a starterhistory table.
If you accomplish that after a build database routine has been run with ALL horses in the race present in the database -- you will then be able to analyze your horses in terms of rank and gap for JCapper factors vs. ALL horses present in each race.
In my opinion that pathway is more likely to lead you to better play or pass decisions on your horses than the pathway of removing horses from races possibly can.
Hope I managed to communicate that in a way that makes sense.
-jp
.
~Edited by: jeff on: 7/4/2011 at: 2:29:13 PM~
|
Windoor 7/4/2011 9:57:07 PM | I very much appreciate your well though out answer and I think I can work with it from here.
As long as Harry does the heavy lifting, it looks like this will work just fine, if a bit convoluted.
Thank you.
As far as play pass decisions go, there really isn’t any, unless odds are too low.
These particular groups of horses are pattern based horses that have passed a form cycle test. They either qualify or don’t and are not ranked with any other horses in the race.
I know this goes against conventional wisdom, but it has proven effective to me over a great deal of time. My records go back to 1996. I just needed to play the right kind of races and tweak my form cycle test a bit to make it work.
I have tried before to rank against each other, but was unsuccessful. I could raise the win percent, but lose ROI do to missing out on the longer odd horses.
That is until now. I have this great software program that has a nearly unlimited amount of combinations of filters and factors that just may let me have the best of both worlds. It’s called J/Capper and I highly recommend you try it:)
Regards,
Windoor
DIVIDE BY “SEVEN”
|
Windoor 7/7/2011 6:01:53 PM | Jeff,
Ran into a stag.
Regardless if I change anything in the PL_Profile.txt file or not.
When I try to save it in Excel (I have 2010) J/Cap will not open the saved file.
Saved as Text (tab delimited) (*.txt) ( I tried them all)
I get this error:
“This Index File is an older version and does not contain the correct number of fields.
Try rebuilding your database or quick index files”
I didn't change the number of fields when I opened it, so I'm not sure how to proceed.
Any advice?
Regards,
Windoor.
|
Windoor 7/7/2011 8:52:42 PM | Opened the PL_profile.txt file in notepad, took a look and saved as is.
Worked fined in J/Cap
Opened again in notepad and deleted a record. Save as before. J/Cap will not open it.
Nothing is easy.
Windoor.
|
ryesteve 7/8/2011 9:04:24 PM | If you open the file in notepad, each record wraps over many lines. If I had to guess, I'd say that when you're trying to delete a record, you're only deleting a partial record which is leaving behind a "short" record when JCapper tries to read it.
|
Windoor 7/9/2011 10:45:32 AM | I tried a couple of different times, and was very careful as to where one record stopped and another started within notepad, so I don't think that is it.
At least as looking at the first line of first record and matching up with 2nd record.
I tried PL_File.txt, .JCP and .xrd files and all do the same thing.
J/Cap will ignore the file or give an error.
The only thing that will work is if I scratch all but my contenders within J/cap and recalculate from there. This would work for live play, but does nothing for research.
Looks like another "good idea" going down the drain at the moment:)
Regards,
Windoor
|
Windoor 7/9/2011 3:31:41 PM | When I open and save the PL_ file in Excel and try to save it, it does not save in the same format.
I either get too many quotations marks as in "" or none.
Still, that doesn't explain why a deleted record in Notepad will not work.
Ignorance is not Bliss. Sheeesssh!!!!
Regards,
Windoor
|
jeff 7/9/2011 8:27:28 PM | --Quote: | "If you open the file in notepad, each record wraps over many lines. If I had to guess, I'd say that when you're trying to delete a record, you're only deleting a partial record which is leaving behind a "short" record when JCapper tries to read it."
--End Quote. |
Bingo.
Actually Notepad would be about the LAST tool for the job I'd consider for editing a pl_profile.txt file... Knowing the level of detail involved, the lack of precision and degree of difficulty to be had editing that file with Notepad is significant. Someone unfamiliar with the file would probably find it easier to perform surgery with a brick. Yikes!
(Hint: If a text editor is what you want to use, you might try EditPad Lite.)
(Further hint: Every record in the file starts out with an integer representing your data vendor immediately followed by a horse name. Each record in the file ends with an end of record marker.
Each end of record marker (in Edit Pad Lite) looks like the following screenshot: http://www.jcapper.com/messageboard/avatars/editpadlite_07092011.jpg
If you are going to manually edit the file, you have to remove all of the characters starting with the data vendor integer just before the horse name and ending with the end of record marker (inclusive.) Remove even one character too little (or too many) and you'll hose the file.
(By the way, I am able to successfully edit the file using Edit Pad Lite and get the saved/edited file to load and run in the Data Window.)
Excel...
You CAN edit the file using Excel. But if you import the file into Excel you need to be extremely careful to keep the data types of the various data fields in the pl_profile.txt file as is.
For example, Excel has a tendency to auto coerce numbers separated by dash characters into dates (among other things.)
You need to prevent that from happening (for all of the data fields) before saving the file... otherwise you save the file in an altered/unuseable format.
If I absolutely HAD to use Excel to edit the file, I'd bypass completely the idea of importing the file.
If you decide to use Excel, here's the right tool for the job:
Instead of importing the file into Excel, write a VBA code based function inside of Excel... use arrays in your code... pretty much as described above in the 4th post down from the top of this thread.
A field map for the latest version pl_profile.txt file can be found in a sticky thread at the top of the private section of this board.
Hint: You'll need to be logged into the board in order to read the above mentioned thread. Once you get there, scroll all the way to the bottom and then scroll up. The spec for that file was last modified on 2-25-2010 (I haven't needed or wanted to change it since then) and can be found in the post I made on 3-08-2010.
~Edited by: jeff on: 7/9/2011 at: 8:27:28 PM~
|
Windoor 7/10/2011 8:17:16 AM | Ok, that clears up some things. Thank-you
Using notepad to delete a record was just an experiment to set some parameters as to were the overall problem was.
I did indeed make a mistake when attempting to eliminate a record using notepad. It can be done, (As I have now done so successfully) but Editpad Lite now resides on my pc as the default program for text files. Thanks again.
I do hope I never have to use it to accomplish my goal here.
The rest I forwarded to Harry. If he can not get the process automated, it will just have to go on the scrap heap of other good ideas that are unattainable to me at the present time.
It will have lots of company.
Regards,
Windoor
|
Windoor 7/19/2011 9:28:07 AM | Thanks again for the information and explanation. Reading the above a week later clearly shows my frustration, at the time, trying to get this to work like I want.
Harry was able to alter the .xrd files, but Excel does not seem to like a lot of files at once. Choked out at about 600 of them.
A fix is in the works. I hope.
Regardless, I did have some 600 files to work with, and with just a little massaging I could produce this for the first quarter of 2011 working with just this group of horses.
I am assuming I got accurate results with modified .xrd files.
Ending BankRoll: $98,520.00 Starting BankRoll: $10,000.00 High BankRoll: $98,520.00 Low BankRoll: $6,380.00 Longest Losing Streak: .00 Bet Percentage: 0.0500 Max Bet: 200.00
There is some backfitting I’m sure, but not as much as you might think. The win percent could use some work too, but overall I think it is pretty impressive.
Now to validate and figure out a way to get these horses out of J/Capper and back into Excel for some form cycle and class tests.
Thanks again,
Windoor
Regards,
|
jeff 7/19/2011 4:48:22 PM | --quote:"Ending BankRoll: $98,520.00 Starting BankRoll: $10,000.00 High BankRoll: $98,520.00 Low BankRoll: $6,380.00 Longest Losing Streak: .00 Bet Percentage: 0.0500 Max Bet: 200.00" --end quote
Based on my own past experience, no matter how strong a method might be and no matter what has been observed in the past, 5% of total bank on each play subjects the player to excessive risk.
Eventually there will come a time when even the strongest long term methods experience short term fluctuations/losing streaks.
Not IF but WHEN that happens, 5% of bankroll on each play will cause the entire bank to evaporate.
My 2 cents FWIW... 2.0% to 2.5% is in the neighborhood of max risk I'd personally subject a bank to.
Anything more than that and you are all but guaranteeing tapping out at some point.
-jp
.
|
Windoor 7/19/2011 10:49:56 PM | I think you might misunderstand how I play.
I used the 5% of 10K to keep the wager at $200 flat. (Notice the max is at $200)
I do not wager a percent of my bank.
I Flat bet only, with 100 units to start and 100 units as back up. The 100 units is for each spot (UDM?) play that I have active.
I do not get concerned until 50 units are gone (from any given bank high)and have only gone to 60 something once.
I have indeed lost quite a few banks over the years, but none (except small testing banks) over the last 2.5 yrs. I have not showed a loss in any quarter in that time but do have a few losing months. Dec 2010 showed my longest losing streak at 38, but it was still a winning month.
Over all I have been quite pleased with my results at select tracks, though I continue to do poorly in the spring. I may finally have an answer to that.
It is now time to expand. I'm starting to have delusions of grandeur. We shall see, and as always I will start slowly.
Regards,
Windoor.
|
jeff 7/19/2011 11:06:12 PM | --quote:"I Flat bet only, with 100 units to start and 100 units as back up. The 100 units is for each spot (UDM?) play that I have active." --end quote
Got it.
Essentially 1% of bank on each qualifying play generated by the selection method... IMHO, much better from a long term chance of success perspective.
PS - Rereading my previous post I realize I may have come off a little too harsh. Not my intent. (Having overbet many a bank down to nothingness in my early years I thought it was worth mentioning that 5% is simply too high. That's all.)
-jp
.
|