Hi all,
I would like to ask, if someone has already coded the ConnorsRSI in WL4? This indicator is presented on a pdf-file at the following website (page 6 to 8):
ConnorsRSI PDFThanks for your help in advance
Size:
Color:
This indicator seems to be hot off the press. Makes sense to code it for Community Indicators, so I'm going to start soon.
Size:
Color:
ConnorsRSI will be added to Community Indicators 2013.01. The PDF is a potential idea for a Trading System Lab, so thank you for the nice find.
Size:
Color:
fyi, this indicator has been added to Community Indicators (version 2013.01).
Size:
Color:
I have downloaded this Indicator, but am unsure how to apply it to create a strategy to backtest. What is the Rule-Based syntax that would create a Strategy that uses this Indicator to backtest?
Size:
Color:
Size:
Color:
Thank you, Eugene; I found the Strategy and downloaded it. However, when I tried a backtest on SPY for 6-yrs, it indicated only one trade -- BUY on 10/10/08 @ $86.76 and SELL on 10/13/08 @ $101.35. Does that sound right -- only one trade in 6-years?
Size:
Color:
Yes, that's expected. The setup triggers pretty rarely. Therefore we even picked a different (wider) universe of stocks for the TSL article.
Size:
Color:
Hi Eugene,
i tested the indicator recently and it does not look like the one Larry Connors described. If you compare the indicator values with his real life examples it does not match. Your implementation does never exceed a threshold of 70 whereas even in the two short charts examples i have seen the Conners RSI easily reaches 80. Something must be different?!
Best regards,
Robin
Size:
Color:
Hi Robin,
I think that the only source of difference may come from how the author calculates PercentRank and how we're doing it:
PercentRank.
Please feel free to share your findings: your Wiki account has been authorized to download attachments, Community Indicators in particular.
Size:
Color:
I think I can confirm having found the source of that discrepancy. Indeed it's the PercentRank, or its scale to be precise. The way Connors and Alvarez calculate it, the numbers would go from 0 to 100. The Community Indicators formula that matches Excel's PercentRank is scaled from 0 to 1.
Sorry for the inconvenience. This is an easy fix to the ConnorsRSI indicator from our library, but the extension itself won't be updated for a few months to come because of some technical reasons.
Size:
Color:
Hi Eugene,
I can confirm that is the problem. I have some strategies written to test some Larry Connors examples. I noticed that the ConnorsRSI values did not match his examples too. After copying the code from Community.Indicators, multiplying the result from PercentRank by 100 will fix the ConnorsRSI values.
Do you know when you might be able to update the extension? I can fix it for myself, but there were a few other WLP users that were using this strategy as well. I noticed you said a few months. Are we looking at April or later?
Size:
Color:
Hi Tim,
For technical reasons, we'll upload the update shortly after next scheduled Wealth-Lab build becomes available. On a broader note, all extension updates have been suspended since the release of our updated website and until new WL build comes out. Sorry for the inconvenience.
Size:
Color:
It looks like the PercentRank implementation in Community.Indicators is different than the Larry Connor's algorithm. There were some descrepancies with the values returned from the indicator and what was expected. We traced the difference to the PercentRank values.
Here's the latest version I'm working with that seems to produce better results...
CODE:
Please log in to see this code.
Size:
Color:
Heads-up:
Community Indicators have just been updated with the fix to ConnorsRSI.
Size:
Color:
Eugene,
Does that include the CrPercentRank method I provided above? I seem to see some minor differences between your version of ConnorsRSI and mine (MyConnorsRSI). It looks like the difference is the routine above. If I go back to the code that uses the PercentRank, I get the same result as you.
I had an email from Larry Connors for after market close on April 15, 2013. The results below compare MyConnorsRSI (results match Larry's) with the ConnorsRSI from the library. As you can see these are off by a slight amount...
QUOTE:
Symbol MyConnorsRSI ConnorsRSI
LIFE 98.687 98.654
MYGN 93.808 93.775
TLT 86.124 86.058
VXX 87.817 87.783
All had the parameters (Close,3,2,100).
Size:
Color:
Tim,
No, they don't: I noticed how insignificant was the difference. I even ran a comparison using the
ConnorsRSI Pullback system on the entire NYSE DataSet. Between CrPercentRank and the traditional PercentRank, the difference was 1 (one) trade out of ten thousand or so. That's expected, as "98.687 vs 98.654" does not make a striking difference. But thanks for your input anyway.
Size:
Color:
I tried ConnorsRSI from Community Indicators for S&P500 (SPY). The results don't look right - over ~10y period the index has never exceed 65. The above discussion indicated a bug of the sort which would do that, but the thread seem to indicate that it had been fixed long ago. Was it? How can I verify the date of my ConnorsRSI indicator? Thanks,
Size:
Color:
Yes, it was fixed years ago. Assuming the default parameters (Close,3,2,100) it easily exceeds 80.
On how to work with Wealth-Lab extensions (e.g. check version), review
this illustrated tutorial and/or check out the Wealth-Lab User Guide >
Extension Manager.
Size:
Color:
I had a version from 2013, updated it to the latest (2015) and now it seems to be working correctly, thanks, Eugene
Size:
Color:
I want to download the ConnorsRSI indicator code to use in Visual Studio to create a DLL.
Can some one tell me how to download the code (The indicator not the strategy).
Thanks
Size:
Color:
If your purpose is to modify the ConnorsRSI itself then, like I suggested in the ticket, you can download the source code as zipped "attachments" after logging in to the Wiki with your new Wiki account:
Download Project Source CodeNamely, ConnorsRSI could be found here:
Home - Community IndicatorsTo compile the project you'd have to update References as they point to the DLLs in a different installation directory, and optionally reconfigure Project Properties > Debug (to start WealthLabPro.exe instead of WealthLabDev.exe).
Size:
Color:
Thanks
Size:
Color:
Eugene,
Is it possible to do the reverse problem?
What I want is to project/compute the price needed tomorrow to raise the ConnorsRSI from today's value to 70 for example (intraday) and if this happen my strategy will trigger a sell signal.
In thinkorswim, they have some thing like this for RSI called ReverseEngineeringRSI.
Thanks
Size:
Color:
Slah, sure it's possible. Check out my
post #5 in this conversation for a collection of "RevEng" indicators already available in Wealth-Lab's indicator libraries. Of course RSI has been on the list already. While I probably wouldn't be very useful to 'reverse engineer' the ConnorsRSI for you, @Cone is the go-to guy when it comes to this kind of task. Maybe he could help if he has some free time.
Size:
Color:
Thank you Eugene!!!
Size:
Color:
It's possible no one has derived an implementation for the ReverseEngineeredConnorsRSI. Can you cite a reference to an article that has solved this for the ConnorsRSI? It would involve solving for a differential equation (say the first and second derivative terms) expressing the time changes of the ConnorsRSI and weighting the input to the reciprocal of its variance. Basically, this is how the Kalman filter works under the hood, but this implementation would be specific for the ConnorsRSI; whereas, the stock-trading Kalman does this for any time varying input.
---
One really easy option is to extrapolate the value of interest (in this case, the ConnorsRSI) with the TSF indicator.
http://www2.wealth-lab.com/WL5Wiki/TSF.ashx The documentation for the TSF indicator is wrong. You want to employ a positive ProjectionBar to extrapolate into the future. I use this extrapolation indicator myself for the MACD divergence (i.e. MACD histogram) indicator and it works well. Part of the reason for doing this is to extrapolate
two bars into the future; the RevEngIndicator solutions typically only extrapolate
one bar into the future.
If available, the reversed engineered solution (or Kalman approach) would be more precise than simple linear extrapolation (i.e. TSF indicator), but simple linear extrapolation works pretty well if you're extrapolating an area of the indicator that's somewhat linear already, which is what I'm doing for the MACD divergence at its zero crossing.
Size:
Color:
Superticker,
I have an implementation of this using python. Let's say ConnorsRSI = Y(X) and X=Close for example. Knowing Y, I can solve for X using a modified bisection method (Basically solving for the zero of a function). There a small problem, because Y(X) is not a continuous function (but nearly continuous). However, if we can bracket where the function Y(X)= Y0 (given), we can use the bisection method to solve for X. I Tried this with the C#, but It is not working yet.
Thanks
Size:
Color:
QUOTE:
solving for the zero of a function
A fix point method. That may work.
QUOTE:
Y(X) is not a continuous function
So the derivative may not exist at some points, which could be a convergence problem. So the question remains, what to do if it's not converging after several iterations? Well, you could keep a moving average of the most recent iterations and return that instead. Not ideal, but I don't think it's going to get any better.
When working with fuzzy systems (not your standard numerical analysis problem), you can't expect to get precise answers. Ballpark solutions will have to do.
---
Whatever you do, you can't trust any one or two points on y(x) or the ConnorsRSI because they won't be reliable (i.e. they could be outliers). So you need to incorporate several points over the ConnorsRSI together with each iteration to dilute out the outliers. In other words, this is a fuzzy system numerical analysis problem.
Size:
Color:
The Bisection Method does not need the derivative. It only need to know if the function has a zero ( it could have multiple zeros thou).
In general it converges to one of the zeros after 5 to 6 iterations.
Size:
Color:
QUOTE:
The Bisection Method does not need the derivative.
I agree. The bisection method is more robust, but converges slower than the derivative approaches (e.g. Newton-Raphson). My concern is whether or not it's even possible to find a "reasonable" and "reproducible" solution around local discontinuities. Perhaps you could try a smoothing filter (in the presence of enough "reliable" data points) to even out the local discontinuities and reveal the dominant zero,... an application dependent solution.
If you get it working and it makes money, let us know. And happy computing to you.
Size:
Color: