MACD indicator - page 47

 

Macd(with "iZeroLag")

Thank you,

But I try to change, the Slow moving average with kama and I do not "get", could you try ...?

//

//

double price = iMA(NULL,0,1,0,MODE_SMA,AmaPrice,i);

if (i > Bars-AmaPeriod) { kAMAbuffer = price; continue; }

//

//

//

//

//

double efratio = 1.00;

double noise = 0.00;

double smooth;

double signal;

signal = MathAbs(price-iMA(NULL,0,1,0,MODE_SMA,AmaPrice,i+AmaPeriod));

diff = MathAbs(price-iMA(NULL,0,1,0,MODE_SMA,AmaPrice,i+1));

for (k=0;k<AmaPeriod;k++)

noise += diff;

//

//

//

//

//FastEMA,FastMaMode,AmaPeriod,AmaPrice,SlowEMA,SignalEMA,SignalMaMode,GCoeff,Price,,,,,,

if (noise != 0) efratio = signal/noise;

double price1 = iMA(NULL,0,1,0,MODE_SMA,Close,i);

smooth = MathPow(efratio*(fastend-slowend)+slowend,GCoeff);

kAMAbuffer = kAMAbuffer + smooth*(price-kAMAbuffer);

//

//

Thanks in advance.

 

...

You were asking for zero lag macd Anyway, since you are trying for the nth time and nobody answered you yet, and since it is weekend coming, this is how a macd that would use Perry Kaufman adaptive moving average (KAMA) original calculation as he described it in his book "trading systems and methods" should look like (signal line is KAMA too)

bebeshel:
Thank you,

But I try to change, the Slow moving average with kama and I do not "get", could you try ...?

//

//

double price = iMA(NULL,0,1,0,MODE_SMA,AmaPrice,i);

if (i > Bars-AmaPeriod) { kAMAbuffer = price; continue; }

//

//

//

//

//

double efratio = 1.00;

double noise = 0.00;

double smooth;

double signal;

signal = MathAbs(price-iMA(NULL,0,1,0,MODE_SMA,AmaPrice,i+AmaPeriod));

diff = MathAbs(price-iMA(NULL,0,1,0,MODE_SMA,AmaPrice,i+1));

for (k=0;k<AmaPeriod;k++)

noise += diff;

//

//

//

//

//FastEMA,FastMaMode,AmaPeriod,AmaPrice,SlowEMA,SignalEMA,SignalMaMode,GCoeff,Price,,,,,,

if (noise != 0) efratio = signal/noise;

double price1 = iMA(NULL,0,1,0,MODE_SMA,Close,i);

smooth = MathPow(efratio*(fastend-slowend)+slowend,GCoeff);

kAMAbuffer = kAMAbuffer + smooth*(price-kAMAbuffer);

//

//

Thanks in advance.
Files:
kama_macd.gif  22 kb
kama_macd.mq4  3 kb
 

...

In the kama MACD you have a function called iAma() and you also have an example how it is used to calculate signal line of the macd, so it is quite easy to adapt it to any indicator or a value that you wish to apply it to. You do not need to add any buffers or any other code than the one that is already in the kama MACD :

signal = iAma(macd,SignalPeriod,i,0);

0 as the last parameter is there because I assume you want to calculate just signal value that way. That is all you have to do to any MACD you wish and you will get a KAMA signal line of it

all the best

bebeshel:
would have to be something like, ...and yes is posible to combine "zero lag" y " kama",and... sorry.... but who is not seeking something new, ...
 

Macd(with "iZeroLag")

would have to be something like, ...and yes is posible to combine "zero lag" y " kama",and... sorry.... but who is not seeking something new, ...

Files:
macd_new.png  243 kb
macd_new_1.png  80 kb
 

Macd(with "iZeroLag")

For use in an EA ... work, do you see any problem ?

 

...

If I understand correctly what do you ask, there is no problem at all (Kaufman AMA does not recalculate nor does it repaint so it can be used in an EA without a danger of being mistaken). Also Kaufman AMA should not be confused with amibroker AMA (which is actually an EMA in "disguise" which allows passing a smoothing factor instead of length which (that calculation) is just the last step of Kaufman AMA)

But in my opinion Kaufman AMA should not be used as a simple EMA. Here is an example of 14,26 macd (same ones are on chart to make it more obvious what is the lower MACD showing) instead of default 12,26 :

One needs to experiment with it in order to get optimal results

bebeshel:
For use in an EA ... work, do you see any problem ?
Files:
kama_macd_1.gif  24 kb
 

Ask for macd price chart valued line to update nrp version

Pink line: macd valued line on price chart. Ask for updating to nrp version, means: if bar closed above or below valued line then change valued line color at once. Thanks in advance.

Files:
 

ask for macd price chart crossover to update MTF version

I don't know MT4 code. I want this indicator to update multitime frame.

Can somebody help me. Thank you very much in advance.

Files:
snap1.jpg  126 kb
 

Ama=sma?

Der Mladen;

daily arithmetic moving averages = SMA ?

AMA = SMA ?

 
fxbs:
v1.3 - symbol option added

MACD_OsMA_4ColorH_2LVar1.3_mtf.mq4

extern string symbol;

note_symbol = "enter EURUSD or GBPUSD etc; default -current Symbol";

Hi, fxbs

I very like MACD_OsMA_4ColorH_2LVar1.3_mtf.mq4

Can you tell me who develop this good indicator? I have an idea to upgrade this indicator more. If possible, tell me developer or source of it. Thanks

Reason: