Upload files to "static"

init
This commit is contained in:
2025-07-14 10:33:53 +00:00
parent 53adacdeb7
commit d2c777f0d4
5 changed files with 322 additions and 0 deletions

32
static/ema.js Normal file
View File

@ -0,0 +1,32 @@
/**
* Indicator Definition Object for EMA.
*/
const EMA_INDICATOR = {
name: 'EMA',
label: 'Exponential Moving Average',
usesBaseData: false, // This simple indicator uses the chart's currently displayed data
params: [
{ name: 'period', type: 'number', defaultValue: 20, min: 2 },
],
calculateFull: calculateFullEMA,
};
function calculateFullEMA(data, params) {
const period = params.period;
if (!data || data.length < period) return [];
let emaData = [];
const multiplier = 2 / (period + 1);
let sum = 0;
for (let i = 0; i < period; i++) {
sum += data[i].close;
}
let prevEma = sum / period;
emaData.push({ time: data[period - 1].time, value: prevEma });
for (let i = period; i < data.length; i++) {
const close = data[i].close;
const ema = (close - prevEma) * multiplier + prevEma;
emaData.push({ time: data[i].time, value: ema });
prevEma = ema;
}
return emaData;
}