Mike,
Thank you for sharing your elegant solution to import eTables into Amibroker.
Would like to let you know it has become an integral part of my daily process.
Mike,
Thank you for sharing your elegant solution to import eTables into Amibroker.
Would like to let you know it has become an integral part of my daily process.
Please do! I share my posts and planning on Twitter (@rocketpower) and Trello (bit.ly/100PctRtn), if you want to see how I use it.
Definitely looking forward to trying this one out! Looks like an excellent mod. Not this weekend but maybe next when I have more time to spend in case something goes wrong.
I could not find a way to subscribe to etables. Can anyone help with the link?
When I looked for it I already thought it was quite hidden, now I don't find the sign up form at all. The only link I found to it was this https://askinvestorhelp.force.com/s/article/What-is-IBD-eTables-How-can-I-sort-stock-lists-in-IBD-eTables and the link in this article leads to nothing. Seems like they don't want to offer it anymore or at least not as easily.
The site-map does also still have "eTables", but the link also leads to nothing.
You could either try to register and see if it is possible, to activate it from within your profile page or just write to the support. I hope they still accept new subscribers for this service.
Have a bad feeling about this, they may not accept new subscriptions and grandfathering the rest of us for a while until they cut it off completely. IBD's business model since the son took over has been total garbage. Incessant advertising (even if you pay for eIBD), relentless pop-ups, bad tools using Silverlight, etc. The value of the content is amazing, just the execution bad.
But if you log in, check if you see eTables in the product list:
If you can't pay for it from there, we are in trouble
So, I created a dummy account on investors.com.
I clicked the eTables logo you see in my previous screenshot, and all I get is a 404 page.
Damn this sucks! But maybe it's a blessing in disguise, time to create my own independent metrics.
But this just proves Scott O'Neil is a sleazy businessman.
Thank you RioL and rocketPower. I have eIBD subscription and sent an email to support asking about eTables subscription.
Thanks for the heads up @rocketPower . If this goes away it will be very disappointing. It is a great resource at very affordable cost. It was you and your advice to go down that path that were the final pieces of the profit puzzle for me. I do have a couple of ideas how I might replace it if I absolutely have too but I really hope that isn't the case. While I'll keep checking it out, let me know if you see or hear anything concrete before I do please.
@MCassICT
Not sure if you've fixed the Score column no display issue already. I figured the cause was this line of code where I don't have $SPX ticker downloaded, so I changed it to be SPY:
RSL = C/Foreign("SPY", "C"); // $SPX
Yes I did get that taken care of awhile back....thank you though for the follow up!
Hi jpas,
did you get a reply from the IBD support?
Hi RioL,
This is the response from IBD Support
"
Thank you for contacting Investor’s Business Daily.
This product has been discontinued. It is no longer available.
We appreciate you taking the time to write us.
"
Hi jpas,
too bad, so the fears by @rocketpower might become true for us legacy users too.
For all those, who can't join the eTables service: Take a look at this post to do your own RS scoring.
Well that is very disappointing to hear....
We will just have to adapt this to our own metrics eventually, which in the end further reduces our reliance on what has become a terrible organization. This is no longer Bill O'Neil's IBD, it's Scott's, and it's ugly.
It was fun while it lasted. Thanks for all the fun we had with this project!
Ganbarimasu!
Hello jpas,
Since you're in contact with them, can you ask them when they plan to cut off active users?
Thanks!
Mike
@RioL and @rocketPower I have spent all afternoon trying to get your automation of the etables download to work and after some struggles I was finally able to figure it out. From the batch, it is downloading the eTables into the Downloads Folder, creating the SepaDate Folder, and Moving the files from one to other. This is awesome. The only question I have is when I do the tablescrape, how does it know which of the SepaDate folders to look in?
I am not sure, if I wrote this before: I am using an archive folder with all the different daily downloads. I first attempted to create a dynamic access to those folders by using the "_SepaDate.txt", but I encountered several problems and I chose to rather use a static directory in my afl-code. So I created another directory "C:\Program Files\AmiBroker\MyFiles_Temp\Sepa" and this folder contains three subfolders (Batch_temp should be irrelevant to you):
So in the end I do this:
Download the data to my archive -> Use another batch-file (see below) to copy the data to my temporary "_Temp/Sepa"-folder. Amibroker will only access this temporary data and will save any results there too. So after running my system and creating some files, I do save all those result files to another folder via another batch.
The following batch makes a copy of the archive and moves it to my temporary folder. It uses the "_SepaDate.txt"-file to decide which folder it will copy. The parts of the directory with %....% are MS Windows environment variables, you can replace them with a full directory path.
::Save this as a "DataCopyToTemp_IBD_eTables.bat"
::Read "_SepaDate.txt" and set it as variable
set /p SepaDate=<"%AB_SepaFormulas%\Variables\_SepaDate.txt"
::copy data -> "_temp"-folder, the output directory ends with '\' to ensure the directory is created
xcopy "%AB_MyFiles%\Data\IBD\eTables_txt\%SepaDate%" "%AB_Temp%\Sepa\Data\IBD\eTables_txt\"
And with this batch you can copy the results to your archive.
:: Save this as "CopyTempResultsToResults.bat"
::***************************** Preparation *****************************
::get SepaDate
set /p SepaDate=<"%AB_SepaFormulas%\Variables\_SepaDate.txt"
::set directories
set "FromPath=%AB_Temp%\Sepa\Results"
set "ToPath=%AB_MyFiles%\Sepa\Results"
::***************************** Code begin *****************************
::create the new YYMMDD folder for the output data
pushd "%ToPath%"
mkdir "%SepaDate%"
cd "%SepaDate%"
::copy data
::If the target folder already exists and has also files with the same name, the *.bat stops and asks the user what to do.
::DANGEROUS: If the goal is to always overwrite existing files -> write at the end of the xcopy line the argument "/Y". BUT ANY MISSTYPING in the _SepaDate.txt MAY LEAD TO DATALOSS!
:: "/E" -> the whole subdirectory is copied
xcopy "%FromPath%" "%ToPath%\%SepaDate%" /E
::***************************** Code end *****************************
Six month after starting programming with Amibroker, I must say to automate stuff and make fully use of the Amibroker Batch it is in my opinion very useful to do some stuff with scripts. At least in my case, they help me extremely in automating large parts of my system. But I must admit, learning it from scratch, it takes some serious digging to find the right solutions.
OK so I have tried going about it from a slightly different angle just for simplification purposes on my own part so that I can see very clearly the order of execution. Funny that everything you and rocketpower wrote works just fine, my part though, not so much LOL (not surprising).
So all Ive done is added a section before moving anythingto the archive folder, to copy from the native download folder to a temp folder (which is the one that Amibroker will scrape from). For some reason though when it goes to do the copy it is unable to find the files. Oddly enough, in the next step it is able to find the files to move them. Unusual because it is the same files. Not sure what I am missing here with how I have written it.
Summary of operation: 1) start batch to download eTables from IBD into native download folder, 2) copy eTable files from native download folder to eTables_temp folder 3) create archive folder 4) move eTable files from native download folder into the newly created archive folder.
::Copy the downloaded files to the new folder.
set "FromPath=\\Mac\Home\Downloads\"
set "ToPath=C:\Program Files\AmiBroker\IBDeTables\IBDeTables_Temp"
::This is the section I am trying to add
::copy data -> "downloads"-folder, to temp folder
xcopy "%FromPath%\ibd50_eTables.txt" "%ToPath%" /y
xcopy "%FromPath%\ibd8585_eTables.txt" "%ToPath%" /y
xcopy "%FromPath%\ibdnewamerica_eTables.txt" "%ToPath%" /y
xcopy "%FromPath%\ibdbigcap20_eTables.txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables (1).txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables (2).txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables (3).txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables (4).txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables (5).txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables (6).txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables (7).txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables (8).txt" "%ToPath%" /y
xcopy "%FromPath%\ibdstocktables_eTables.txt" "%ToPath%" /y
::End section
TIMEOUT 10
::The following code creates a new folder and moves the files to it.
::Author: RioL
::Create the new folder for the etables data.
::Generate date folder, it contains only one date in the format "YYYY-MM-DD".
set SepaDate=%date:~-4,4%"-"%date:~-7,2%"-"%date:~-10,2%
::pushd sets the directory as working directory!
pushd "C:\Program Files\AmiBroker\IBDeTables\IBDeTables_Archive"
mkdir "%SepaDate%"
cd "%SepaDate%"
::Move the downloaded files to the new folder.
set "FromPath=\\Mac\Home\Downloads\"
set "ToPath=C:\Program Files\AmiBroker\IBDeTables\IBDeTables_Archive"
move "%FromPath%\ibd50_eTables.txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibd8585_eTables.txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdnewamerica_eTables.txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdbigcap20_eTables.txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables (1).txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables (2).txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables (3).txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables (4).txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables (5).txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables (6).txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables (7).txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables (8).txt" "%ToPath%\%SepaDate%"
move "%FromPath%\ibdstocktables_eTables.txt" "%ToPath%\%SepaDate%"
TIMEOUT 10