> > In essence (using control system terminology): > fast = Kfast * price + (1-Kfast)*fast_previous where > Kfast = 2/(fast_period+1) > > This is the basic equation of a low pass filter, represented in Laplace > transform as: T_fast(s) = 1/( tau_fast * 1 +1) > (I dint know an EMA was a low pass filter, learned something new). > >
Yes, here is a good wikipedia entry on the topic: http://en.wikipedia.org/wiki/Moving_average#Exponential_moving_average > > The problem I see is that everytime a period is selected the gain on the > velocity changes, forcing a change in a scale eslewhere. In order to make > the velocity have the SAME gain all the time (that is, consistently be a > velocity), one would need to divide value by (tau_slow - tau_fast) > > Correct. However, the thing is, the calculated derivative would be compared with some threshold in the strategy code, so it doesn't matter whether you divide it by a constant or not. Compare these two versions: 1. derivative = (fast-slow). Buy when derivative is greater than threshold T1. 2. derivative = (fast-slow) *2 / (slowPeriod-fastPeriod). Buy when derivative is greater than threshold T2. The two implementations above are equivalent when T1 = T2 * 2 / (slowPeriod-fastPeriod). So, while the second implementation is "more correct" as a way of calculating the derivative, it would affect the performance of the trading strategy in the same way. With the first implementation, you save on the unnecessary division. -- You received this message because you are subscribed to the Google Groups "JBookTrader" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/jbooktrader. For more options, visit https://groups.google.com/groups/opt_out.
