No. You cannot currently get EFS study results via the Desktop API. Two options. 1) Write (aka. duplicate) the studies in VB, C#, C++, or whatever you are using as for you API app. 2) Round-about hack and pass info via the DLL interface from within an EFS script.
I am interested in the Directional Movement study. I would happily replicate it myself but I need to know how eSignal is calculating the +/DI values and ADX.
I have tried both the exponential moving average as well as the original formula that Welles uses in the original study. My data does not jive. Can someone post the code/pseudocode for the DI calcs? Calculating the +/-DM and the TR is no problem, but the +/-DI uses a moving average calculation and it not clear what **KIND** of MA it uses (simple, exponential, Welles-substitute, etc.).
+/- DI is actually the result of dividing DM and TR and is a positive number indicating the percent of true range of the last 14 days that was up (likewise for the percent that is down). The calculation is straight out of Welles Wilder's book "New Concepts in Technical Trading Systems" - Chapter 4.
I am quite familiar with the DI/ADX strategy and have been trading with it for a while. What I cannot figure out is how eSignal is calculating their DI and ADX values. What I am interested in is the ADX study over 10 1-minute periods (not 14 1-day periods as is typical).
For starters, if eSignal is using the Welles sum (to perform smoothing) there is no need to wait for 10 mins of data, the DI's and ADX can be computed at the end of second minute. I assume eSignal is not using a Welles sum but rather some sort of 10-min weighted or exponentional average since they wait 10-min to calc the first +/-DI values (the end of the 9:39AM EST interval with a 9:30AM open). If so, what average are they using. Furthermore, the first ADX calc does not take place for an add'l 19 minutes (the end of the 9:58AM interval). Again, what average or smoothing function are they using. The first DI's calc at the end period n and the ADX appears 2n-1 intervals later (where n is the time period)
I have implemented the original Welles DI/ADX functions in Excel and C# and use them all the time. The eSignal calcs (after about 45 minutes into the trading day) are very very close to my calcs (they converge) but not exactly and they periodically diverge during the day typically when the ADX starts to get large (>40).
Can someone post the algorithm that eSignal actually uses to calc the DI and ADX values (and just refer me to the original Welles paper which have implemented). I'd like to be able to perfectly match the eSig calcs even if they are not exactly the same as the Welles Sum results. I can post a day's worth of 1-min data if you need to see the discrepancies. Thanks, Drew
Comment