[Date Index]
[Thread Index]
[Author Index]
Re: time based moving average (and other newbie mathematica questions)
*To*: mathgroup at smc.vnet.net
*Subject*: [mg92746] Re: time based moving average (and other newbie mathematica questions)
*From*: Peter Pein <petsie at dordos.net>
*Date*: Sun, 12 Oct 2008 04:31:59 -0400 (EDT)
*References*: <gcn496$751$1@smc.vnet.net>
Hi Falcon,
if I understood you correctly, try the following code:
data = Sort[({#1, Sqrt[#1] + Sin[#1]} & ) /@ RandomReal[{0, 100},
{100}]];
ListPlot[data, Joined -> True]
IntervalMovingAverage[dat_List, width_, index_: 1] :=
If[index =!= 1, Sort, Identity][
Mean /@
Function[pos, Select[dat, pos[[index]] <= #1[[index]] <=
pos[[index]] + width & ]] /@ dat]
ListPlot[IntervalMovingAverage[data, 5], Joined -> True]
ListPlot[IntervalMovingAverage[data, 20], Joined -> True]
ListPlot[IntervalMovingAverage[data, 3, 2], Joined -> True]
hope this helps,
Peter
falcon schrieb:
> Hi,
> I see that Mathematica provides a couple of moving average functions.
> As far as I can tell, they are based on the number of elements in an
> array. Is there a function for doing moving average based on time?
> In other words, if I pass in intra-day data containing prices, times
> (up to a millisecond) and some other fields, can I get Mathematica to
> to give me a 5 minute moving average rather than moving average of the
> last 100 trades? Obviously this five minute window may contain any
> number of elements.
>
> Secondly, along the same idea, I have a file with a large number of
> stocks. They are all mixed in (the file is in chronological order).
> Is there an sql type 'group by' command that lets me see moving
> averages for each stock?
>
> Third, if I'm able to get moving average for each stock in the list,
> can I plot all of them in one command (I guess this technique is
> called "small multiples" in charting vernacular). Obviously I will
> only have 20 or 30 stocks.
>
> Thanks
>
Prev by Date:
**Re: Re: Prime Puzzle with Mathematica**
Next by Date:
** Re: time based moving average (and other newbie mathematica questions)**
Previous by thread:
**time based moving average (and other newbie mathematica questions)**
Next by thread:
** Re: time based moving average (and other newbie mathematica questions)**
| |