|
"Curve Fitting Solutions" |
|
Simple Moving Average Method |
|
SMA = |
|
{
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
}
[ Initial Data Array(top): { 45.375, 45.500, 45.000, 43.625, 43.375, 43.125, 43.125, 44.250, 43.500, 44.375 } ]
[ Initial Data Array(bot): { 45.875, 46.750, 47.625, 48.000, 49.125, 48.750, 46.125, 46.750, 46.625, 46.000 } ]
Please0 enter only numbers
Please1 enter only numbers
Please2 enter only numbers
Please3 enter only numbers
Please4 enter only numbers
Please5 enter only numbers
Please6 enter only numbers
Please7 enter only numbers
Please8 enter only numbers
Please9 enter only numbers
Please10 enter only numbers
Please enter only numbers
Please enter only numbers
Please enter only numbers
Please enter only numbers
Please enter only numbers
Please enter only numbers
Please enter only numbers
Please enter only numbers
Please enter only numbers
|
IMPLEMENTATION
Curve Fitting Simple Moving Average
Moving averages is often used in analyzing time series data. It is widely applied in finance, particularly in technical analysis.
It can also be used as a generic smoothing operation, in which case the data need not be a time series.
A moving average series can be calculated for any time series. In finance it is most often applied to stock prices,
returns, or trading volumes. Moving averages are used to smooth out short-term fluctuations, thus highlighting longer-term
trends or cycles.
A moving average smooths data by replacing each data point with the average of the neighboring data points defined within
the time span.
A simple moving average (SMA) is the mean value of the previous n data points. For example,
a 5-day simple moving average of an opening price is the mean of the previous 5 days' opening prices. If those prices are
p0, p-1, p-2, p-3, p-4 then the moving average
is described by,
SMA = p0 + p-1 + p-2 + p-3 + p-4 / 5
|
In general, for n-day moving average,
SMA = (p0 + p-1 + p-2 + p-3 + p-4 / n) = 1/n ∑i=0 pi
|
When calculating successive values, a new value comes into the sum and an old value drops out, meaning a full summation each time
is unnecessary.
Technical analysis uses various popular values for n, like 10 days, 40 days, or 100 days. The period
selected depends on the kind of movement one is concentrating on, such as short, intermediate or long term.
Testing the Simple Average Moving Method
In order to test the Simple Average Moving Method as defined above, a new SimpleAverageMovingMethod()
static method has been added and executed. Supporting code and methods are not shown.
static void SimpleAverageMovingMethod();
{
ListBox1.Items.Clear();
double[] xarray = new double[] {t1, t2, t3, t4, t5, t6, t7, t8,
t9, t10, t11, t12, t13, t14, t15, t16,
t17, t18, t19, t20};
VectorR sma = CurveFitting.SimpleMovingAverage(data, 5);
ListBox1.Items.Add(" " + sma.ToString());
}
|
As a sample we provide the input data points using one double array using data of a stock for 20 days
(Data Array), and use to calculate a 5-day time frame n simple moving average.
The user can manipulate all values and try variations on the arrays themselves by
specifying new estimate values.
|
|
|