Fast Fourier Transform - Cycle Extraction - page 69

 
mladen:
Tsar, Take a look at these 2 posts :
https://www.mql5.com/en/forum/178842/page45 https://www.mql5.com/en/forum/178842/page45
You will find some more info about it at those 2 posts

I will Check it. Thank's A lot...

 
irena:
Hi Tsar it's a low-pass FIR filter.it uses from past data until present data and didn't use from future data. traditionaly low-pass filter uses from past data and future data. for example by using SINC() function that produce coefficient of low-pass filter , everyone can produce filtered signal . in google search "FIR Low-pass filter introduction". in this indicator i use from past data till now and coefficient of SINC() function for low-pass filter and convolve they(CONVOLUTION FUNCTION). wn is cut of the low-pass filter. by using of this parameter you can make (harsh - smooth) trade of (no-lag ~lagged) output good luck

Hi irena,

I will Learn it.

Thank's so much for your Instructions in the LinkSites

Best Regards,

Tsar

 

A theory

Hi everyone

Robbins-Monroe algorithm uses for root finding of a noisy signal.

by calculating (taking) derivative from a noisy signal (that makes another noisy signal) and root finding of new noisy signal

could find the extremum that it shows maximum and minimum of the early noisy signal (for example 'close' signal).

is there anyone that interested in following this theory?

Thanks in advance!

 
irena:
Hi everyone

Robbins-Monroe algorithm uses for root finding of a noisy signal.

by calculating (taking) derivative from a noisy signal (that makes another noisy signal) and root finding of new noisy signal

could find the extremum that it shows maximum and minimum of the early noisy signal (for example 'close' signal).

is there anyone that interested in following this theory?

Thanks in advance!

An interesting idea, I would be interested in seeing it action

 

irena,

i`m interested to see some samples/charts of this idea too.

Sixer

 
mladen:
The problem is that in bandpass filters (FIR filters) the window has to be of certain "size" if it is to be used in the asymmetric way, otherwise if one uses just one half, the asymmetricity hits in the head. For example : length nn will be above the price, length nn+1 will be bellow the price and length nn+2 will be again above the price all depending on the length of the sample (and the prices that is "caught" by the "tail") rather then the price itself. I am oversimplifying here, but if one uses shorter "limit" and varies it by small steps (1 is perfect), it will be obvious very quickly what is actually happening with asymmetric sync() coefficients. Here is one example of a FIR filter with a "normal" (symmetrical) kernel that uses sync() (Lanczos in this case) for smoothing and in the lower sub-window is the representation of coefficients.

Hi mladen,

Which filter is that? (Main window).

And the coeff. representer?

 

That is a band pass (FIR) filter using Lanczos kernel (some more info of it can be found here : https://en.wikipedia.org/wiki/Lanczos_resampling ) for calculation

The coeff representer is a separate indicator I made in order to enable people to see what does the actual kernel used by a filter look like (since that filter can use 12 types of kernel for calculation)

vampiricaura:
Hi mladen,

Which filter is that? (Main window).

And the coeff. representer?
 

Here is one extract and a recursive form of Robbins-Monro algorithm (marked with 1.5 in this extract) :

As a comparison, here is a formula for exponential moving average :

alpha in EMA calculation is calculated as 2/(period+1). More "rudimentary" way is to calculate it as 1/(period) (which is know as Wilders EMA or SMMA, but the two (EMA on one side and SMMA - Wilders EMA on the other) are exactly the same for specific calculating periods). So, it seems that Robbins-Monro estimator algorithm is something in between the two since it's "alpha" is calculated as 1/(period+1)

As a result (if that is so) then, as an example, Robbins-Monro estimator for period 14 is equal to SMMA 15, for period 15 it is equal to SMMA 16 and so on

irena:
Hi everyone

Robbins-Monroe algorithm uses for root finding of a noisy signal.

by calculating (taking) derivative from a noisy signal (that makes another noisy signal) and root finding of new noisy signal

could find the extremum that it shows maximum and minimum of the early noisy signal (for example 'close' signal).

is there anyone that interested in following this theory?

Thanks in advance!
Files:
rm.gif  163 kb
 

PS: that page is from the "Stochastic Approximation and Recursive Algorithms and Applications" book By Harold J. Kushner, George Yin, and the part with Robbins-Monro algorithm can be found even in google online books

 
mladen:
Here is one extract and a recursive form of Robbins-Monro algorithm (marked with 1.5 in this extract) :

As a comparison, here is a formula for exponential moving average :

alpha in EMA calculation is calculated as 2/(period+1). More "rudimentary" way is to calculate it as 1/(period) (which is know as Wilders EMA or SMMA, but the two (EMA on one side and SMMA - Wilders EMA on the other) are exactly the same for specific calculating periods). So, it seems that Robbins-Monro estimator algorithm is something in between the two since it's "alpha" is calculated as 1/(period+1)

As a result (if that is so) then, as an example, Robbins-Monro estimator for period 14 is equal to SMMA 15, for period 15 it is equal to SMMA 16 and so on

Hi

in the formula(exponential moving average), alpha is a constant but in the recursive form it is a variable.

alpha is almost derivative of smoothed function then it varies in recursive loop.

in application used from 1/(n+1) for alpha and in recursive loop (n) increased.

for example below is a Matlab code for computing mean and variance of a random variable by

mean=0.2 and variance=1 ;

clear all;close all;clc;

n=4e7;

mu=0.2;

zn=mu+1*randn(1,n);

xmu=0;xsigma=0;

for i=1:n,

xmu=xmu+(1./(1+i))*(zn(1,i)-xmu);

xsigma=xsigma+(1./(1+i))*((zn(1,i)-mu)^2-xsigma);

end