lightweight-charts-indicators 0.15.3 → 0.15.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +34 -76
- package/dist/index.d.ts +1 -1
- package/dist/index.mjs +41 -83
- package/dist/sources.mjs +1 -1
- package/dist/standard/correlation-coefficient.d.ts.map +1 -1
- package/dist/standard/linreg-channel.d.ts.map +1 -1
- package/dist/standard/visible-average-price.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -50586,7 +50586,7 @@ function calculate420(bars, inputs = {}, chart) {
|
|
|
50586
50586
|
otherSymbolChart(bars, chart),
|
|
50587
50587
|
{ other: chart?.symbolInfo?.(symbol) }
|
|
50588
50588
|
);
|
|
50589
|
-
const correlation = import_oakscriptjs385.ta.correlation(import_oakscriptjs385.Series.fromArray(bars,
|
|
50589
|
+
const correlation = import_oakscriptjs385.ta.correlation(import_oakscriptjs385.Series.fromArray(bars, (0, import_oakscriptjs385.getSource)(bars, source)), import_oakscriptjs385.Series.fromArray(bars, requested), length).toArray();
|
|
50590
50590
|
return {
|
|
50591
50591
|
metadata: { title: metadata420.title, shorttitle: metadata420.shortTitle, overlay: metadata420.overlay },
|
|
50592
50592
|
plots: {
|
|
@@ -50857,28 +50857,6 @@ var metadata423 = {
|
|
|
50857
50857
|
};
|
|
50858
50858
|
var gt21 = (a, b) => a - b > 1e-10;
|
|
50859
50859
|
var eq4 = (a, b) => Math.abs(a - b) <= 1e-10;
|
|
50860
|
-
function sourceOf3(bar, src) {
|
|
50861
|
-
switch (src) {
|
|
50862
|
-
case "open":
|
|
50863
|
-
return bar.open;
|
|
50864
|
-
case "high":
|
|
50865
|
-
return bar.high;
|
|
50866
|
-
case "low":
|
|
50867
|
-
return bar.low;
|
|
50868
|
-
case "hl2":
|
|
50869
|
-
return (bar.high + bar.low) / 2;
|
|
50870
|
-
case "hlc3":
|
|
50871
|
-
return (bar.high + bar.low + bar.close) / 3;
|
|
50872
|
-
case "hlcc4":
|
|
50873
|
-
return (bar.high + bar.low + bar.close + bar.close) / 4;
|
|
50874
|
-
case "ohlc4":
|
|
50875
|
-
return (bar.open + bar.high + bar.low + bar.close) / 4;
|
|
50876
|
-
case "volume":
|
|
50877
|
-
return bar.volume ?? NaN;
|
|
50878
|
-
default:
|
|
50879
|
-
return bar.close;
|
|
50880
|
-
}
|
|
50881
|
-
}
|
|
50882
50860
|
function calculate423(bars, inputs = {}) {
|
|
50883
50861
|
const cfg = { ...defaultInputs423, ...inputs };
|
|
50884
50862
|
const result = {
|
|
@@ -50893,7 +50871,8 @@ function calculate423(bars, inputs = {}) {
|
|
|
50893
50871
|
const last = n - 1;
|
|
50894
50872
|
if (n === 0 || length <= 1)
|
|
50895
50873
|
return result;
|
|
50896
|
-
const
|
|
50874
|
+
const srcValues = (0, import_oakscriptjs388.getSource)(bars, cfg.source);
|
|
50875
|
+
const src = (i) => last - i >= 0 ? srcValues[last - i] : NaN;
|
|
50897
50876
|
const high16 = (i) => last - i >= 0 ? bars[last - i].high : NaN;
|
|
50898
50877
|
const low17 = (i) => last - i >= 0 ? bars[last - i].low : NaN;
|
|
50899
50878
|
let sumX = 0;
|
|
@@ -53071,39 +53050,18 @@ var metadata435 = {
|
|
|
53071
53050
|
};
|
|
53072
53051
|
var usesVisibleRange = true;
|
|
53073
53052
|
var PLOT_OFFSET = -1e5;
|
|
53074
|
-
function sourceOf4(b, source) {
|
|
53075
|
-
switch (source) {
|
|
53076
|
-
case "open":
|
|
53077
|
-
return b.open;
|
|
53078
|
-
case "high":
|
|
53079
|
-
return b.high;
|
|
53080
|
-
case "low":
|
|
53081
|
-
return b.low;
|
|
53082
|
-
case "hl2":
|
|
53083
|
-
return (b.high + b.low) / 2;
|
|
53084
|
-
case "hlc3":
|
|
53085
|
-
return (b.high + b.low + b.close) / 3;
|
|
53086
|
-
case "ohlc4":
|
|
53087
|
-
return (b.open + b.high + b.low + b.close) / 4;
|
|
53088
|
-
case "hlcc4":
|
|
53089
|
-
return (b.high + b.low + b.close + b.close) / 4;
|
|
53090
|
-
case "volume":
|
|
53091
|
-
return b.volume ?? NaN;
|
|
53092
|
-
default:
|
|
53093
|
-
return b.close;
|
|
53094
|
-
}
|
|
53095
|
-
}
|
|
53096
53053
|
function calculate435(bars, inputs = {}, chart) {
|
|
53097
53054
|
const { src } = { ...defaultInputs435, ...inputs };
|
|
53098
53055
|
const n = bars.length;
|
|
53099
53056
|
const toMs = chart?.timeUnit === "ms" ? 1 : 1e3;
|
|
53100
53057
|
const { leftTime, rightTime } = visibleRangeOf(bars, chart);
|
|
53101
53058
|
const srcVals = import_oakscriptjs400.array.new_float();
|
|
53102
|
-
|
|
53059
|
+
const values = (0, import_oakscriptjs400.getSource)(bars, src);
|
|
53060
|
+
bars.forEach((b, i) => {
|
|
53103
53061
|
const t = b.time * toMs;
|
|
53104
53062
|
if (t >= leftTime && t <= rightTime)
|
|
53105
|
-
import_oakscriptjs400.array.unshift(srcVals,
|
|
53106
|
-
}
|
|
53063
|
+
import_oakscriptjs400.array.unshift(srcVals, values[i]);
|
|
53064
|
+
});
|
|
53107
53065
|
const last = n > 0 ? import_oakscriptjs400.array.avg(srcVals) : NaN;
|
|
53108
53066
|
const shownBar = n - 1 + PLOT_OFFSET;
|
|
53109
53067
|
const plot0 = bars.map((b, j) => ({ time: b.time, value: j === shownBar ? last : NaN }));
|
|
@@ -136641,7 +136599,7 @@ function calculate1057(bars, inputs = {}) {
|
|
|
136641
136599
|
}
|
|
136642
136600
|
}
|
|
136643
136601
|
};
|
|
136644
|
-
const
|
|
136602
|
+
const sourceOf9 = (name) => bars.map((b) => {
|
|
136645
136603
|
switch (name) {
|
|
136646
136604
|
case "High":
|
|
136647
136605
|
return b.high;
|
|
@@ -136698,7 +136656,7 @@ function calculate1057(bars, inputs = {}) {
|
|
|
136698
136656
|
NN.forEach((nn, k) => {
|
|
136699
136657
|
const s = section(cfg, nn);
|
|
136700
136658
|
const [c3, sc] = SECTION_RGB[k];
|
|
136701
|
-
const src =
|
|
136659
|
+
const src = sourceOf9(s.source);
|
|
136702
136660
|
const m = ma2(src, s.length, s.type);
|
|
136703
136661
|
refma.push(m);
|
|
136704
136662
|
refmaHigh.push(selects[k] ? ma2(high16, s.length, s.type) : zeros);
|
|
@@ -183150,8 +183108,8 @@ function calculate1333(bars, inputs = {}, chart) {
|
|
|
183150
183108
|
const txtSize = cfg.textSize === "Tiny" ? "tiny" : cfg.textSize === "Normal" ? "normal" : "small";
|
|
183151
183109
|
const signalSize = cfg.signalSizeInput === "Tiny" ? "tiny" : cfg.signalSizeInput === "Normal" ? "normal" : cfg.signalSizeInput === "Large" ? "large" : cfg.signalSizeInput === "Huge" ? "huge" : "small";
|
|
183152
183110
|
const sideCost = (fillPrice) => Math.abs(fillPrice) * cfg.commissionPct / 100 + (cfg.spreadTicks * 0.5 + cfg.slipTicks) * MINTICK;
|
|
183153
|
-
const
|
|
183154
|
-
const source = S2(bars.map(
|
|
183111
|
+
const sourceOf9 = (b) => cfg.sourceChoice === "HL2" ? (b.high + b.low) / 2 : cfg.sourceChoice === "HLC3" ? (b.high + b.low + b.close) / 3 : cfg.sourceChoice === "OHLC4" ? (b.open + b.high + b.low + b.close) / 4 : b.close;
|
|
183112
|
+
const source = S2(bars.map(sourceOf9));
|
|
183155
183113
|
const emaFast = A7(import_oakscriptjs1289.ta.ema(source, fastLen));
|
|
183156
183114
|
const emaSlow = A7(import_oakscriptjs1289.ta.ema(source, slowLen));
|
|
183157
183115
|
const emaTrend = A7(import_oakscriptjs1289.ta.ema(source, trendLen));
|
|
@@ -183217,7 +183175,7 @@ function calculate1333(bars, inputs = {}, chart) {
|
|
|
183217
183175
|
group2.forEach((g, i) => {
|
|
183218
183176
|
lastOf[g] = i;
|
|
183219
183177
|
});
|
|
183220
|
-
const htfSource = import_oakscriptjs1289.Series.fromArray(htf, htf.map(
|
|
183178
|
+
const htfSource = import_oakscriptjs1289.Series.fromArray(htf, htf.map(sourceOf9));
|
|
183221
183179
|
const fast = A7(import_oakscriptjs1289.ta.ema(htfSource, fastLen));
|
|
183222
183180
|
const slow = A7(import_oakscriptjs1289.ta.ema(htfSource, slowLen));
|
|
183223
183181
|
for (let i = 0; i < n; i++) {
|
|
@@ -255415,7 +255373,7 @@ var EPS899 = 1e-10;
|
|
|
255415
255373
|
var gt896 = (a, b) => a - b > EPS899;
|
|
255416
255374
|
var lt707 = (a, b) => b - a > EPS899;
|
|
255417
255375
|
var eq200 = (a, b) => !isNaN(a) && !isNaN(b) && !(Math.abs(a - b) > EPS899);
|
|
255418
|
-
function
|
|
255376
|
+
function sourceOf3(bars, name) {
|
|
255419
255377
|
return bars.map((b) => {
|
|
255420
255378
|
switch (name) {
|
|
255421
255379
|
case "open":
|
|
@@ -255595,7 +255553,7 @@ function calculate1543(bars, inputs = {}, chart) {
|
|
|
255595
255553
|
htf = sec.htf;
|
|
255596
255554
|
toChart = (values) => (0, import_oakscriptjs1498.mapToChart)(values, sec.group, sec.latest, false, false);
|
|
255597
255555
|
}
|
|
255598
|
-
const maMtf = toChart(movingAverage4(cfg.maType,
|
|
255556
|
+
const maMtf = toChart(movingAverage4(cfg.maType, sourceOf3(htf, cfg.source), htf, cfg.len));
|
|
255599
255557
|
const closeH = toChart(htf.map((b) => b.close));
|
|
255600
255558
|
const lowH = toChart(htf.map((b) => b.low));
|
|
255601
255559
|
const highH = toChart(htf.map((b) => b.high));
|
|
@@ -261483,7 +261441,7 @@ var RED123 = "#FF5252";
|
|
|
261483
261441
|
var BLACK38 = "#363A45";
|
|
261484
261442
|
var WHITE44 = "#FFFFFF";
|
|
261485
261443
|
var gt912 = (a, b) => a - b > 1e-10;
|
|
261486
|
-
function
|
|
261444
|
+
function sourceOf4(b, s) {
|
|
261487
261445
|
switch (s) {
|
|
261488
261446
|
case "open":
|
|
261489
261447
|
return b.open;
|
|
@@ -261521,13 +261479,13 @@ function calculate1562(bars, inputs = {}, chart) {
|
|
|
261521
261479
|
const length = cfg.length;
|
|
261522
261480
|
const A7 = (s) => s.toArray().map((v) => v ?? NaN);
|
|
261523
261481
|
const { htf, latest } = timeframeBars34(bars, cfg.resolution, chart);
|
|
261524
|
-
const htfSrc = import_oakscriptjs1517.Series.fromArray(htf, htf.map((b2) =>
|
|
261482
|
+
const htfSrc = import_oakscriptjs1517.Series.fromArray(htf, htf.map((b2) => sourceOf4(b2, cfg.source)));
|
|
261525
261483
|
const lr0 = A7(import_oakscriptjs1517.ta.linreg(htfSrc, length, cfg.offset));
|
|
261526
261484
|
const lr1 = A7(import_oakscriptjs1517.ta.linreg(htfSrc, length, cfg.offset + 1));
|
|
261527
261485
|
const onChart = (v) => import_oakscriptjs1517.Series.fromArray(bars, latest.map((g) => g >= 0 ? v[g] : NaN));
|
|
261528
261486
|
const linreg2 = A7(import_oakscriptjs1517.ta.sma(onChart(lr0), cfg.smoothing));
|
|
261529
261487
|
const linregP = A7(import_oakscriptjs1517.ta.sma(onChart(lr1), cfg.smoothing));
|
|
261530
|
-
const src = bars.map((b2) =>
|
|
261488
|
+
const src = bars.map((b2) => sourceOf4(b2, cfg.source));
|
|
261531
261489
|
const interval = (0, import_oakscriptjs12.barInterval)(bars);
|
|
261532
261490
|
const T20 = (index) => (0, import_oakscriptjs12.barTime)(bars, index, interval);
|
|
261533
261491
|
(0, import_oakscriptjs1517.resetDrawings)({ line: 50 });
|
|
@@ -267440,7 +267398,7 @@ var metadata1578 = {
|
|
|
267440
267398
|
var EPS929 = 1e-10;
|
|
267441
267399
|
var gt925 = (a, b) => a - b > EPS929;
|
|
267442
267400
|
var lt730 = (a, b) => b - a > EPS929;
|
|
267443
|
-
function
|
|
267401
|
+
function sourceOf5(b, src) {
|
|
267444
267402
|
switch (src) {
|
|
267445
267403
|
case "open":
|
|
267446
267404
|
return b.open;
|
|
@@ -267466,7 +267424,7 @@ function calculate1578(bars, inputs = {}) {
|
|
|
267466
267424
|
const prd = Math.trunc(cfg.prd);
|
|
267467
267425
|
const ppNum = Math.trunc(cfg.ppNum);
|
|
267468
267426
|
const A7 = (s) => s.toArray().map((v) => v ?? NaN);
|
|
267469
|
-
const srcSeries = new import_oakscriptjs1533.Series(bars, (b) =>
|
|
267427
|
+
const srcSeries = new import_oakscriptjs1533.Series(bars, (b) => sourceOf5(b, cfg.src));
|
|
267470
267428
|
const osc = cfg.indi === "RSI" ? A7(import_oakscriptjs1533.ta.rsi(srcSeries, cfg.rsiLen)) : cfg.indi === "CCI" ? A7(import_oakscriptjs1533.ta.cci(srcSeries, cfg.cciLen)) : cfg.indi === "Momentum" ? A7(import_oakscriptjs1533.ta.cci(srcSeries, cfg.momLen)) : A7(import_oakscriptjs1533.ta.obv(bars));
|
|
267471
267429
|
const oscSeries = import_oakscriptjs1533.Series.fromArray(bars, osc);
|
|
267472
267430
|
const ph = A7(import_oakscriptjs1533.ta.pivothigh(oscSeries, prd, prd));
|
|
@@ -273424,7 +273382,7 @@ function habClose(sub, cfg) {
|
|
|
273424
273382
|
}
|
|
273425
273383
|
return res;
|
|
273426
273384
|
}
|
|
273427
|
-
function
|
|
273385
|
+
function sourceOf6(bars, cfg) {
|
|
273428
273386
|
const opt = cfg.srcoption;
|
|
273429
273387
|
if (opt.startsWith("HAB ")) {
|
|
273430
273388
|
const hc = habClose(bars, cfg);
|
|
@@ -273498,7 +273456,7 @@ function sourceOf8(bars, cfg) {
|
|
|
273498
273456
|
function calculate1594(bars, inputs = {}) {
|
|
273499
273457
|
const cfg = { ...defaultInputs1594, ...inputs };
|
|
273500
273458
|
const n = bars.length;
|
|
273501
|
-
let src =
|
|
273459
|
+
let src = sourceOf6(bars, cfg);
|
|
273502
273460
|
if (cfg.filterop === "Both" || cfg.filterop === "Price" && gt937(cfg.filter, 0)) {
|
|
273503
273461
|
src = stdFilter(bars, src, cfg.filterperiod, cfg.filter);
|
|
273504
273462
|
}
|
|
@@ -290158,7 +290116,7 @@ function calculate1639(bars, inputs = {}) {
|
|
|
290158
290116
|
const A7 = (s) => s.toArray().map((v) => v === null || v === void 0 ? NaN : v);
|
|
290159
290117
|
const S2 = (a) => import_oakscriptjs1594.Series.fromArray(bars, a);
|
|
290160
290118
|
const field = (f) => bars.map(f);
|
|
290161
|
-
const
|
|
290119
|
+
const sourceOf9 = (s) => {
|
|
290162
290120
|
switch (s) {
|
|
290163
290121
|
case "open":
|
|
290164
290122
|
return field((b) => b.open);
|
|
@@ -290187,7 +290145,7 @@ function calculate1639(bars, inputs = {}) {
|
|
|
290187
290145
|
const closeS = S2(close11);
|
|
290188
290146
|
const scale = cfg.scale;
|
|
290189
290147
|
const lengthM = Math.trunc(cfg.lengthM);
|
|
290190
|
-
const srcM =
|
|
290148
|
+
const srcM = sourceOf9(cfg.srcM);
|
|
290191
290149
|
const hh = A7(import_oakscriptjs1594.ta.highest(highS, lengthM));
|
|
290192
290150
|
const ll = A7(import_oakscriptjs1594.ta.lowest(lowS, lengthM));
|
|
290193
290151
|
const smaM = A7(import_oakscriptjs1594.ta.sma(closeS, lengthM));
|
|
@@ -290257,7 +290215,7 @@ function calculate1639(bars, inputs = {}) {
|
|
|
290257
290215
|
const low58 = A7(import_oakscriptjs1594.ta.lowest(lowS, 58));
|
|
290258
290216
|
const var7 = low58.map((v) => !Number.isNaN(v) && v !== 0 ? 1 : 0);
|
|
290259
290217
|
const var8 = A7(import_oakscriptjs1594.ta.ema(S2(low17.map((v, i) => le303(v, var5[i]) ? (var4[i] + var6[i] * 2) / 2 : 0)), 3)).map((v, i) => v / 618 * var7[i]);
|
|
290260
|
-
const src =
|
|
290218
|
+
const src = sourceOf9(cfg.src);
|
|
290261
290219
|
const srcS = S2(src);
|
|
290262
290220
|
const rsi = A7(import_oakscriptjs1594.ta.rsi(srcS, Math.trunc(cfg.len)));
|
|
290263
290221
|
const rsiScale = rsi.map((v, i) => sc(v + cfg.rsiApart, i));
|
|
@@ -290272,7 +290230,7 @@ function calculate1639(bars, inputs = {}) {
|
|
|
290272
290230
|
const divergence = rsiFast.map((v, i) => v - rsiSlow[i]);
|
|
290273
290231
|
const kSto = A7(import_oakscriptjs1594.ta.sma(import_oakscriptjs1594.ta.stoch(closeS, highS, lowS, Math.trunc(cfg.periodK)), Math.trunc(cfg.smoothK)));
|
|
290274
290232
|
const dSto = A7(import_oakscriptjs1594.ta.sma(S2(kSto), Math.trunc(cfg.periodD)));
|
|
290275
|
-
const hl2S = S2(
|
|
290233
|
+
const hl2S = S2(sourceOf9("hl2"));
|
|
290276
290234
|
const aoSlow = A7(import_oakscriptjs1594.ta.sma(hl2S, Math.trunc(cfg.slowLength)));
|
|
290277
290235
|
const ao = A7(import_oakscriptjs1594.ta.sma(hl2S, Math.trunc(cfg.fastLength))).map((v, i) => v - aoSlow[i]);
|
|
290278
290236
|
const histColor = (h, i) => {
|
|
@@ -290291,7 +290249,7 @@ function calculate1639(bars, inputs = {}) {
|
|
|
290291
290249
|
const macd = macd1.map((v) => v * cfg.macdScale);
|
|
290292
290250
|
const sign = signal.map((v) => v * cfg.macdScale);
|
|
290293
290251
|
const m = Math.trunc(cfg.m);
|
|
290294
|
-
const tprice =
|
|
290252
|
+
const tprice = sourceOf9(cfg.srcTprice);
|
|
290295
290253
|
const tpriceS = S2(tprice);
|
|
290296
290254
|
const pvi = A7(import_oakscriptjs1594.ta.pvi(bars));
|
|
290297
290255
|
const pvim = A7(import_oakscriptjs1594.ta.ema(S2(pvi), m));
|
|
@@ -290303,7 +290261,7 @@ function calculate1639(bars, inputs = {}) {
|
|
|
290303
290261
|
const nvimax = A7(import_oakscriptjs1594.ta.highest(S2(nvim), Math.trunc(cfg.longitudNVI)));
|
|
290304
290262
|
const nvimin = A7(import_oakscriptjs1594.ta.lowest(S2(nvim), Math.trunc(cfg.longitudNVI)));
|
|
290305
290263
|
const azul = nvi.map((v, i) => (v - nvim[i]) * 100 / (nvimax[i] - nvimin[i]));
|
|
290306
|
-
const xmf = A7(import_oakscriptjs1594.ta.mfi(S2(
|
|
290264
|
+
const xmf = A7(import_oakscriptjs1594.ta.mfi(S2(sourceOf9(cfg.srcMfi)), Math.trunc(cfg.longitudMFI), S2(field((b) => b.volume ?? NaN))));
|
|
290307
290265
|
const boLength = Math.trunc(cfg.boLength);
|
|
290308
290266
|
const basisK = A7(import_oakscriptjs1594.ta.sma(tpriceS, boLength));
|
|
290309
290267
|
const devK = A7(import_oakscriptjs1594.ta.stdev(tpriceS, boLength)).map((v) => cfg.mult * v);
|
|
@@ -290321,12 +290279,12 @@ function calculate1639(bars, inputs = {}) {
|
|
|
290321
290279
|
const media = A7(import_oakscriptjs1594.ta.ema(S2(marron), m));
|
|
290322
290280
|
const konBull = A7(import_oakscriptjs1594.ta.crossover(S2(marron), S2(media)));
|
|
290323
290281
|
const konBear = A7(import_oakscriptjs1594.ta.crossunder(S2(marron), S2(media)));
|
|
290324
|
-
const cci = A7(import_oakscriptjs1594.ta.cci(S2(
|
|
290282
|
+
const cci = A7(import_oakscriptjs1594.ta.cci(S2(sourceOf9(cfg.cciSrc)), Math.trunc(cfg.cciLen)));
|
|
290325
290283
|
const rsiMFI = A7(import_oakscriptjs1594.ta.sma(
|
|
290326
290284
|
S2(bars.map((b) => (b.close - b.open) / (b.high - b.low) * cfg.rsiMFIMultiplier)),
|
|
290327
290285
|
Math.trunc(cfg.rsiMFIperiod)
|
|
290328
290286
|
)).map((v) => v - cfg.rsiMFIPosY);
|
|
290329
|
-
const ap =
|
|
290287
|
+
const ap = sourceOf9("hlc3");
|
|
290330
290288
|
const esa = A7(import_oakscriptjs1594.ta.ema(S2(ap), Math.trunc(cfg.n1)));
|
|
290331
290289
|
const dw = A7(import_oakscriptjs1594.ta.ema(S2(ap.map((v, i) => Math.abs(v - esa[i]))), Math.trunc(cfg.n1)));
|
|
290332
290290
|
const ci = ap.map((v, i) => (v - esa[i]) / (0.015 * dw[i]));
|
|
@@ -298536,7 +298494,7 @@ var eq228 = (a, b) => Math.abs(a - b) <= EPS1002;
|
|
|
298536
298494
|
var ne117 = (a, b) => !isNaN(a) && !isNaN(b) && Math.abs(a - b) > EPS1002;
|
|
298537
298495
|
var cnew2 = (c2, t) => String(import_oakscriptjs1613.color.new(c2, t));
|
|
298538
298496
|
var WHITE56 = "#FFFFFF";
|
|
298539
|
-
function
|
|
298497
|
+
function sourceOf7(bars, name) {
|
|
298540
298498
|
switch (name) {
|
|
298541
298499
|
case "open":
|
|
298542
298500
|
return bars.map((b) => b.open);
|
|
@@ -298609,7 +298567,7 @@ function calculate1658(bars, inputs = {}, chart) {
|
|
|
298609
298567
|
for (let i = 0; i < n; i++) {
|
|
298610
298568
|
haOpen.push(i === 0 || isNaN(haOpen[i - 1]) ? (open11[i] + close11[i]) / 2 : (haOpen[i - 1] + ohlc4[i - 1]) / 2);
|
|
298611
298569
|
}
|
|
298612
|
-
const srcPrice =
|
|
298570
|
+
const srcPrice = sourceOf7(bars, cfg.srcPrice);
|
|
298613
298571
|
const alternative = bars.map((b, i) => {
|
|
298614
298572
|
switch (cfg.altSourceFormula) {
|
|
298615
298573
|
case "(open + close +3 * (high + low)) / 8":
|
|
@@ -303140,7 +303098,7 @@ var ge457 = (a, b) => !isNaN(a) && !isNaN(b) && !(b - a > EPS1005);
|
|
|
303140
303098
|
var le311 = (a, b) => !isNaN(a) && !isNaN(b) && !(a - b > EPS1005);
|
|
303141
303099
|
var eq229 = (a, b) => !isNaN(a) && !isNaN(b) && Math.abs(a - b) <= EPS1005;
|
|
303142
303100
|
var nz115 = (x, y = 0) => isNaN(x) ? y : x;
|
|
303143
|
-
function
|
|
303101
|
+
function sourceOf8(bars, src) {
|
|
303144
303102
|
return bars.map((b) => {
|
|
303145
303103
|
switch (src) {
|
|
303146
303104
|
case "open":
|
|
@@ -303170,7 +303128,7 @@ function calculate1668(bars, inputs = {}, chart) {
|
|
|
303170
303128
|
const mom = Math.trunc(cfg.mom);
|
|
303171
303129
|
const A7 = (s) => s.toArray().map((v) => v ?? NaN);
|
|
303172
303130
|
const S2 = (a) => import_oakscriptjs1623.Series.fromArray(bars, a);
|
|
303173
|
-
const src =
|
|
303131
|
+
const src = sourceOf8(bars, cfg.maSrc);
|
|
303174
303132
|
const srcS = S2(src);
|
|
303175
303133
|
const variant4 = () => {
|
|
303176
303134
|
switch (cfg.maType) {
|
|
@@ -325450,4 +325408,4 @@ var registryPart11 = [
|
|
|
325450
325408
|
}
|
|
325451
325409
|
];
|
|
325452
325410
|
var indicatorRegistry = [...registryPart1, ...registryPart11, ...registryPart2, ...registryPart3, ...registryPart4, ...registryPart5, ...registryPart6, ...registryPart7, ...registryPart8, ...registryPart9, ...registryPart10].map(withReferenceNames).map(withValueFormat);
|
|
325453
|
-
var version = "0.15.
|
|
325411
|
+
var version = "0.15.4";
|
package/dist/index.d.ts
CHANGED
|
@@ -3380,5 +3380,5 @@ export type { ChartContext, VisibleRange, SymbolRequest, SymbolInfo } from './ch
|
|
|
3380
3380
|
export { MissingSymbolDataError, symbolBarsOf } from './chart-context';
|
|
3381
3381
|
export { mintickOf, timezoneOf, tickeridOf, tickerOf, symbolTypeOf, currencyOf, basecurrencyOf, rootOf, foregroundColorOf, backgroundColorOf, lastBarConfirmedOf, nowOf, visibleRangeOf, } from './chart-context';
|
|
3382
3382
|
export { securityOther, securityOtherValues, securityLowerTf, otherSymbolChart, spreadSymbols, spreadBars, spreadOptions, type OtherSymbolOptions, type OtherSymbolChart, type SymbolCalendar, } from './other-symbol';
|
|
3383
|
-
export declare const version = "0.15.
|
|
3383
|
+
export declare const version = "0.15.4";
|
|
3384
3384
|
//# sourceMappingURL=index.d.ts.map
|