Ryan L Johnson
Ryan L Johnson
Futures & FX Strategist at Silk Road Trading LLC
Beginning on March 6, 2026 I am PROGRAMMING MQL5 INDICATORS, EA's, AND SCRIPTS FOR FREE as announced in my Blog.

I started out in the afterschool of hard knocks as a kid... Hog farm, trailer park, firewood, etc. but I got my hands on an Apple IIe computer early too. I ended up with more degrees than a thermometer later in life and began trading in 1999. My most valuable bits of education helpful to trading were probably Algebra, Geometry, Advanced Math I and II, Statistics, and Computer Math. That's Computer Science for the younger generation, or hey... just Programming for the next younger.

The retail trading industry is comprised of a multitude of central exchanges (NYSE, NASDAQ, CME, etc.), captive off-exchange markets (forex, CFD's, etc.), broker-dealers, hedge funds, investment banks, proprietary trading firms, HFT firms, pension funds, software providers, and data providers which take profits whether retail traders win or lose. The level of conflicting interests of commercial participants versus retail traders varies widely from one market to another. An important factor in developing a profitable trading strategy is choosing the best market(s) to trade.

Another important factor is, frankly, knowing what not to do. Professional traders and proprietary trading firms cap their risk per trade at 1 to 2% of account balance─because that time-tested approach has statistically proven to be the only way to stay profitable in the long-term. I like to refer to that rule as a risk-based law of diminishing returns. The problem for the overwhelming majority of beginning or inexperienced retail traders is the fact that they start with a small amount of trading capital. As a result, trading 1 to 2% of account balance is perceived as "not profitable enough" by those retail traders.

Also as a result, such retail traders are attracted to high risk strategies in hopes of receiving high returns. The widespread proliferation of Martingale (Martingarbage) or grid strategies among beginning or inexperienced retail traders serves as a prime example thereof. The more that you exceed the aforementioned risk-based law of diminishing returns, the faster that you will blow your account. The financially responsible way to grow your account is to simply follow the rule and allow your reasonable profits to add to your balance, the 1 to 2% of that now higher balance to increase your trade size, which allows now higher profits to increase your balance, and so on.

If you have been dismissing strategies that you deem "not profitable enough" for say, the last 3 years, and you continue to lose money each year, it's time to acknowledge who and what you're up against and the statistical rule that they and it are following. I realize that this is an uncomfortable truth for most beginning or inexperienced traders. It means that you will not get rich quick and you may not even be able to trade certain markets having low leverage. The situation is what it is. Just imagine that if you had been aware of the rule when you started trading, say, 3 years ago, what your account balance would be a this very moment.

The rule also inherently invalidates about 95% of the strategies/EA's that you see online. The people who are selling that stuff are professional web marketers─not professional traders. The overwhelming majority of retail traders are beginning or inexperienced because the trader turnover rate is sky high. In that regard, the web marketers are simply responding to a massive target market of new traders that is glaringly obvious to the entire retail trading industry.

Having traded so many markets and instruments over the years, I now help beginning or struggling traders for free when they contact me. I have helped many other traders select a market, instrument, chart type, and strategy components without pushing commercial products on anyone... no strings attached. The one thing that we the retail traders can do, that commercial traders will not, is help each other for free. (I must admit... I have given free help to beginning fund managers).

And by the way, other people have identified me as a part-time comedian... which I also admit.

Happy trading!🙂
Ryan L Johnson
Ryan L Johnson
Just a quick word of advice for beginning traders...
It's more or less common knowledge that the holiday season is generally a bad time to be trading. Of course, the actual length of the bad trading season depends on the type of instrument and strategy that you're trading. Here are some example statistics in the form a bar chart from the MT5 Tester Report--for a strategy that places a trade every 1 to 2 days. This is a 6 year backtest. Rather obviously, we won't be trading in December nor January.
Ryan L Johnson
Published code ATR Cycles
A volatility filter based on 3 ATR's: a fast ATR, a middle ATR, and a slow ATR
· 1 4811 825
Ryan L Johnson
Here is perhaps the cleanest and most organized video instruction on how to code an MT5 EA based on an indicator by using iCustom(). This video is suitable for beginning MQL5 coders. This is not an endorsement of any broker. I do not use this broker, and I cannot use this broker in my location...
Ryan L Johnson
If you'd like to help stop about 400,000,000 non-upgradeable Windows 10 pc's from going into landfills, please sign the nonprofit petition at: https://pirg.org/take-action/tell-microsoft-to-extend-free-support-for-windows-10/ No donation is required. Please share this petition far and wide.🙏...
Ryan L Johnson
I've seen quite a bit of confusion about the activities of mql5.com Forum Moderators versus Administrators... versus the Service Desk, so I'll try to clear things up here. A Moderator is relegated to editing, censoring, and reorganizing the content of Forum Topics (threads) and Posts...
Ryan L Johnson
Added topic Some advice on issues with MT5 Beta build 5227
I recently reopened an old live FX account with my former FX broker-dealer which shall remain nameless here. Their Latest Release Version of MT5 was 5227 which created a bug that failed to import past tick data into the current bar in my Custom
Ryan L Johnson
Published code MACD Signal Line indicator for MT5
A stripped-down and colorized (signal line only) version of Metaquotes' MACD indicator from the MT5==>Indicators==>Examples folder.
· 1 7360 882
Ryan L Johnson
Published code Disconnect Alerts for MT5
Trade server disconnect alerts utility for MT5.
Ryan L Johnson
Here is a non-repainting ZigZag indicator that I converted from MT4 to MT5. This indicator is already posted in several Forum threads but is not easy to find. Although it works, compiles without errors, and runs fine in the Tester, the CodeBase validator will not accept it...
Ryan L Johnson
Added topic Home Network, PC, and MQL5 Code Security
Several forum users have reported hacking and malware intrusion into trading platforms and pc's, so the purpose of this thread is to give some guidance about security measures. No one knows everything, and I certainly never claimed to, so please post
Ryan L Johnson
Published code Show Positions on Custom Chart (or standard chart) for MT5
This indicator is a utility that shows labelled trade levels on any chart. If you want to replace your native trade levels on a native chart, then turn off "Show trade levels" in your F8 Chart Properties and attach this indicator. If you want to show trade levels on a Custom Chart (where native trade levels cannot be shown), then simply attach this indicator. BaseSymbol - specify the Symbol from which the trade level data will be pulled--handy for unique Custom Symbols. TextBarsBack - specify the number of bars back in history from the current bar where the level labels will be drawn. Note: Although magic number is referenced in the code, it is not presently included in the trade lines. If you're running multiple EA's on the same Symbol, you can edit the code to show magic numbers and then run multiple instances of the indicator on one chart. You can also edit the font sizes and text spacing in the object properties as needed for different display resolutions.
Ryan L Johnson
Published post How Wall Street Really Operates - A Former Quant Turned Reformist
Here is the sad but honest truth about institutional high frequency trading (HFT...
Ryan L Johnson
Published code Swaps Monitor for a Single Symbol
A simple utility for monitoring long and short swaps of a single symbol. If your broker-dealer's swaps are specified in points instead of account currency, this utility automatically converts points into account currency. Swaps are tripled on Wednesday. Horizontal and vertical alignment can be adjusted in the inputs.
Ryan L Johnson
Published code Brooky Trend Strength for MT5
This indicator calls 3 other subwindow indicators. All files go in your Indicators folder.
Ryan L Johnson
Ryan L Johnson
Here's a global map of where traders are using my software. It really is a small world.😊
Ryan L Johnson
Ryan L Johnson
I've seen quite a few posts about hardware selection, so I'm sharing my experience on that subject here...

The MT4/MT5 mobile phone/tablet apps are mainly for monitoring current price and open trades, and receiving alerts--not for chart analysis nor placing trades. The mobile apps have fewer built-in indicators than the desktop platforms, and the mobile apps cannot run custom indicators. Also, mobile wireless devices inherently have slower and less reliable connections to data and trade servers. For example, my desktop's hardwired Ethernet has a 1000 Mbps connection while my 5G wireless devices have a 433 Mbps connection on the same modem-router. Keep in mind that cheaper internet service subscriptions are proportionally slower.

And if my wireless device and I go outside of my router's wireless broadcast range, wireless internet service is lost and then I'm totally reliant on my device carrier's mobile data service. My mobile data connection is never as fast as my home network connection. Therefore, I never use MT5 mobile for trading analysis nor placing trades. I only use it for receiving push notifications of disconnections between desktop MT5 and my broker-dealer's trade server, and notifications of trade executions (sent from my desktop platform).

Mac desktops are better than mobile devices but not best for running MT4/MT5. These trading platforms have been designed around the Windows pc operating system for decades. Metaquotes eventually created Mac "versions" so that more people can use the platforms without having to buy a new pc. However, Mac users generally must install and run virtual machine software and even so, the Mac functionality is never 100% on par with the pc functionality. Although Mac's are the gold standard for graphic design and desktop publishing, they are less than ideal for desktop trading.

Windows pc's have been the standard computers for both retail traders and commercial traders for decades. As retail traders, we have quite enough disadvantages to overcome. Commercial traders set up shop right next to exchange/market data centers, and they use pc's and/or field-programmable-gateway-array (FPGA) chipped computers. These folks are not using wireless devices (unless maybe, they're right on the floor of an exchange). Given the army that we're trading against, it makes no sense to disadvantage ourselves further by using workaround devices and slow/unreliable connections.
Ryan L Johnson
Published post The Biggest Reason Why 90% of Retail Traders Lose Money
This is not endorsement of any educational course, but there is truth in this guy's words...
123