Simple Moving Average

No algorithm description given

Simple Moving Average This algorithm creates a Simple Moving Average for a time series. Table of Contents Introduction Inputs Outputs Algorithm Console Introduction This algorthm creates a simple moving average over the previous K datapoints in a timeseries graph. Inputs This algorithm has two input formats; JSON Formatting and Array Formatting. JSON Format { 
 "data":Double[],
 "lagTime": Int,
}
 { 
 "data": [0,1,2,3,4,5,6,20,8,9,10,11,12],
 "lagTime": 5
}
 data - _(required)_ - The timeseries input data you wish to create a simple moving average for, this algorithm assumes the values are evenly spaced. ( dx(1) == dx(n) ) lagTime - _(optional)_ - The lagtime for the average, if there is a lag of n, each point is replaced by the average of itself and the n points that proceeded it, or, if the point is within the lag factor of the the start of the series, with the average of it and all earlier points. Array Format [
 data: Double[],
 lagTime: Int
]
 [[0,1,2,3,4,5,6,20,8,9,10,11,12],5]
 data - _(required)_ - The timeseries input data you wish to create a simple moving average for, this algorithm assumes the values are evenly spaced. ( dx(1) == dx(n) ) lagTime - _(optional)_ - The lagtime for the average, if there is a lag of n, each point is replaced by the average of itself and the n points that proceeded it, or, if the point is within the lag factor of the the start of the series, with the average of it and all earlier points. Outputs This algorithm has json output for json input, and array output for array input. JSON Format { 
 "output": Double[]
}
 { 
 "output": [0, 0.5, 1, 1.5, 2, 3, 4, 7.6, 8.6, 9.6, 10.6, 11.6, 10]
}
 output - The simple moving average for your dataset. Array Format output: Double[]
 { 
 "output": [0, 0.5, 1, 1.5, 2, 3, 4, 7.6, 8.6, 9.6, 10.6, 11.6, 10]
}
 output - The simple moving average for your dataset.

Tags
(no tags)

Cost Breakdown

0 cr
royalty per call
1 cr
usage per second
avg duration

Cost Calculator

API call duration (sec)
×
API calls
=
Estimated cost
per calls
for large volume discounts
For additional details on how pricing works, see Algorithmia pricing.

No permissions required

This algorithm does not require any special permissions.


To understand more about how algorithm permissions work, see the permissions documentation.

1. Type your input

2. See the result

Running algorithm...

3. Use this algorithm

curl -X POST -d '{{input | formatInput:"curl"}}' -H 'Content-Type: application/json' -H 'Authorization: Simple YOUR_API_KEY' https://api.algorithmia.com/v1/algo/TimeSeries/SimpleMovingAverage/0.2.0
View cURL Docs
algo auth
# Enter API Key: YOUR_API_KEY
algo run algo://TimeSeries/SimpleMovingAverage/0.2.0 -d '{{input | formatInput:"cli"}}'
View CLI Docs
import com.algorithmia.*;
import com.algorithmia.algo.*;

String input = "{{input | formatInput:"java"}}";
AlgorithmiaClient client = Algorithmia.client("YOUR_API_KEY");
Algorithm algo = client.algo("algo://TimeSeries/SimpleMovingAverage/0.2.0");
AlgoResponse result = algo.pipeJson(input);
System.out.println(result.asJsonString());
View Java Docs
import com.algorithmia._
import com.algorithmia.algo._

val input = {{input | formatInput:"scala"}}
val client = Algorithmia.client("YOUR_API_KEY")
val algo = client.algo("algo://TimeSeries/SimpleMovingAverage/0.2.0")
val result = algo.pipeJson(input)
System.out.println(result.asJsonString)
View Scala Docs
var input = {{input | formatInput:"javascript"}};
Algorithmia.client("YOUR_API_KEY")
           .algo("algo://TimeSeries/SimpleMovingAverage/0.2.0")
           .pipe(input)
           .then(function(output) {
             console.log(output);
           });
View Javascript Docs
var input = {{input | formatInput:"javascript"}};
Algorithmia.client("YOUR_API_KEY")
           .algo("algo://TimeSeries/SimpleMovingAverage/0.2.0")
           .pipe(input)
           .then(function(response) {
             console.log(response.get());
           });
View NodeJS Docs
import Algorithmia

input = {{input | formatInput:"python"}}
client = Algorithmia.client('YOUR_API_KEY')
algo = client.algo('TimeSeries/SimpleMovingAverage/0.2.0')
print algo.pipe(input)
View Python Docs
library(algorithmia)

input <- {{input | formatInput:"r"}}
client <- getAlgorithmiaClient("YOUR_API_KEY")
algo <- client$algo("TimeSeries/SimpleMovingAverage/0.2.0")
result <- algo$pipe(input)$result
print(result)
View R Docs
require 'algorithmia'

input = {{input | formatInput:"ruby"}}
client = Algorithmia.client('YOUR_API_KEY')
algo = client.algo('TimeSeries/SimpleMovingAverage/0.2.0')
puts algo.pipe(input).result
View Ruby Docs
use algorithmia::*;

let input = {{input | formatInput:"rust"}};
let client = Algorithmia::client("YOUR_API_KEY");
let algo = client.algo("TimeSeries/SimpleMovingAverage/0.2.0");
let response = algo.pipe(input);
View Rust Docs
import Algorithmia

let input = "{{input | formatInput:"swift"}}";
let client = Algorithmia.client(simpleKey: "YOUR_API_KEY")
let algo = client.algo(algoUri: "TimeSeries/SimpleMovingAverage/0.2.0") { resp, error in
  print(resp)
}
View Swift Docs
Discussion
  • {{comment.username}}