NT4 EUR-USD from 8-8-08
I'm using Bill Poulos's FOREX Profit Accelerator System and he mentions that that ADX in MT4 is calculated differently than ADX in other software. It certainly looks a lot different. Does anyone have code for ADX as implemented in VT Trader. There are two parameters rather than one - for example, ADX (14, 14). Looking at StockCharts.com, it appears that ADX typically has one parameter as in MT4. VT Trader seems highly regarded. I couldn't get the complete code from VT Trader, but did get the following (see below).
The images below show Friday's EUR/USD charts from MetaTrader 4 and VT Trader. The ADX horizontal line is 16 in both cases. The horizontal lines for the ATR on both charts are 125, 150 and 175 pips.
I would also appreciate it if you could confirm that the MT4 day ends and starts at 5 PM ET. Thanks.
Your help would be appreciated.
PlusDM:= if(H>Ref(H,-1) AND L>=Ref(L,-1), H-Ref(H,-1),
if(H>Ref(H,-1) AND L<Ref(L,-1) AND H-Ref(H,-1)>Ref(L,-1)-L, H-Ref(H,-1),
PlusDI:= 100 * Wilders(PlusDM,Pr)/Wilders(Tr,Pr);
MinusDM:= if(L<Ref(L,-1) AND H<=Ref(H,-1), Ref(L,-1)-L,
if(H>Ref(H,-1) AND L<Ref(L,-1) AND H-Ref(H,-1)<Ref(L,-1)-L, Ref(L,-1)-L,
MinusDI:= 100 * Wilders(MinusDM,Pr)/Wilders(Tr,Pr);
DISum:= PlusDI + MinusDI;
_ADX:= 100 * Wilders(DIDif/DISum,SmPr);
Average Directional Movement Index (ADX)
The Average Directional Movement Index (ADX) is a momentum indicator developed by J. Welles Wilder and described in his book "New Concepts in Technical Trading Systems", written in 1978. The ADX is constructed from two other Wilders' indicators: the Positive Directional indicator (+DI) and the Negative Directional Indicator (-DI). The +DI and -DI indicators are commonly referred to as the Directional Movement Index. Combining the +/-DI and applying a Wilders() smoothing filter results in the final ADX value.
The ADX's main purpose is to measure the strength of market trends on a 0-100 scale; the higher the ADX value the stronger the trend. It should be noted that while the direction of price is important to the ADX's calculation, the ADX itself is not a directional indicator. Values above 40 indicate very strong trending while values below 20 indicate non-trending or ranging market conditions.
Traders typically use the ADX as a filter along with other indicators to create a more concrete trading methodology. Many traders view ADX turning up from below 20 as an early signal of a new emerging trend while, conversely, a declining ADX turning down from above 40 as deterioration of the current trend. Wilder suggests using the ADX as part of a system that includes the +DI and -DI indicators. (See the Directional Movement System indicator for additional details)
Users can define the DMI Periods and the ADX Smoothing Periods to allow for full customization of the ADX indicator. Often times these values will be the set the same, but users are encouraged to experiment with a variety of their own combinations of values. A horizontal reference line is displayed at the +20 level.
MT4 EUR-USD from 8-8-08
VT Trader EUR-USD from 8-8-08
Have you have any answer on this? I have the same problem.
i need full adx dmi indicator set like adx,adxr,dx,di+,di- all five of them like in metastock.
standart mt4 has 3 of them. dmi that you post it above has four of them.
thanks for quick reply Rosh. how can change it to add or see for DX line.i do not have any idea.
Try to change by similar way:
#property indicator_buffers 5
#property indicator_color1 LightBlue
#property indicator_width1 2
#property indicator_color2 Lime
#property indicator_width2 1
#property indicator_style2 2
#property indicator_color3 Tomato
#property indicator_width3 1
#property indicator_style3 2
#property indicator_color4 Orange
#property indicator_width4 2
#property indicator_color5 Red
#property indicator_level1 20
//---- input parameters
extern int MA_Length =1; // Period of additional smoothing
extern int DMI_Length =14; // Period of DMI
extern int ADX_Length =14; // Period of ADX
extern int ADXR_Length =14; // Period of ADXR
extern int UseADX =1; // Use ADX: 0-off,1-on
extern int UseADXR =1; // Use ADXR: 0-off,1-on
//| Custom indicator initialization function |
i did modify as you show
but i get red just flat line for DX.
so it is not good to trade.