ZhiJun Zhang / Profile
- Information
8+ years
experience
|
0
products
|
0
demo versions
|
0
jobs
|
0
signals
|
0
subscribers
|
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![Plotting trend lines based on fractals using MQL4 and MQL5](https://c.mql5.com/2/18/TrendLines_Fractals_Based.png)
The article describes the automation of trend lines plotting based on the Fractals indicator using MQL4 and MQL5. The article structure provides a comparative view of the solution for two languages. Trend lines are plotted using two last known fractals.
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![Programming EA's Modes Using Object-Oriented Approach](https://c.mql5.com/2/12/Expert_Advisor_modes_programming_img.png)
This article explains the idea of multi-mode trading robot programming in MQL5. Every mode is implemented with the object-oriented approach. Instances of both mode classes hierarchy and classes for testing are provided. Multi-mode programming of trading robots is supposed to take into account all peculiarities of every operational mode of an EA written in MQL5. Functions and enumeration are created for identifying the mode.
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![Identifying Trade Setups by Support, Resistance and Price Action](https://c.mql5.com/2/19/avatar.png)
This article shows how price action and the monitoring of support and resistance levels can be used for well-timed market entry. It discusses a trading system that effectively combines the two for the determination of trade setups. Corresponding MQL4 code is explained that can be utilized in the EAs based on these trading concepts.
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![](https://c.mql5.com/1/22/9z2.jpg)
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![](https://c.mql5.com/1/22/ag.jpg)
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![Create your own Market Watch using the Standard Library Classes](https://c.mql5.com/2/0/visual.png)
The new MetaTrader 5 client terminal and the MQL5 Language provides new opportunities for presenting visual information to the trader. In this article, we propose a universal and extensible set of classes, which handles all the work of organizing displaying of the arbitrary text information on the chart. The example of Market Watch indicator is presented.
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![Drawing Channels - Inside and Outside View](https://c.mql5.com/2/0/channels_MQL5.png)
I guess it won't be an exaggeration, if I say the channels are the most popular tool for the analysis of market and making trade decisions after the moving averages. Without diving deeply into the mass of trade strategies that use channels and their components, we are going to discuss the mathematical basis and the practical implementation of an indicator, which draws a channel determined by three extremums on the screen of the client terminal.
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![Bi-Directional Trading and Hedging of Positions in MetaTrader 5 Using the HedgeTerminal Panel, Part 1](https://c.mql5.com/2/17/HedgeTerminalaArticle200x200_2.png)
This article describes a new approach to hedging of positions and draws the line in the debates between users of MetaTrader 4 and MetaTrader 5 about this matter. The algorithms making such hedging reliable are described in layman's terms and illustrated with simple charts and diagrams. This article is dedicated to the new panel HedgeTerminal, which is essentially a fully featured trading terminal within MetaTrader 5. Using HedgeTerminal and the virtualization of the trade it offers, positions can be managed in the way similar to MetaTrader 4.
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![Common Errors in MQL4 Programs and How to Avoid Them](https://c.mql5.com/2/13/1152_84.png)
To avoid critical completion of programs, the previous version compiler handled many errors in the runtime environment. For example, division by zero or array out of range are critical errors and usually lead to program crash. The new compiler can detect actual or potential sources of errors and improve code quality. In this article, we discuss possible errors that can be detected during compilation of old programs and see how to fix them.
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![Do Traders Need Services From Developers?](https://c.mql5.com/2/10/MQL5_freelance_avatar.png)
Algorithmic trading becomes more popular and needed, which naturally led to a demand for exotic algorithms and unusual tasks. To some extent, such complex applications are available in the Code Base or in the Market. Although traders have simple access to those apps in a couple of clicks, these apps may not satisfy all needs in full. In this case, traders look for developers who can write a desired application in the MQL5 Freelance section and assign an order.
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)
![ZhiJun Zhang](https://c.mql5.com/avatar/2017/7/595B18E7-0662.jpg)