History: (from www.tradingmarkets.com/.site/stocks/commentary/editorial/The-Improved-R2-Strategy.cfm)
The Improved R2 forex Strategy: 84% Correct with Just 6 Rules
By Larry Connors & Ashton Dorkins
TradingMarkets.com
February 21, 2007
In early 2005, we published the R2 forex Strategy on TradingMarkets which quickly became one of our more popular forex strategies. The forex strategy was also presented at "The Traders Expo" in Fort Lauderdale last year. In the "MoneyShow.com Best Webcasts of 2006" it was voted the number one presentation in the "Best for Traders" category. We recently updated and improved our research, leading to this article that shares our latest findings with you.
What is the Improved R2 forex Strategy?
The Improved R2 forex Strategy is a simple six-rule forex Market Timing Strategy which uses the 2-period RSI as its primary tool. Our research has shown that there is little statistical evidence using the standard 14-period RSI. But, when you shorten the period to a 2-, 3- or 4-period RSI, test results significantly improve. By using the 2-period RSI as we do here, you can see back-tested results of 84.31% correct in the S&P 500 Index going back to 1995 (12 years).
Here are the Rules:
The SPX is above its 200-day simple moving average (you can use any S&P 500 derivative product, including the SPYs, E-minis, etc).
Day 1 - the 2-period RSI is below 65. This tells us that the market is in a neutral to possibly oversold condition.
Day 2 - the 2-period RSI closes lower than Day 1.
Day 3 - the 2-period RSI closes lower than Day 2.
Buy the market (SPX, SPY, E-mini, etc) on the close Day 3.
Exit when the 2-period RSI closes above 75.
Comment by EA Author: The forex EA only references the closing values of RSI for the prior three days. Whatever RSI is doing during the current day has no bearing on anything and will not be taken into consideration for any forex signals. Therefore, a forex signal is generated immediately after closing of the 3rd day if all of the criteria are met, and that forex signal will be valid all day during the 4th day.
EA development history
Peter Henry introduced this concept to this trading group after trying to get forex EA programmed by members of Forex-TSD . He explained that this forex method had been designed for stocks but had universal appeal and can be applied to any market. He then posted within this Yahoo news group requesting help in designing an forex EA, as Forex-TSD members produced an forex EA but did not make the code public. Bluto responded and took on the project from there on. Peter’s original post.
www.forex-tsd.com/expert-analysis/6494-rsi-r2-84-accurate.html
Then, a Yahoo MT Group member known as Bluto picked up the above story and developed an EA titled RSI-R2, which evolved in version 1.0 to 1.3. At that point, Bluto decided to add further refinements but keeping the code unavailable (Versions 1.4 onwards). At about the same time, another member (Dave Roland) developed the same forex EA but able to trade ALL forex currencies without needing to open a chart for each and add the forex EA into it manually. That EA's title is: Multipair RSI. It also developed several versions.
How it works
In layman's terms, this is how the RSI-R2 Ver 1.1 forex EA works:
With each new tick, the EA is called and control passes to the init_start() mainline
function. First, we perform the money management option via the "Calc_Money_Management()" function call if the value of the UseMoneyMgmt variable is set to true. This function calculates the appropriate lot size to use based on available equity and the "RiskPercent" setting. If money management is disabled, the value of the default "LotSize" variable is used.
-Then-
Using a daily timeframe, first, get the closing value of RSI three days ago (RSI_Day_1), the closing value of RSI two days ago (RSI_Day_2) and the value of RSI one day ago (RSI_Day_3) . Also, get the closing value of a 200-day simple moving average one day ago (SMA200_Day3). We will analyze the behavior of a short term RSI over the prior three days as our primary buy/sell trigger.
-Then-
Check for forex Buy Signal: We're looking for a decreasing value of RSI over the past three days into a deeper oversold status as price remains above SMA200. If the value of RSI_Day_1 < 65 and the value of RSI_Day_2 < RSI_Day_1 and the value of RSI_Day_3 < RSI_Day_2 and the value of Closing Price from one day ago is SMA200_Day3, we have a forex Buy signal, so set the boolean Buy Flag (Buy_Mode) to True, otherwise set it to false.
-Then-
Check for forex Sell Signal: We're looking for an increasing value of RSI over the past three days into a deeper overbought status as price remains below SMA200. If the value of RSI_Day_1 35 and the value of RSI_Day_2 RSI_Day_1 and the value of RSI_Day_3 RSI_Day_2 and the value of Closing Price from one day ago is < SMA200_Day3, we have a forex Sell signal, so set the boolean Sell Flag (Sell_Mode) to True, otherwise set it to false.
-Then-
Before we act on any potential signals that may have fired, we do some housekeeping on any order that may already be open. The forex EA only allows one sell or one buy order to be open at a time. If we have an open Buy order in progress and the value of RSI_Day_3 75, we close the order because RSI is entering extreme overbought status (reversal coming?) If we have an open sell order and the value of RSI_Day_3 < 25, we close the order because RSI is entering extreme oversold status.
The order closures would actually happen on the opening bar of day 4 since we're on a D1 timeframe.
We then update trailing stop using Parabolic SAR. Managing these stops can cause an order to stop out if things get nasty.
-Then-
We now act on any new forex buy and sell signals:
- If we have a new forex buy signal and there isn't a buy order already open (OpenBuyOrders = 0), we check first to see if a sell order may be open and if so, we close it. Then we simply open a new buy order and increment the open buy order counter (OpenBuyOrders++). The counter keeps us from opening multiple buy orders since we only want one. - If we have a new forex sell signal and there isn't a sell order already open (OpenSellOrders = 0), we check first to see if a buy order may be open and if so, we close it. Then we simply open a new sell order and increment the open forex sell order counter (OpenSellOrders++). The counter keeps us from opening multiple sell orders since we only want one.
That's it. Control then passes back to MT4 via the last statement of "return(0)" in the init_start() routine until the next tick occurs and calls the forex EA at which point we repeat the entire process again.
I hope that this helps clarify what the forex EA is doing under the hood.
-bluto
Forex Indicators used with the EA (not required to use the EA):
For those interested in knowing what is "under the hood" of the forex EA, there is a list of indicators which can be utilized with the EA.
R2_Arrows_v4 is and indicator for RSI_R2 EA by TransportDavid. It places buy/sell arrows. He also made another forex indicator for Robert's Optimized EA. (AnyMA_Rsi_R2_Indi_Opt.mq4)
Forex Indicator written just for bluto's Super RSI does not exist at this time. But you can use R2_Arrows_v4 on it. It is close although not 100% since bluto's Super Rsi have some additions.
With both forex EA you can also use another forex indicator which is regular RSI with daily dots on top of it, so you can easy see follow forex buy sell rules. Made by Accrete. Name RSI_LiDo.mq4 (included in V. 1.9)
The most recent versions (June 16, 2007) of this forex EA are
AnyMA_RSI_R2_EA_Opt.mq4 - Robert
Super RSI Ver. 1.7.ex4 - Bluto
Super RSI Ver. 1.8.ex4 - Bluto
Super RSI Ver. 1.9.ex4 - Bluto
Super RSI Ver. 1.9.1.ex4 - Bluto
These versions use the same logic, the same forex method, but they are different enough to try them. Robert is using addition filter HMA3.mq4. With Robert's EA you can play with different Moving Averages, not only simple as in original forex method. You can also try many different (trailing) stops.
Bluto's EAs offer two different exits. Default is parabolic stop. If you want to use his trailing stop, you should turn off parabolic stop (lots of Q’s on this below).
What else? Open all charts on DAILY timeframe, put EA and both forex indicators on each chart, let EA use default settings - optimized RSI. Each, Bluto's and Robert's EA use different optimized RSI numbers.
Roberts numbers you will find inside EA in the code, and Bluto's optimized numbers you will find in setting menu of EA. Don't forget to enter correct RSI setting into each forex indicator for every chart. Remember, each chart have it's own RSI settings.
Both EA's use Daily forex charts.
The RSI-R2 EA FAQ: mostly replies by Bluto (43) to questions (38). New with V. 1.9: “Authors comments”
Q: Bluto, are you using this forex EA (on Daily charts) on all of the forex currency pairs or just the 4 majors? Also, when you say "15 lots per forex signal", are these standard lots or mini lots and which broker are you using? Thank you.
A: I'm running the forex EA on a chart for every pair. It should work equally well for any pair. I'm using 15 mini-lots @ IBFX. And yes, those would be daily forex charts. The EA is coded to use daily RSI & SMA forex signals.
-bluto
Forex Trading ECN Lesson
More about forex market http://www.e-junkie.com/trader-info?&pn=0
Friday, October 10, 2008
Subscribe to:
Post Comments (Atom)
Good to become visiting your weblog again, it has been months for me. Nicely this article that i've been waited for so long. I will need this post to total my assignment in the college, and it has exact same topic together with your write-up. Thanks, good share. Ic Markets Review
ReplyDeleteGood to become visiting your weblog again, it has been months for me. Nicely this article that i've been waited for so long. I will need this post to total my assignment in the college, and it has exact same topic together with your write-up. Thanks, good share. giottus referral code
ReplyDeleteI wanted to thank you for this excellent read!! I definitely loved every little bit of it. I have you bookmarked your site to check out the new stuff you post. Okex invite code
ReplyDelete