st-comp 0.0.146 → 0.0.147
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/components.d.ts +0 -3
- package/es/ChartLayout.cjs +1 -1
- package/es/ChartLayout.js +2 -2
- package/es/Dialog.cjs +1 -1
- package/es/Dialog.js +22 -26
- package/es/FactorWarning.cjs +1 -1
- package/es/FactorWarning.js +103 -112
- package/es/KlineBasic.cjs +1 -1
- package/es/KlineBasic.js +1426 -671
- package/es/KlineNew.cjs +3 -1
- package/es/KlineNew.js +2736 -314
- package/es/Pagination.cjs +1 -1
- package/es/Pagination.js +96 -102
- package/es/Table.cjs +1 -1
- package/es/Table.js +60 -66
- package/es/User.cjs +1 -1
- package/es/User.js +96 -103
- package/es/VarietySearch.cjs +1 -1
- package/es/VarietySearch.js +32 -41
- package/es/VirtualTable.cjs +1 -13
- package/es/VirtualTable.js +1 -2801
- package/es/_initCloneObject-7493ecd5.cjs +1 -0
- package/es/{_initCloneObject-14b53c6f.js → _initCloneObject-a8dcd058.js} +26 -26
- package/es/{base-ec05f348.cjs → base-00ce90ec.cjs} +3 -3
- package/es/{base-437d17f3.js → base-674a354a.js} +63 -64
- package/es/config-provider-419ffbf2.js +120 -0
- package/es/config-provider-68414290.cjs +3 -0
- package/es/dropdown-127a8c0d.cjs +1 -0
- package/es/{dropdown-634b5e27.js → dropdown-ce30ada6.js} +30 -31
- package/es/el-button-7b9f5933.js +745 -0
- package/es/el-button-c00975e1.cjs +1 -0
- package/es/{el-checkbox-group-e8fece80.js → el-checkbox-group-0554b352.js} +10 -10
- package/es/el-checkbox-group-7a313d34.cjs +1 -0
- package/es/{el-empty-bacc6613.js → el-empty-39b3aed7.js} +5 -5
- package/es/{el-empty-19ea04f4.cjs → el-empty-87154b6d.cjs} +1 -1
- package/es/el-form-item-7867f64d.cjs +12 -0
- package/es/{el-form-item-af1855f0.js → el-form-item-fc6f80ab.js} +78 -79
- package/es/el-input-2ff1628c.cjs +1 -0
- package/es/{el-input-4961b99f.js → el-input-d249ac86.js} +82 -84
- package/es/{el-input-number-610fc8ba.js → el-input-number-2066fbb7.js} +35 -36
- package/es/el-input-number-d6801a5c.cjs +1 -0
- package/es/{el-message-c3b3ac96.js → el-message-9859835d.js} +79 -81
- package/es/el-message-ffcf690c.cjs +1 -0
- package/es/el-overlay-91784be2.cjs +1 -0
- package/es/el-overlay-f0757cc4.js +525 -0
- package/es/el-popover-4db657e2.cjs +1 -0
- package/es/{el-popover-0aa071f2.js → el-popover-b7b43c1f.js} +18 -18
- package/es/el-scrollbar-35bac6b3.js +2452 -0
- package/es/el-scrollbar-ec09bbd3.cjs +1 -0
- package/es/el-select-0785c35a.cjs +1 -0
- package/es/{el-select-9381b156.js → el-select-bcbb7e55.js} +329 -333
- package/es/el-table-column-2478adf8.cjs +14 -0
- package/es/{el-table-column-55bffba5.js → el-table-column-c1e1a206.js} +346 -350
- package/es/el-tag-13ee17b3.cjs +1 -0
- package/es/el-tag-73372c6c.js +359 -0
- package/es/index-07b61d12.cjs +1 -0
- package/es/{index-39ec9741.js → index-45de4a12.js} +7 -7
- package/es/index-65b719a4.cjs +1 -0
- package/es/index-8b5fbc11.js +66 -0
- package/es/index-8c85d7c5.js +858 -0
- package/es/index-a49f4743.cjs +2 -0
- package/es/{scroll-387fcfdb.js → scroll-cb696ed2.js} +1 -1
- package/es/{scroll-41224831.cjs → scroll-cca17da0.cjs} +1 -1
- package/es/style.css +1 -1
- package/es/{zh-cn-ab9a583d.cjs → zh-cn-37af467d.cjs} +1 -1
- package/es/{zh-cn-eb9c2820.js → zh-cn-ef7d7220.js} +2 -2
- package/lib/bundle.js +1 -1
- package/lib/bundle.umd.cjs +206 -206
- package/lib/{index-9b8ff62a.js → index-24f8572c.js} +31450 -33319
- package/lib/{python-a9c3d9e5.js → python-2143eee4.js} +1 -1
- package/lib/style.css +1 -1
- package/package.json +1 -1
- package/packages/KlineBasic/components/KlineSub/index.vue +17 -3
- package/packages/KlineBasic/index.vue +2 -1
- package/packages/KlineBasic/utils.js +20 -2
- package/packages/index.ts +0 -2
- package/src/pages/KlineBasic/api.js +1 -1
- package/src/router/routes.ts +0 -5
- package/es/Kline.cjs +0 -1
- package/es/Kline.js +0 -1901
- package/es/_initCloneObject-441db749.cjs +0 -1
- package/es/castArray-4251bbe4.js +0 -10
- package/es/castArray-a45823fe.cjs +0 -1
- package/es/config-provider-55482a43.js +0 -47
- package/es/config-provider-7cdfca4d.cjs +0 -1
- package/es/debounce-ac30be50.js +0 -83
- package/es/debounce-b2ff12bd.cjs +0 -1
- package/es/dropdown-d7c59a21.cjs +0 -1
- package/es/el-button-196807af.cjs +0 -1
- package/es/el-button-e1665717.js +0 -235
- package/es/el-checkbox-group-492b95cc.cjs +0 -1
- package/es/el-form-item-5bdffd07.cjs +0 -12
- package/es/el-input-23e2bac3.cjs +0 -1
- package/es/el-input-number-40a81eb5.cjs +0 -1
- package/es/el-menu-item-78b858f2.cjs +0 -1
- package/es/el-menu-item-7d04c11a.js +0 -771
- package/es/el-message-d4df8136.cjs +0 -1
- package/es/el-overlay-12dd9b35.js +0 -519
- package/es/el-overlay-bc0790a2.cjs +0 -1
- package/es/el-popover-8a77e015.cjs +0 -1
- package/es/el-popper-50100766.js +0 -2262
- package/es/el-popper-746070ba.cjs +0 -1
- package/es/el-scrollbar-562d0595.js +0 -201
- package/es/el-scrollbar-d1c3e7f7.cjs +0 -1
- package/es/el-select-b162dffc.cjs +0 -1
- package/es/el-table-column-6d761fce.cjs +0 -14
- package/es/el-tag-985d9aff.js +0 -279
- package/es/el-tag-c51a6490.cjs +0 -1
- package/es/index-09e01b1d.js +0 -81
- package/es/index-0cb48e01.js +0 -306
- package/es/index-3bf8d597.cjs +0 -1
- package/es/index-657047bb.js +0 -513
- package/es/index-8a0b1c53.cjs +0 -3
- package/es/index-a387515d.cjs +0 -1
- package/es/index-a902a0d9.js +0 -59
- package/es/index-deb8de52.cjs +0 -1
- package/es/index-eea0bcb3.cjs +0 -1
- package/es/index.esm-8d9a2abe.js +0 -2432
- package/es/index.esm-94a95a2a.cjs +0 -3
- package/es/raf-8fc301fd.cjs +0 -1
- package/es/raf-b128c7b7.js +0 -6
- package/es/typescript-7ae59c4c.js +0 -4
- package/es/typescript-b63f8e83.cjs +0 -1
- package/es/use-form-common-props-1b84d8f4.cjs +0 -2
- package/es/use-form-common-props-f377e500.js +0 -587
- package/es/vnode-7dfd4ed5.js +0 -14
- package/es/vnode-7fbc61e1.cjs +0 -1
- package/packages/Kline/components/Contextmenu/index.vue +0 -110
- package/packages/Kline/components/Tips/index.vue +0 -40
- package/packages/Kline/componentsNew/KlineSlide/index.vue +0 -155
- package/packages/Kline/componentsNew/KlineSub/index.vue +0 -297
- package/packages/Kline/componentsNew/KlineTips/index.vue +0 -66
- package/packages/Kline/componentsNew/KlineUtils/index.vue +0 -84
- package/packages/Kline/componentsNew/Tips/index.vue +0 -33
- package/packages/Kline/formatKlineData.ts +0 -109
- package/packages/Kline/images/buy.svg +0 -1
- package/packages/Kline/images/pen.png +0 -0
- package/packages/Kline/images/sell.svg +0 -1
- package/packages/Kline/images/t.svg +0 -1
- package/packages/Kline/index.ts +0 -16
- package/packages/Kline/index.vue +0 -891
- package/packages/Kline/option.ts +0 -539
- package/packages/Kline/type.d.ts +0 -219
- package/packages/Kline/utils.ts +0 -682
- package/src/pages/Kline/api.ts +0 -127
- package/src/pages/Kline/components/MultiCycleSingleVariety.vue +0 -701
- package/src/pages/Kline/components/SingleCycleSingleVariety.vue +0 -924
- package/src/pages/Kline/index.vue +0 -90
package/es/KlineNew.js
CHANGED
|
@@ -1,73 +1,2495 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import "./
|
|
6
|
-
import "./el-
|
|
7
|
-
import
|
|
8
|
-
import "
|
|
9
|
-
import "./
|
|
10
|
-
import
|
|
11
|
-
import "./index-
|
|
12
|
-
import "./
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
1
|
+
import { defineComponent as Ae, openBlock as Q, createElementBlock as oe, Fragment as _n, renderList as An, normalizeStyle as oi, toDisplayString as sn, computed as Ce, createVNode as ge, ref as Dn, onMounted as dn, onUnmounted as In, nextTick as ii, createElementVNode as mn, withCtx as ri, createBlock as ui, createCommentVNode as li, watch as pi } from "vue";
|
|
2
|
+
import { _ as Ne } from "./_plugin-vue_export-helper-dad06003.js";
|
|
3
|
+
import { x as Tn } from "./index-8542fe24.js";
|
|
4
|
+
import "./base-674a354a.js";
|
|
5
|
+
import "./el-tag-73372c6c.js";
|
|
6
|
+
import { E as si, a as mi } from "./el-select-bcbb7e55.js";
|
|
7
|
+
import "./el-scrollbar-35bac6b3.js";
|
|
8
|
+
import * as Ue from "echarts";
|
|
9
|
+
import "./index-45de4a12.js";
|
|
10
|
+
import "./index-8c85d7c5.js";
|
|
11
|
+
import "./index-8b5fbc11.js";
|
|
12
|
+
import "./scroll-cb696ed2.js";
|
|
13
|
+
var Fe = function() {
|
|
14
|
+
var n = typeof document < "u" && document.currentScript ? document.currentScript.src : void 0;
|
|
15
|
+
return typeof __filename < "u" && (n = n || __filename), function(N) {
|
|
16
|
+
N = N || {};
|
|
17
|
+
var e = typeof N < "u" ? N : {}, b, w;
|
|
18
|
+
e.ready = new Promise(function(t, i) {
|
|
19
|
+
b = t, w = i;
|
|
20
|
+
});
|
|
21
|
+
var h = {}, y;
|
|
22
|
+
for (y in e)
|
|
23
|
+
e.hasOwnProperty(y) && (h[y] = e[y]);
|
|
24
|
+
var f = function(t, i) {
|
|
25
|
+
throw i;
|
|
26
|
+
}, _ = !1, A = !1, E = !1, L = !1;
|
|
27
|
+
_ = typeof window == "object", A = typeof importScripts == "function", E = typeof process == "object" && typeof process.versions == "object" && typeof process.versions.node == "string", L = !_ && !E && !A;
|
|
28
|
+
var u = "";
|
|
29
|
+
function l(t) {
|
|
30
|
+
return e.locateFile ? e.locateFile(t, u) : u + t;
|
|
31
|
+
}
|
|
32
|
+
var p, s, I, H;
|
|
33
|
+
E ? (A ? u = require("path").dirname(u) + "/" : u = __dirname + "/", p = function(i, r) {
|
|
34
|
+
return I || (I = require("fs")), H || (H = require("path")), i = H.normalize(i), I.readFileSync(i, r ? null : "utf8");
|
|
35
|
+
}, s = function(i) {
|
|
36
|
+
var r = p(i, !0);
|
|
37
|
+
return r.buffer || (r = new Uint8Array(r)), P(r.buffer), r;
|
|
38
|
+
}, process.argv.length > 1 && process.argv[1].replace(/\\/g, "/"), process.argv.slice(2), process.on("uncaughtException", function(t) {
|
|
39
|
+
if (!(t instanceof Me))
|
|
40
|
+
throw t;
|
|
41
|
+
}), process.on("unhandledRejection", se), f = function(t) {
|
|
42
|
+
process.exit(t);
|
|
43
|
+
}, e.inspect = function() {
|
|
44
|
+
return "[Emscripten Module object]";
|
|
45
|
+
}) : L ? (typeof read < "u" && (p = function(i) {
|
|
46
|
+
return read(i);
|
|
47
|
+
}), s = function(i) {
|
|
48
|
+
var r;
|
|
49
|
+
return typeof readbuffer == "function" ? new Uint8Array(readbuffer(i)) : (r = read(i, "binary"), P(typeof r == "object"), r);
|
|
50
|
+
}, typeof scriptArgs < "u" && scriptArgs, typeof quit == "function" && (f = function(t) {
|
|
51
|
+
quit(t);
|
|
52
|
+
}), typeof print < "u" && (typeof console > "u" && (console = {}), console.log = print, console.warn = console.error = typeof printErr < "u" ? printErr : print)) : (_ || A) && (A ? u = self.location.href : document.currentScript && (u = document.currentScript.src), n && (u = n), u.indexOf("blob:") !== 0 ? u = u.substr(
|
|
53
|
+
0,
|
|
54
|
+
u.lastIndexOf("/") + 1
|
|
55
|
+
) : u = "", p = function(i) {
|
|
56
|
+
var r = new XMLHttpRequest();
|
|
57
|
+
return r.open("GET", i, !1), r.send(null), r.responseText;
|
|
58
|
+
}, A && (s = function(i) {
|
|
59
|
+
var r = new XMLHttpRequest();
|
|
60
|
+
return r.open("GET", i, !1), r.responseType = "arraybuffer", r.send(null), new Uint8Array(r.response);
|
|
61
|
+
})), e.print || console.log.bind(console);
|
|
62
|
+
var V = e.printErr || console.warn.bind(console);
|
|
63
|
+
for (y in h)
|
|
64
|
+
h.hasOwnProperty(y) && (e[y] = h[y]);
|
|
65
|
+
h = null, e.arguments && e.arguments, e.thisProgram && e.thisProgram, e.quit && (f = e.quit);
|
|
66
|
+
var O = 16;
|
|
67
|
+
function x(t, i) {
|
|
68
|
+
return i || (i = O), Math.ceil(t / i) * i;
|
|
69
|
+
}
|
|
70
|
+
function Y(t, i) {
|
|
71
|
+
if (typeof WebAssembly.Function == "function") {
|
|
72
|
+
for (var r = { i: "i32", j: "i64", f: "f32", d: "f64" }, m = {
|
|
73
|
+
parameters: [],
|
|
74
|
+
results: i[0] == "v" ? [] : [r[i[0]]]
|
|
75
|
+
}, R = 1; R < i.length; ++R)
|
|
76
|
+
m.parameters.push(r[i[R]]);
|
|
77
|
+
return new WebAssembly.Function(m, t);
|
|
78
|
+
}
|
|
79
|
+
var D = [1, 0, 1, 96], c = i.slice(0, 1), d = i.slice(1), G = { i: 127, j: 126, f: 125, d: 124 };
|
|
80
|
+
D.push(d.length);
|
|
81
|
+
for (var R = 0; R < d.length; ++R)
|
|
82
|
+
D.push(G[d[R]]);
|
|
83
|
+
c == "v" ? D.push(0) : D = D.concat([1, G[c]]), D[1] = D.length - 2;
|
|
84
|
+
var S = new Uint8Array(
|
|
85
|
+
[0, 97, 115, 109, 1, 0, 0, 0].concat(D, [
|
|
86
|
+
2,
|
|
87
|
+
7,
|
|
88
|
+
1,
|
|
89
|
+
1,
|
|
90
|
+
101,
|
|
91
|
+
1,
|
|
92
|
+
102,
|
|
93
|
+
0,
|
|
94
|
+
0,
|
|
95
|
+
7,
|
|
96
|
+
5,
|
|
97
|
+
1,
|
|
98
|
+
1,
|
|
99
|
+
102,
|
|
100
|
+
0,
|
|
101
|
+
0
|
|
102
|
+
])
|
|
103
|
+
), v = new WebAssembly.Module(S), z = new WebAssembly.Instance(v, { e: { f: t } }), ue = z.exports.f;
|
|
104
|
+
return ue;
|
|
105
|
+
}
|
|
106
|
+
var U = [], C;
|
|
107
|
+
function M(t, i) {
|
|
108
|
+
var r = ie;
|
|
109
|
+
if (!C) {
|
|
110
|
+
C = /* @__PURE__ */ new WeakMap();
|
|
111
|
+
for (var m = 0; m < r.length; m++) {
|
|
112
|
+
var R = r.get(m);
|
|
113
|
+
R && C.set(R, m);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (C.has(t))
|
|
117
|
+
return C.get(t);
|
|
118
|
+
var D;
|
|
119
|
+
if (U.length)
|
|
120
|
+
D = U.pop();
|
|
121
|
+
else {
|
|
122
|
+
D = r.length;
|
|
123
|
+
try {
|
|
124
|
+
r.grow(1);
|
|
125
|
+
} catch (d) {
|
|
126
|
+
throw d instanceof RangeError ? "Unable to grow wasm table. Set ALLOW_TABLE_GROWTH." : d;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
try {
|
|
130
|
+
r.set(D, t);
|
|
131
|
+
} catch (d) {
|
|
132
|
+
if (!(d instanceof TypeError))
|
|
133
|
+
throw d;
|
|
134
|
+
var c = Y(t, i);
|
|
135
|
+
r.set(D, c);
|
|
136
|
+
}
|
|
137
|
+
return C.set(t, D), D;
|
|
138
|
+
}
|
|
139
|
+
function B(t, i) {
|
|
140
|
+
return M(t, i);
|
|
141
|
+
}
|
|
142
|
+
var j;
|
|
143
|
+
e.wasmBinary && (j = e.wasmBinary);
|
|
144
|
+
var J;
|
|
145
|
+
e.noExitRuntime && (J = e.noExitRuntime), typeof WebAssembly != "object" && se("no native wasm support detected");
|
|
146
|
+
var g, ie, T = !1;
|
|
147
|
+
function P(t, i) {
|
|
148
|
+
t || se("Assertion failed: " + i);
|
|
149
|
+
}
|
|
150
|
+
function $(t) {
|
|
151
|
+
var i = e["_" + t];
|
|
152
|
+
return P(
|
|
153
|
+
i,
|
|
154
|
+
"Cannot call unknown function " + t + ", make sure it is exported"
|
|
155
|
+
), i;
|
|
156
|
+
}
|
|
157
|
+
function fo(t, i, r, m, R) {
|
|
158
|
+
var D = {
|
|
159
|
+
string: function(W) {
|
|
160
|
+
var Z = 0;
|
|
161
|
+
if (W != null && W !== 0) {
|
|
162
|
+
var k = (W.length << 2) + 1;
|
|
163
|
+
Z = Te(k), Ro(W, Z, k);
|
|
164
|
+
}
|
|
165
|
+
return Z;
|
|
166
|
+
},
|
|
167
|
+
array: function(W) {
|
|
168
|
+
var Z = Te(W.length);
|
|
169
|
+
return Eo(W, Z), Z;
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
function c(W) {
|
|
173
|
+
return i === "string" ? No(W) : i === "boolean" ? !!W : W;
|
|
174
|
+
}
|
|
175
|
+
var d = $(t), G = [], S = 0;
|
|
176
|
+
if (m)
|
|
177
|
+
for (var v = 0; v < m.length; v++) {
|
|
178
|
+
var z = D[r[v]];
|
|
179
|
+
z ? (S === 0 && (S = he()), G[v] = z(m[v])) : G[v] = m[v];
|
|
180
|
+
}
|
|
181
|
+
var ue = d.apply(null, G);
|
|
182
|
+
return ue = c(ue), S !== 0 && Oe(S), ue;
|
|
183
|
+
}
|
|
184
|
+
var Co = 1;
|
|
185
|
+
function go(t, i) {
|
|
186
|
+
var r;
|
|
187
|
+
return i == Co ? r = Te(t.length) : r = Pe(t.length), t.subarray || t.slice ? pe.set(t, r) : pe.set(new Uint8Array(t), r), r;
|
|
188
|
+
}
|
|
189
|
+
var We = typeof TextDecoder < "u" ? new TextDecoder("utf8") : void 0;
|
|
190
|
+
function ke(t, i, r) {
|
|
191
|
+
for (var m = i + r, R = i; t[R] && !(R >= m); )
|
|
192
|
+
++R;
|
|
193
|
+
if (R - i > 16 && t.subarray && We)
|
|
194
|
+
return We.decode(t.subarray(i, R));
|
|
195
|
+
for (var D = ""; i < R; ) {
|
|
196
|
+
var c = t[i++];
|
|
197
|
+
if (!(c & 128)) {
|
|
198
|
+
D += String.fromCharCode(c);
|
|
199
|
+
continue;
|
|
200
|
+
}
|
|
201
|
+
var d = t[i++] & 63;
|
|
202
|
+
if ((c & 224) == 192) {
|
|
203
|
+
D += String.fromCharCode((c & 31) << 6 | d);
|
|
204
|
+
continue;
|
|
205
|
+
}
|
|
206
|
+
var G = t[i++] & 63;
|
|
207
|
+
if ((c & 240) == 224 ? c = (c & 15) << 12 | d << 6 | G : c = (c & 7) << 18 | d << 12 | G << 6 | t[i++] & 63, c < 65536)
|
|
208
|
+
D += String.fromCharCode(c);
|
|
209
|
+
else {
|
|
210
|
+
var S = c - 65536;
|
|
211
|
+
D += String.fromCharCode(55296 | S >> 10, 56320 | S & 1023);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
return D;
|
|
215
|
+
}
|
|
216
|
+
function No(t, i) {
|
|
217
|
+
return t ? ke(pe, t, i) : "";
|
|
218
|
+
}
|
|
219
|
+
function Lo(t, i, r, m) {
|
|
220
|
+
if (!(m > 0))
|
|
221
|
+
return 0;
|
|
222
|
+
for (var R = r, D = r + m - 1, c = 0; c < t.length; ++c) {
|
|
223
|
+
var d = t.charCodeAt(c);
|
|
224
|
+
if (d >= 55296 && d <= 57343) {
|
|
225
|
+
var G = t.charCodeAt(++c);
|
|
226
|
+
d = 65536 + ((d & 1023) << 10) | G & 1023;
|
|
227
|
+
}
|
|
228
|
+
if (d <= 127) {
|
|
229
|
+
if (r >= D)
|
|
230
|
+
break;
|
|
231
|
+
i[r++] = d;
|
|
232
|
+
} else if (d <= 2047) {
|
|
233
|
+
if (r + 1 >= D)
|
|
234
|
+
break;
|
|
235
|
+
i[r++] = 192 | d >> 6, i[r++] = 128 | d & 63;
|
|
236
|
+
} else if (d <= 65535) {
|
|
237
|
+
if (r + 2 >= D)
|
|
238
|
+
break;
|
|
239
|
+
i[r++] = 224 | d >> 12, i[r++] = 128 | d >> 6 & 63, i[r++] = 128 | d & 63;
|
|
240
|
+
} else {
|
|
241
|
+
if (r + 3 >= D)
|
|
242
|
+
break;
|
|
243
|
+
i[r++] = 240 | d >> 18, i[r++] = 128 | d >> 12 & 63, i[r++] = 128 | d >> 6 & 63, i[r++] = 128 | d & 63;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
return i[r] = 0, r - R;
|
|
247
|
+
}
|
|
248
|
+
function Ro(t, i, r) {
|
|
249
|
+
return Lo(t, pe, i, r);
|
|
250
|
+
}
|
|
251
|
+
function Eo(t, i) {
|
|
252
|
+
Le.set(t, i);
|
|
253
|
+
}
|
|
254
|
+
var Xe = 65536, De, Le, pe;
|
|
255
|
+
function bo(t) {
|
|
256
|
+
De = t, e.HEAP8 = Le = new Int8Array(t), e.HEAP16 = new Int16Array(t), e.HEAP32 = new Int32Array(t), e.HEAPU8 = pe = new Uint8Array(t), e.HEAPU16 = new Uint16Array(t), e.HEAPU32 = new Uint32Array(t), e.HEAPF32 = new Float32Array(t), e.HEAPF64 = new Float64Array(t);
|
|
257
|
+
}
|
|
258
|
+
var So = 5247776;
|
|
259
|
+
e.___heap_base = 5247776;
|
|
260
|
+
var Re = e.INITIAL_MEMORY || 16777216;
|
|
261
|
+
e.wasmMemory ? g = e.wasmMemory : g = new WebAssembly.Memory({
|
|
262
|
+
initial: Re / Xe,
|
|
263
|
+
maximum: Re / Xe
|
|
264
|
+
}), g && (De = g.buffer), Re = De.byteLength, bo(De);
|
|
265
|
+
var ie = new WebAssembly.Table({ initial: 1, element: "anyfunc" }), Je = [], Ee = [], Po = [], Ye = [], be = !1;
|
|
266
|
+
function ho() {
|
|
267
|
+
if (e.preRun)
|
|
268
|
+
for (typeof e.preRun == "function" && (e.preRun = [e.preRun]); e.preRun.length; )
|
|
269
|
+
je(e.preRun.shift());
|
|
270
|
+
de(Je);
|
|
271
|
+
}
|
|
272
|
+
function Oo() {
|
|
273
|
+
be = !0, de(Ee);
|
|
274
|
+
}
|
|
275
|
+
function Mo() {
|
|
276
|
+
de(Po);
|
|
277
|
+
}
|
|
278
|
+
function Ho() {
|
|
279
|
+
if (e.postRun)
|
|
280
|
+
for (typeof e.postRun == "function" && (e.postRun = [e.postRun]); e.postRun.length; )
|
|
281
|
+
vo(e.postRun.shift());
|
|
282
|
+
de(Ye);
|
|
283
|
+
}
|
|
284
|
+
function je(t) {
|
|
285
|
+
Je.unshift(t);
|
|
286
|
+
}
|
|
287
|
+
function vo(t) {
|
|
288
|
+
Ye.unshift(t);
|
|
289
|
+
}
|
|
290
|
+
var re = 0, ce = null;
|
|
291
|
+
function qe(t) {
|
|
292
|
+
re++, e.monitorRunDependencies && e.monitorRunDependencies(re);
|
|
293
|
+
}
|
|
294
|
+
function ze(t) {
|
|
295
|
+
if (re--, e.monitorRunDependencies && e.monitorRunDependencies(re), re == 0 && ce) {
|
|
296
|
+
var i = ce;
|
|
297
|
+
ce = null, i();
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
e.preloadedImages = {}, e.preloadedAudios = {}, e.preloadedWasm = {}, je(Xo);
|
|
301
|
+
function se(t) {
|
|
302
|
+
e.onAbort && e.onAbort(t), t += "", V(t), T = !0, t = "abort(" + t + "). Build with -s ASSERTIONS=1 for more info.";
|
|
303
|
+
var i = new WebAssembly.RuntimeError(t);
|
|
304
|
+
throw w(i), i;
|
|
305
|
+
}
|
|
306
|
+
function $e(t, i) {
|
|
307
|
+
return String.prototype.startsWith ? t.startsWith(i) : t.indexOf(i) === 0;
|
|
308
|
+
}
|
|
309
|
+
var wo = "data:application/octet-stream;base64,";
|
|
310
|
+
function Ze(t) {
|
|
311
|
+
return $e(t, wo);
|
|
312
|
+
}
|
|
313
|
+
var Go = "file://";
|
|
314
|
+
function Qe(t) {
|
|
315
|
+
return $e(t, Go);
|
|
316
|
+
}
|
|
317
|
+
var q = "talib.wasm";
|
|
318
|
+
Ze(q) || (q = l(q));
|
|
319
|
+
function en() {
|
|
320
|
+
try {
|
|
321
|
+
if (j)
|
|
322
|
+
return new Uint8Array(j);
|
|
323
|
+
if (s)
|
|
324
|
+
return s(q);
|
|
325
|
+
throw "both async and sync fetching of the wasm failed";
|
|
326
|
+
} catch (t) {
|
|
327
|
+
se(t);
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
function Vo() {
|
|
331
|
+
return !j && (_ || A) && typeof fetch == "function" && !Qe(q) ? fetch(q, { credentials: "same-origin" }).then(function(t) {
|
|
332
|
+
if (!t.ok)
|
|
333
|
+
throw "failed to load wasm binary file at '" + q + "'";
|
|
334
|
+
return t.arrayBuffer();
|
|
335
|
+
}).catch(function() {
|
|
336
|
+
return en();
|
|
337
|
+
}) : Promise.resolve().then(en);
|
|
338
|
+
}
|
|
339
|
+
function xo() {
|
|
340
|
+
var t = { env: Se, wasi_snapshot_preview1: Se };
|
|
341
|
+
function i(c, d) {
|
|
342
|
+
var G = c.exports;
|
|
343
|
+
G = nn(G, 1024), e.asm = G, ze();
|
|
344
|
+
}
|
|
345
|
+
qe();
|
|
346
|
+
function r(c) {
|
|
347
|
+
i(c.instance);
|
|
348
|
+
}
|
|
349
|
+
function m(c) {
|
|
350
|
+
return Vo().then(function(d) {
|
|
351
|
+
return WebAssembly.instantiate(d, t);
|
|
352
|
+
}).then(c, function(d) {
|
|
353
|
+
V("failed to asynchronously prepare wasm: " + d), se(d);
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
function R() {
|
|
357
|
+
if (!j && typeof WebAssembly.instantiateStreaming == "function" && !Ze(q) && !Qe(q) && typeof fetch == "function")
|
|
358
|
+
fetch(q, { credentials: "same-origin" }).then(function(c) {
|
|
359
|
+
var d = WebAssembly.instantiateStreaming(c, t);
|
|
360
|
+
return d.then(r, function(G) {
|
|
361
|
+
return V("wasm streaming compile failed: " + G), V("falling back to ArrayBuffer instantiation"), m(r);
|
|
362
|
+
});
|
|
363
|
+
});
|
|
364
|
+
else
|
|
365
|
+
return m(r);
|
|
366
|
+
}
|
|
367
|
+
if (e.instantiateWasm)
|
|
368
|
+
try {
|
|
369
|
+
var D = e.instantiateWasm(t, i);
|
|
370
|
+
return D;
|
|
371
|
+
} catch (c) {
|
|
372
|
+
return V("Module.instantiateWasm callback failed with error: " + c), !1;
|
|
373
|
+
}
|
|
374
|
+
return R(), {};
|
|
375
|
+
}
|
|
376
|
+
function de(t) {
|
|
377
|
+
for (; t.length > 0; ) {
|
|
378
|
+
var i = t.shift();
|
|
379
|
+
if (typeof i == "function") {
|
|
380
|
+
i(e);
|
|
381
|
+
continue;
|
|
382
|
+
}
|
|
383
|
+
var r = i.func;
|
|
384
|
+
typeof r == "number" ? i.arg === void 0 ? ie.get(r)() : ie.get(r)(i.arg) : r(i.arg === void 0 ? null : i.arg);
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
function Uo(t, i, r) {
|
|
388
|
+
return r && r.length ? e["dynCall_" + t].apply(null, [i].concat(r)) : e["dynCall_" + t].call(null, i);
|
|
389
|
+
}
|
|
390
|
+
function Bo(t, i, r) {
|
|
391
|
+
return t.indexOf("j") != -1 ? Uo(t, i, r) : ie.get(i).apply(null, r);
|
|
392
|
+
}
|
|
393
|
+
var ee = { nextHandle: 1, loadedLibs: {}, loadedLibNames: {} };
|
|
394
|
+
function Ko(t) {
|
|
395
|
+
return function() {
|
|
396
|
+
var i = he();
|
|
397
|
+
try {
|
|
398
|
+
return Bo(
|
|
399
|
+
t,
|
|
400
|
+
arguments[0],
|
|
401
|
+
Array.prototype.slice.call(arguments, 1)
|
|
402
|
+
);
|
|
403
|
+
} catch (r) {
|
|
404
|
+
if (Oe(i), r !== r + 0 && r !== "longjmp")
|
|
405
|
+
throw r;
|
|
406
|
+
_setThrew(1, 0);
|
|
407
|
+
}
|
|
408
|
+
};
|
|
409
|
+
}
|
|
410
|
+
function Fo(t) {
|
|
411
|
+
if (be)
|
|
412
|
+
return Pe(t);
|
|
413
|
+
var i = e.___heap_base, r = i + t + 15 & -16;
|
|
414
|
+
return e.___heap_base = r, i;
|
|
415
|
+
}
|
|
416
|
+
function nn(t, i, r) {
|
|
417
|
+
var m = {};
|
|
418
|
+
for (var R in t) {
|
|
419
|
+
var D = t[R];
|
|
420
|
+
typeof D == "object" && (D = D.value), typeof D == "number" && (D += i), m[R] = D, r && (r["_" + R] = D);
|
|
421
|
+
}
|
|
422
|
+
return m;
|
|
423
|
+
}
|
|
424
|
+
function tn(t) {
|
|
425
|
+
var i = [
|
|
426
|
+
"setTempRet0",
|
|
427
|
+
"getTempRet0",
|
|
428
|
+
"stackAlloc",
|
|
429
|
+
"stackSave",
|
|
430
|
+
"stackRestore"
|
|
431
|
+
];
|
|
432
|
+
return t.indexOf("dynCall_") == 0 || i.indexOf(t) != -1 ? t : "_" + t;
|
|
433
|
+
}
|
|
434
|
+
function Wo(t, i) {
|
|
435
|
+
var r = new Uint32Array(
|
|
436
|
+
new Uint8Array(t.subarray(0, 24)).buffer
|
|
437
|
+
);
|
|
438
|
+
P(r[0] == 1836278016, "need to see wasm magic number"), P(t[8] === 0, "need the dylink section to be first");
|
|
439
|
+
var m = 9;
|
|
440
|
+
function R() {
|
|
441
|
+
for (var k = 0, me = 1; ; ) {
|
|
442
|
+
var ne = t[m++];
|
|
443
|
+
if (k += (ne & 127) * me, me *= 128, !(ne & 128))
|
|
444
|
+
break;
|
|
445
|
+
}
|
|
446
|
+
return k;
|
|
447
|
+
}
|
|
448
|
+
R(), P(t[m] === 6), m++, P(t[m] === "d".charCodeAt(0)), m++, P(t[m] === "y".charCodeAt(0)), m++, P(t[m] === "l".charCodeAt(0)), m++, P(t[m] === "i".charCodeAt(0)), m++, P(t[m] === "n".charCodeAt(0)), m++, P(t[m] === "k".charCodeAt(0)), m++;
|
|
449
|
+
var D = R(), c = R(), d = R();
|
|
450
|
+
R();
|
|
451
|
+
for (var G = R(), S = [], v = 0; v < G; ++v) {
|
|
452
|
+
var z = R(), ue = t.subarray(m, m + z);
|
|
453
|
+
m += z;
|
|
454
|
+
var W = ke(ue, 0);
|
|
455
|
+
S.push(W);
|
|
456
|
+
}
|
|
457
|
+
function Z() {
|
|
458
|
+
c = Math.pow(2, c), c = Math.max(c, O);
|
|
459
|
+
var k = x(
|
|
460
|
+
Fo(D + c),
|
|
461
|
+
c
|
|
462
|
+
), me = Se, ne = ie, ve = ne.length, Qo = ne;
|
|
463
|
+
ne.grow(d), P(ne === Qo);
|
|
464
|
+
for (var le = k; le < k + D; le++)
|
|
465
|
+
Le[le] = 0;
|
|
466
|
+
for (var le = ve; le < ve + d; le++)
|
|
467
|
+
ne.set(le, null);
|
|
468
|
+
var we = {}, Ge = function(K, X, te) {
|
|
469
|
+
te && (K = "orig$" + K);
|
|
470
|
+
var F = e.asm[K];
|
|
471
|
+
if (!F) {
|
|
472
|
+
var _e = tn(K);
|
|
473
|
+
F = e[_e], F || (F = we[_e]), !F && K.startsWith("invoke_") && (F = Ko(K.split("_")[1]));
|
|
474
|
+
}
|
|
475
|
+
return F;
|
|
476
|
+
};
|
|
477
|
+
for (var Ve in e)
|
|
478
|
+
Ve in me || (me[Ve] = e[Ve]);
|
|
479
|
+
var ei = {
|
|
480
|
+
get: function(K, X) {
|
|
481
|
+
switch (X) {
|
|
482
|
+
case "__memory_base":
|
|
483
|
+
return k;
|
|
484
|
+
case "__table_base":
|
|
485
|
+
return ve;
|
|
486
|
+
}
|
|
487
|
+
if (X in K)
|
|
488
|
+
return K[X];
|
|
489
|
+
if (X.startsWith("g$")) {
|
|
490
|
+
var te = X.substr(2);
|
|
491
|
+
return K[X] = function() {
|
|
492
|
+
return Ge(te);
|
|
493
|
+
};
|
|
494
|
+
}
|
|
495
|
+
if (X.startsWith("fp$")) {
|
|
496
|
+
var F = X.split("$");
|
|
497
|
+
P(F.length == 3);
|
|
498
|
+
var te = F[1], _e = F[2], ti = _e.indexOf("j") >= 0, xe = 0;
|
|
499
|
+
return K[X] = function() {
|
|
500
|
+
if (!xe) {
|
|
501
|
+
var ai = Ge(te, "function", ti);
|
|
502
|
+
xe = B(ai, _e);
|
|
503
|
+
}
|
|
504
|
+
return xe;
|
|
505
|
+
};
|
|
506
|
+
}
|
|
507
|
+
return K[X] = function() {
|
|
508
|
+
return Ge(X).apply(null, arguments);
|
|
509
|
+
};
|
|
510
|
+
}
|
|
511
|
+
}, un = new Proxy(me, ei), ln = {
|
|
512
|
+
global: { NaN: NaN, Infinity: 1 / 0 },
|
|
513
|
+
"global.Math": Math,
|
|
514
|
+
env: un,
|
|
515
|
+
wasi_snapshot_preview1: un
|
|
516
|
+
};
|
|
517
|
+
function pn(K, X) {
|
|
518
|
+
var te = nn(
|
|
519
|
+
K.exports,
|
|
520
|
+
k,
|
|
521
|
+
X
|
|
522
|
+
), F = te.__post_instantiate;
|
|
523
|
+
return F && (be ? F() : Ee.push(F)), te;
|
|
524
|
+
}
|
|
525
|
+
if (i.loadAsync)
|
|
526
|
+
return WebAssembly.instantiate(t, ln).then(function(K) {
|
|
527
|
+
return pn(K.instance, we);
|
|
528
|
+
});
|
|
529
|
+
var ni = new WebAssembly.Instance(
|
|
530
|
+
new WebAssembly.Module(t),
|
|
531
|
+
ln
|
|
532
|
+
);
|
|
533
|
+
return pn(ni, we);
|
|
534
|
+
}
|
|
535
|
+
return i.loadAsync ? Promise.all(
|
|
536
|
+
S.map(function(k) {
|
|
537
|
+
return Ie(k, i);
|
|
538
|
+
})
|
|
539
|
+
).then(function() {
|
|
540
|
+
return Z();
|
|
541
|
+
}) : (S.forEach(function(k) {
|
|
542
|
+
Ie(k, i);
|
|
543
|
+
}), Z());
|
|
544
|
+
}
|
|
545
|
+
function ko(t) {
|
|
546
|
+
return fetch(t, { credentials: "same-origin" }).then(function(i) {
|
|
547
|
+
if (!i.ok)
|
|
548
|
+
throw "failed to load binary file at '" + t + "'";
|
|
549
|
+
return i.arrayBuffer();
|
|
550
|
+
}).then(function(i) {
|
|
551
|
+
return new Uint8Array(i);
|
|
552
|
+
});
|
|
553
|
+
}
|
|
554
|
+
function Ie(t, i) {
|
|
555
|
+
t == "__self__" && !ee.loadedLibNames[t] && (ee.loadedLibs[-1] = {
|
|
556
|
+
refcount: 1 / 0,
|
|
557
|
+
name: "__self__",
|
|
558
|
+
module: e.asm,
|
|
559
|
+
global: !0
|
|
560
|
+
}, ee.loadedLibNames.__self__ = -1), i = i || { global: !0, nodelete: !0 };
|
|
561
|
+
var r = ee.loadedLibNames[t], m;
|
|
562
|
+
if (r)
|
|
563
|
+
return m = ee.loadedLibs[r], i.global && !m.global && (m.global = !0, m.module !== "loading" && d(m.module)), i.nodelete && m.refcount !== 1 / 0 && (m.refcount = 1 / 0), m.refcount++, i.loadAsync ? Promise.resolve(r) : r;
|
|
564
|
+
r = ee.nextHandle++, m = {
|
|
565
|
+
refcount: i.nodelete ? 1 / 0 : 1,
|
|
566
|
+
name: t,
|
|
567
|
+
module: "loading",
|
|
568
|
+
global: i.global
|
|
569
|
+
}, ee.loadedLibNames[t] = r, ee.loadedLibs[r] = m;
|
|
570
|
+
function R(S) {
|
|
571
|
+
if (i.fs) {
|
|
572
|
+
var v = i.fs.readFile(S, { encoding: "binary" });
|
|
573
|
+
return v instanceof Uint8Array || (v = new Uint8Array(lib_data)), i.loadAsync ? Promise.resolve(v) : v;
|
|
574
|
+
}
|
|
575
|
+
return i.loadAsync ? ko(S) : s(S);
|
|
576
|
+
}
|
|
577
|
+
function D(S) {
|
|
578
|
+
return Wo(S, i);
|
|
579
|
+
}
|
|
580
|
+
function c() {
|
|
581
|
+
if (e.preloadedWasm !== void 0 && e.preloadedWasm[t] !== void 0) {
|
|
582
|
+
var S = e.preloadedWasm[t];
|
|
583
|
+
return i.loadAsync ? Promise.resolve(S) : S;
|
|
584
|
+
}
|
|
585
|
+
return i.loadAsync ? R(t).then(function(v) {
|
|
586
|
+
return D(v);
|
|
587
|
+
}) : D(R(t));
|
|
588
|
+
}
|
|
589
|
+
function d(S) {
|
|
590
|
+
for (var v in S)
|
|
591
|
+
if (S.hasOwnProperty(v)) {
|
|
592
|
+
var z = tn(v);
|
|
593
|
+
e.hasOwnProperty(z) || (e[z] = S[v]);
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
function G(S) {
|
|
597
|
+
m.global && d(S), m.module = S;
|
|
598
|
+
}
|
|
599
|
+
return i.loadAsync ? c().then(function(S) {
|
|
600
|
+
return G(S), r;
|
|
601
|
+
}) : (G(c()), r);
|
|
602
|
+
}
|
|
603
|
+
function Xo() {
|
|
604
|
+
var t = [];
|
|
605
|
+
if (e.dynamicLibraries && (t = t.concat(e.dynamicLibraries)), !!t.length) {
|
|
606
|
+
if (!s) {
|
|
607
|
+
qe(), Promise.all(
|
|
608
|
+
t.map(function(i) {
|
|
609
|
+
return Ie(i, {
|
|
610
|
+
loadAsync: !0,
|
|
611
|
+
global: !0,
|
|
612
|
+
nodelete: !0
|
|
613
|
+
});
|
|
614
|
+
})
|
|
615
|
+
).then(function() {
|
|
616
|
+
ze();
|
|
617
|
+
});
|
|
618
|
+
return;
|
|
619
|
+
}
|
|
620
|
+
t.forEach(function(i) {
|
|
621
|
+
Ie(i, { global: !0, nodelete: !0 });
|
|
622
|
+
});
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
function Jo(t, i, r) {
|
|
626
|
+
pe.copyWithin(t, i, i + r);
|
|
627
|
+
}
|
|
628
|
+
function Yo(t) {
|
|
629
|
+
se("OOM");
|
|
630
|
+
}
|
|
631
|
+
function jo(t) {
|
|
632
|
+
Yo();
|
|
633
|
+
}
|
|
634
|
+
function qo() {
|
|
635
|
+
return e.___heap_base;
|
|
636
|
+
}
|
|
637
|
+
Ee.push(
|
|
638
|
+
{
|
|
639
|
+
func: function() {
|
|
640
|
+
on();
|
|
641
|
+
}
|
|
642
|
+
},
|
|
643
|
+
{
|
|
644
|
+
func: function() {
|
|
645
|
+
an();
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
);
|
|
649
|
+
var Se = {
|
|
650
|
+
__indirect_function_table: ie,
|
|
651
|
+
__memory_base: 1024,
|
|
652
|
+
__stack_pointer: So,
|
|
653
|
+
__table_base: 1,
|
|
654
|
+
emscripten_memcpy_big: Jo,
|
|
655
|
+
emscripten_resize_heap: jo,
|
|
656
|
+
g$__heap_base: qo,
|
|
657
|
+
memory: g
|
|
658
|
+
};
|
|
659
|
+
xo();
|
|
660
|
+
var an = e.___wasm_call_ctors = function() {
|
|
661
|
+
return (an = e.___wasm_call_ctors = e.asm.__wasm_call_ctors).apply(null, arguments);
|
|
662
|
+
};
|
|
663
|
+
e._TA_ACCBANDS = function() {
|
|
664
|
+
return (e._TA_ACCBANDS = e.asm.TA_ACCBANDS).apply(null, arguments);
|
|
665
|
+
};
|
|
666
|
+
var Pe = e._malloc = function() {
|
|
667
|
+
return (Pe = e._malloc = e.asm.malloc).apply(
|
|
668
|
+
null,
|
|
669
|
+
arguments
|
|
670
|
+
);
|
|
671
|
+
};
|
|
672
|
+
e._free = function() {
|
|
673
|
+
return (e._free = e.asm.free).apply(
|
|
674
|
+
null,
|
|
675
|
+
arguments
|
|
676
|
+
);
|
|
677
|
+
}, e._TA_SMA = function() {
|
|
678
|
+
return (e._TA_SMA = e.asm.TA_SMA).apply(
|
|
679
|
+
null,
|
|
680
|
+
arguments
|
|
681
|
+
);
|
|
682
|
+
}, e._TA_ACOS = function() {
|
|
683
|
+
return (e._TA_ACOS = e.asm.TA_ACOS).apply(
|
|
684
|
+
null,
|
|
685
|
+
arguments
|
|
686
|
+
);
|
|
687
|
+
}, e._TA_AD = function() {
|
|
688
|
+
return (e._TA_AD = e.asm.TA_AD).apply(
|
|
689
|
+
null,
|
|
690
|
+
arguments
|
|
691
|
+
);
|
|
692
|
+
}, e._TA_ADD = function() {
|
|
693
|
+
return (e._TA_ADD = e.asm.TA_ADD).apply(
|
|
694
|
+
null,
|
|
695
|
+
arguments
|
|
696
|
+
);
|
|
697
|
+
}, e._TA_ADOSC = function() {
|
|
698
|
+
return (e._TA_ADOSC = e.asm.TA_ADOSC).apply(null, arguments);
|
|
699
|
+
}, e._TA_ADX = function() {
|
|
700
|
+
return (e._TA_ADX = e.asm.TA_ADX).apply(
|
|
701
|
+
null,
|
|
702
|
+
arguments
|
|
703
|
+
);
|
|
704
|
+
}, e._TA_ADXR = function() {
|
|
705
|
+
return (e._TA_ADXR = e.asm.TA_ADXR).apply(
|
|
706
|
+
null,
|
|
707
|
+
arguments
|
|
708
|
+
);
|
|
709
|
+
}, e._TA_APO = function() {
|
|
710
|
+
return (e._TA_APO = e.asm.TA_APO).apply(
|
|
711
|
+
null,
|
|
712
|
+
arguments
|
|
713
|
+
);
|
|
714
|
+
}, e._TA_MA = function() {
|
|
715
|
+
return (e._TA_MA = e.asm.TA_MA).apply(
|
|
716
|
+
null,
|
|
717
|
+
arguments
|
|
718
|
+
);
|
|
719
|
+
}, e._TA_AROON = function() {
|
|
720
|
+
return (e._TA_AROON = e.asm.TA_AROON).apply(null, arguments);
|
|
721
|
+
}, e._TA_AROONOSC = function() {
|
|
722
|
+
return (e._TA_AROONOSC = e.asm.TA_AROONOSC).apply(null, arguments);
|
|
723
|
+
}, e._TA_ASIN = function() {
|
|
724
|
+
return (e._TA_ASIN = e.asm.TA_ASIN).apply(
|
|
725
|
+
null,
|
|
726
|
+
arguments
|
|
727
|
+
);
|
|
728
|
+
}, e._TA_ATAN = function() {
|
|
729
|
+
return (e._TA_ATAN = e.asm.TA_ATAN).apply(
|
|
730
|
+
null,
|
|
731
|
+
arguments
|
|
732
|
+
);
|
|
733
|
+
}, e._TA_ATR = function() {
|
|
734
|
+
return (e._TA_ATR = e.asm.TA_ATR).apply(
|
|
735
|
+
null,
|
|
736
|
+
arguments
|
|
737
|
+
);
|
|
738
|
+
}, e._TA_TRANGE = function() {
|
|
739
|
+
return (e._TA_TRANGE = e.asm.TA_TRANGE).apply(null, arguments);
|
|
740
|
+
}, e._TA_AVGDEV = function() {
|
|
741
|
+
return (e._TA_AVGDEV = e.asm.TA_AVGDEV).apply(null, arguments);
|
|
742
|
+
}, e._TA_AVGPRICE = function() {
|
|
743
|
+
return (e._TA_AVGPRICE = e.asm.TA_AVGPRICE).apply(null, arguments);
|
|
744
|
+
}, e._TA_BBANDS = function() {
|
|
745
|
+
return (e._TA_BBANDS = e.asm.TA_BBANDS).apply(null, arguments);
|
|
746
|
+
}, e._TA_STDDEV = function() {
|
|
747
|
+
return (e._TA_STDDEV = e.asm.TA_STDDEV).apply(null, arguments);
|
|
748
|
+
}, e._TA_BETA = function() {
|
|
749
|
+
return (e._TA_BETA = e.asm.TA_BETA).apply(
|
|
750
|
+
null,
|
|
751
|
+
arguments
|
|
752
|
+
);
|
|
753
|
+
}, e._TA_BOP = function() {
|
|
754
|
+
return (e._TA_BOP = e.asm.TA_BOP).apply(
|
|
755
|
+
null,
|
|
756
|
+
arguments
|
|
757
|
+
);
|
|
758
|
+
}, e._TA_CCI = function() {
|
|
759
|
+
return (e._TA_CCI = e.asm.TA_CCI).apply(
|
|
760
|
+
null,
|
|
761
|
+
arguments
|
|
762
|
+
);
|
|
763
|
+
}, e._TA_CDL2CROWS = function() {
|
|
764
|
+
return (e._TA_CDL2CROWS = e.asm.TA_CDL2CROWS).apply(null, arguments);
|
|
765
|
+
}, e._TA_CDL3BLACKCROWS = function() {
|
|
766
|
+
return (e._TA_CDL3BLACKCROWS = e.asm.TA_CDL3BLACKCROWS).apply(null, arguments);
|
|
767
|
+
}, e._TA_CDL3INSIDE = function() {
|
|
768
|
+
return (e._TA_CDL3INSIDE = e.asm.TA_CDL3INSIDE).apply(null, arguments);
|
|
769
|
+
}, e._TA_CDL3LINESTRIKE = function() {
|
|
770
|
+
return (e._TA_CDL3LINESTRIKE = e.asm.TA_CDL3LINESTRIKE).apply(null, arguments);
|
|
771
|
+
}, e._TA_CDL3OUTSIDE = function() {
|
|
772
|
+
return (e._TA_CDL3OUTSIDE = e.asm.TA_CDL3OUTSIDE).apply(null, arguments);
|
|
773
|
+
}, e._TA_CDL3STARSINSOUTH = function() {
|
|
774
|
+
return (e._TA_CDL3STARSINSOUTH = e.asm.TA_CDL3STARSINSOUTH).apply(null, arguments);
|
|
775
|
+
}, e._TA_CDL3WHITESOLDIERS = function() {
|
|
776
|
+
return (e._TA_CDL3WHITESOLDIERS = e.asm.TA_CDL3WHITESOLDIERS).apply(null, arguments);
|
|
777
|
+
}, e._TA_CDLABANDONEDBABY = function() {
|
|
778
|
+
return (e._TA_CDLABANDONEDBABY = e.asm.TA_CDLABANDONEDBABY).apply(null, arguments);
|
|
779
|
+
}, e._TA_CDLADVANCEBLOCK = function() {
|
|
780
|
+
return (e._TA_CDLADVANCEBLOCK = e.asm.TA_CDLADVANCEBLOCK).apply(null, arguments);
|
|
781
|
+
}, e._TA_CDLBELTHOLD = function() {
|
|
782
|
+
return (e._TA_CDLBELTHOLD = e.asm.TA_CDLBELTHOLD).apply(null, arguments);
|
|
783
|
+
}, e._TA_CDLBREAKAWAY = function() {
|
|
784
|
+
return (e._TA_CDLBREAKAWAY = e.asm.TA_CDLBREAKAWAY).apply(null, arguments);
|
|
785
|
+
}, e._TA_CDLCLOSINGMARUBOZU = function() {
|
|
786
|
+
return (e._TA_CDLCLOSINGMARUBOZU = e.asm.TA_CDLCLOSINGMARUBOZU).apply(null, arguments);
|
|
787
|
+
}, e._TA_CDLCONCEALBABYSWALL = function() {
|
|
788
|
+
return (e._TA_CDLCONCEALBABYSWALL = e.asm.TA_CDLCONCEALBABYSWALL).apply(null, arguments);
|
|
789
|
+
}, e._TA_CDLCOUNTERATTACK = function() {
|
|
790
|
+
return (e._TA_CDLCOUNTERATTACK = e.asm.TA_CDLCOUNTERATTACK).apply(null, arguments);
|
|
791
|
+
}, e._TA_CDLDARKCLOUDCOVER = function() {
|
|
792
|
+
return (e._TA_CDLDARKCLOUDCOVER = e.asm.TA_CDLDARKCLOUDCOVER).apply(null, arguments);
|
|
793
|
+
}, e._TA_CDLDOJI = function() {
|
|
794
|
+
return (e._TA_CDLDOJI = e.asm.TA_CDLDOJI).apply(null, arguments);
|
|
795
|
+
}, e._TA_CDLDOJISTAR = function() {
|
|
796
|
+
return (e._TA_CDLDOJISTAR = e.asm.TA_CDLDOJISTAR).apply(null, arguments);
|
|
797
|
+
}, e._TA_CDLDRAGONFLYDOJI = function() {
|
|
798
|
+
return (e._TA_CDLDRAGONFLYDOJI = e.asm.TA_CDLDRAGONFLYDOJI).apply(null, arguments);
|
|
799
|
+
}, e._TA_CDLENGULFING = function() {
|
|
800
|
+
return (e._TA_CDLENGULFING = e.asm.TA_CDLENGULFING).apply(null, arguments);
|
|
801
|
+
}, e._TA_CDLEVENINGDOJISTAR = function() {
|
|
802
|
+
return (e._TA_CDLEVENINGDOJISTAR = e.asm.TA_CDLEVENINGDOJISTAR).apply(null, arguments);
|
|
803
|
+
}, e._TA_CDLEVENINGSTAR = function() {
|
|
804
|
+
return (e._TA_CDLEVENINGSTAR = e.asm.TA_CDLEVENINGSTAR).apply(null, arguments);
|
|
805
|
+
}, e._TA_CDLGAPSIDESIDEWHITE = function() {
|
|
806
|
+
return (e._TA_CDLGAPSIDESIDEWHITE = e.asm.TA_CDLGAPSIDESIDEWHITE).apply(null, arguments);
|
|
807
|
+
}, e._TA_CDLGRAVESTONEDOJI = function() {
|
|
808
|
+
return (e._TA_CDLGRAVESTONEDOJI = e.asm.TA_CDLGRAVESTONEDOJI).apply(null, arguments);
|
|
809
|
+
}, e._TA_CDLHAMMER = function() {
|
|
810
|
+
return (e._TA_CDLHAMMER = e.asm.TA_CDLHAMMER).apply(null, arguments);
|
|
811
|
+
}, e._TA_CDLHANGINGMAN = function() {
|
|
812
|
+
return (e._TA_CDLHANGINGMAN = e.asm.TA_CDLHANGINGMAN).apply(null, arguments);
|
|
813
|
+
}, e._TA_CDLHARAMI = function() {
|
|
814
|
+
return (e._TA_CDLHARAMI = e.asm.TA_CDLHARAMI).apply(null, arguments);
|
|
815
|
+
}, e._TA_CDLHARAMICROSS = function() {
|
|
816
|
+
return (e._TA_CDLHARAMICROSS = e.asm.TA_CDLHARAMICROSS).apply(null, arguments);
|
|
817
|
+
}, e._TA_CDLHIGHWAVE = function() {
|
|
818
|
+
return (e._TA_CDLHIGHWAVE = e.asm.TA_CDLHIGHWAVE).apply(null, arguments);
|
|
819
|
+
}, e._TA_CDLHIKKAKE = function() {
|
|
820
|
+
return (e._TA_CDLHIKKAKE = e.asm.TA_CDLHIKKAKE).apply(null, arguments);
|
|
821
|
+
}, e._TA_CDLHIKKAKEMOD = function() {
|
|
822
|
+
return (e._TA_CDLHIKKAKEMOD = e.asm.TA_CDLHIKKAKEMOD).apply(null, arguments);
|
|
823
|
+
}, e._TA_CDLHOMINGPIGEON = function() {
|
|
824
|
+
return (e._TA_CDLHOMINGPIGEON = e.asm.TA_CDLHOMINGPIGEON).apply(null, arguments);
|
|
825
|
+
}, e._TA_CDLIDENTICAL3CROWS = function() {
|
|
826
|
+
return (e._TA_CDLIDENTICAL3CROWS = e.asm.TA_CDLIDENTICAL3CROWS).apply(null, arguments);
|
|
827
|
+
}, e._TA_CDLINNECK = function() {
|
|
828
|
+
return (e._TA_CDLINNECK = e.asm.TA_CDLINNECK).apply(null, arguments);
|
|
829
|
+
}, e._TA_CDLINVERTEDHAMMER = function() {
|
|
830
|
+
return (e._TA_CDLINVERTEDHAMMER = e.asm.TA_CDLINVERTEDHAMMER).apply(null, arguments);
|
|
831
|
+
}, e._TA_CDLKICKING = function() {
|
|
832
|
+
return (e._TA_CDLKICKING = e.asm.TA_CDLKICKING).apply(null, arguments);
|
|
833
|
+
}, e._TA_CDLKICKINGBYLENGTH = function() {
|
|
834
|
+
return (e._TA_CDLKICKINGBYLENGTH = e.asm.TA_CDLKICKINGBYLENGTH).apply(null, arguments);
|
|
835
|
+
}, e._TA_CDLLADDERBOTTOM = function() {
|
|
836
|
+
return (e._TA_CDLLADDERBOTTOM = e.asm.TA_CDLLADDERBOTTOM).apply(null, arguments);
|
|
837
|
+
}, e._TA_CDLLONGLEGGEDDOJI = function() {
|
|
838
|
+
return (e._TA_CDLLONGLEGGEDDOJI = e.asm.TA_CDLLONGLEGGEDDOJI).apply(null, arguments);
|
|
839
|
+
}, e._TA_CDLLONGLINE = function() {
|
|
840
|
+
return (e._TA_CDLLONGLINE = e.asm.TA_CDLLONGLINE).apply(null, arguments);
|
|
841
|
+
}, e._TA_CDLMARUBOZU = function() {
|
|
842
|
+
return (e._TA_CDLMARUBOZU = e.asm.TA_CDLMARUBOZU).apply(null, arguments);
|
|
843
|
+
}, e._TA_CDLMATCHINGLOW = function() {
|
|
844
|
+
return (e._TA_CDLMATCHINGLOW = e.asm.TA_CDLMATCHINGLOW).apply(null, arguments);
|
|
845
|
+
}, e._TA_CDLMATHOLD = function() {
|
|
846
|
+
return (e._TA_CDLMATHOLD = e.asm.TA_CDLMATHOLD).apply(null, arguments);
|
|
847
|
+
}, e._TA_CDLMORNINGDOJISTAR = function() {
|
|
848
|
+
return (e._TA_CDLMORNINGDOJISTAR = e.asm.TA_CDLMORNINGDOJISTAR).apply(null, arguments);
|
|
849
|
+
}, e._TA_CDLMORNINGSTAR = function() {
|
|
850
|
+
return (e._TA_CDLMORNINGSTAR = e.asm.TA_CDLMORNINGSTAR).apply(null, arguments);
|
|
851
|
+
}, e._TA_CDLONNECK = function() {
|
|
852
|
+
return (e._TA_CDLONNECK = e.asm.TA_CDLONNECK).apply(null, arguments);
|
|
853
|
+
}, e._TA_CDLPIERCING = function() {
|
|
854
|
+
return (e._TA_CDLPIERCING = e.asm.TA_CDLPIERCING).apply(null, arguments);
|
|
855
|
+
}, e._TA_CDLRICKSHAWMAN = function() {
|
|
856
|
+
return (e._TA_CDLRICKSHAWMAN = e.asm.TA_CDLRICKSHAWMAN).apply(null, arguments);
|
|
857
|
+
}, e._TA_CDLRISEFALL3METHODS = function() {
|
|
858
|
+
return (e._TA_CDLRISEFALL3METHODS = e.asm.TA_CDLRISEFALL3METHODS).apply(null, arguments);
|
|
859
|
+
}, e._TA_CDLSEPARATINGLINES = function() {
|
|
860
|
+
return (e._TA_CDLSEPARATINGLINES = e.asm.TA_CDLSEPARATINGLINES).apply(null, arguments);
|
|
861
|
+
}, e._TA_CDLSHOOTINGSTAR = function() {
|
|
862
|
+
return (e._TA_CDLSHOOTINGSTAR = e.asm.TA_CDLSHOOTINGSTAR).apply(null, arguments);
|
|
863
|
+
}, e._TA_CDLSHORTLINE = function() {
|
|
864
|
+
return (e._TA_CDLSHORTLINE = e.asm.TA_CDLSHORTLINE).apply(null, arguments);
|
|
865
|
+
}, e._TA_CDLSPINNINGTOP = function() {
|
|
866
|
+
return (e._TA_CDLSPINNINGTOP = e.asm.TA_CDLSPINNINGTOP).apply(null, arguments);
|
|
867
|
+
}, e._TA_CDLSTALLEDPATTERN = function() {
|
|
868
|
+
return (e._TA_CDLSTALLEDPATTERN = e.asm.TA_CDLSTALLEDPATTERN).apply(null, arguments);
|
|
869
|
+
}, e._TA_CDLSTICKSANDWICH = function() {
|
|
870
|
+
return (e._TA_CDLSTICKSANDWICH = e.asm.TA_CDLSTICKSANDWICH).apply(null, arguments);
|
|
871
|
+
}, e._TA_CDLTAKURI = function() {
|
|
872
|
+
return (e._TA_CDLTAKURI = e.asm.TA_CDLTAKURI).apply(null, arguments);
|
|
873
|
+
}, e._TA_CDLTASUKIGAP = function() {
|
|
874
|
+
return (e._TA_CDLTASUKIGAP = e.asm.TA_CDLTASUKIGAP).apply(null, arguments);
|
|
875
|
+
}, e._TA_CDLTHRUSTING = function() {
|
|
876
|
+
return (e._TA_CDLTHRUSTING = e.asm.TA_CDLTHRUSTING).apply(null, arguments);
|
|
877
|
+
}, e._TA_CDLTRISTAR = function() {
|
|
878
|
+
return (e._TA_CDLTRISTAR = e.asm.TA_CDLTRISTAR).apply(null, arguments);
|
|
879
|
+
}, e._TA_CDLUNIQUE3RIVER = function() {
|
|
880
|
+
return (e._TA_CDLUNIQUE3RIVER = e.asm.TA_CDLUNIQUE3RIVER).apply(null, arguments);
|
|
881
|
+
}, e._TA_CDLUPSIDEGAP2CROWS = function() {
|
|
882
|
+
return (e._TA_CDLUPSIDEGAP2CROWS = e.asm.TA_CDLUPSIDEGAP2CROWS).apply(null, arguments);
|
|
883
|
+
}, e._TA_CDLXSIDEGAP3METHODS = function() {
|
|
884
|
+
return (e._TA_CDLXSIDEGAP3METHODS = e.asm.TA_CDLXSIDEGAP3METHODS).apply(null, arguments);
|
|
885
|
+
}, e._TA_CEIL = function() {
|
|
886
|
+
return (e._TA_CEIL = e.asm.TA_CEIL).apply(
|
|
887
|
+
null,
|
|
888
|
+
arguments
|
|
889
|
+
);
|
|
890
|
+
}, e._TA_CMO = function() {
|
|
891
|
+
return (e._TA_CMO = e.asm.TA_CMO).apply(
|
|
892
|
+
null,
|
|
893
|
+
arguments
|
|
894
|
+
);
|
|
895
|
+
}, e._TA_CORREL = function() {
|
|
896
|
+
return (e._TA_CORREL = e.asm.TA_CORREL).apply(null, arguments);
|
|
897
|
+
}, e._TA_COS = function() {
|
|
898
|
+
return (e._TA_COS = e.asm.TA_COS).apply(
|
|
899
|
+
null,
|
|
900
|
+
arguments
|
|
901
|
+
);
|
|
902
|
+
}, e._TA_COSH = function() {
|
|
903
|
+
return (e._TA_COSH = e.asm.TA_COSH).apply(
|
|
904
|
+
null,
|
|
905
|
+
arguments
|
|
906
|
+
);
|
|
907
|
+
}, e._TA_DEMA = function() {
|
|
908
|
+
return (e._TA_DEMA = e.asm.TA_DEMA).apply(
|
|
909
|
+
null,
|
|
910
|
+
arguments
|
|
911
|
+
);
|
|
912
|
+
}, e._TA_DIV = function() {
|
|
913
|
+
return (e._TA_DIV = e.asm.TA_DIV).apply(
|
|
914
|
+
null,
|
|
915
|
+
arguments
|
|
916
|
+
);
|
|
917
|
+
}, e._TA_DX = function() {
|
|
918
|
+
return (e._TA_DX = e.asm.TA_DX).apply(
|
|
919
|
+
null,
|
|
920
|
+
arguments
|
|
921
|
+
);
|
|
922
|
+
}, e._TA_EMA = function() {
|
|
923
|
+
return (e._TA_EMA = e.asm.TA_EMA).apply(
|
|
924
|
+
null,
|
|
925
|
+
arguments
|
|
926
|
+
);
|
|
927
|
+
}, e._TA_EXP = function() {
|
|
928
|
+
return (e._TA_EXP = e.asm.TA_EXP).apply(
|
|
929
|
+
null,
|
|
930
|
+
arguments
|
|
931
|
+
);
|
|
932
|
+
}, e._TA_FLOOR = function() {
|
|
933
|
+
return (e._TA_FLOOR = e.asm.TA_FLOOR).apply(null, arguments);
|
|
934
|
+
}, e._TA_HT_DCPERIOD = function() {
|
|
935
|
+
return (e._TA_HT_DCPERIOD = e.asm.TA_HT_DCPERIOD).apply(null, arguments);
|
|
936
|
+
}, e._TA_HT_DCPHASE = function() {
|
|
937
|
+
return (e._TA_HT_DCPHASE = e.asm.TA_HT_DCPHASE).apply(null, arguments);
|
|
938
|
+
}, e._TA_HT_PHASOR = function() {
|
|
939
|
+
return (e._TA_HT_PHASOR = e.asm.TA_HT_PHASOR).apply(null, arguments);
|
|
940
|
+
}, e._TA_HT_SINE = function() {
|
|
941
|
+
return (e._TA_HT_SINE = e.asm.TA_HT_SINE).apply(null, arguments);
|
|
942
|
+
}, e._TA_HT_TRENDLINE = function() {
|
|
943
|
+
return (e._TA_HT_TRENDLINE = e.asm.TA_HT_TRENDLINE).apply(null, arguments);
|
|
944
|
+
}, e._TA_HT_TRENDMODE = function() {
|
|
945
|
+
return (e._TA_HT_TRENDMODE = e.asm.TA_HT_TRENDMODE).apply(null, arguments);
|
|
946
|
+
}, e._TA_IMI = function() {
|
|
947
|
+
return (e._TA_IMI = e.asm.TA_IMI).apply(
|
|
948
|
+
null,
|
|
949
|
+
arguments
|
|
950
|
+
);
|
|
951
|
+
}, e._TA_KAMA = function() {
|
|
952
|
+
return (e._TA_KAMA = e.asm.TA_KAMA).apply(
|
|
953
|
+
null,
|
|
954
|
+
arguments
|
|
955
|
+
);
|
|
956
|
+
}, e._TA_LINEARREG = function() {
|
|
957
|
+
return (e._TA_LINEARREG = e.asm.TA_LINEARREG).apply(null, arguments);
|
|
958
|
+
}, e._TA_LINEARREG_ANGLE = function() {
|
|
959
|
+
return (e._TA_LINEARREG_ANGLE = e.asm.TA_LINEARREG_ANGLE).apply(null, arguments);
|
|
960
|
+
}, e._TA_LINEARREG_INTERCEPT = function() {
|
|
961
|
+
return (e._TA_LINEARREG_INTERCEPT = e.asm.TA_LINEARREG_INTERCEPT).apply(null, arguments);
|
|
962
|
+
}, e._TA_LINEARREG_SLOPE = function() {
|
|
963
|
+
return (e._TA_LINEARREG_SLOPE = e.asm.TA_LINEARREG_SLOPE).apply(null, arguments);
|
|
964
|
+
}, e._TA_LN = function() {
|
|
965
|
+
return (e._TA_LN = e.asm.TA_LN).apply(
|
|
966
|
+
null,
|
|
967
|
+
arguments
|
|
968
|
+
);
|
|
969
|
+
}, e._TA_LOG10 = function() {
|
|
970
|
+
return (e._TA_LOG10 = e.asm.TA_LOG10).apply(null, arguments);
|
|
971
|
+
}, e._TA_WMA = function() {
|
|
972
|
+
return (e._TA_WMA = e.asm.TA_WMA).apply(
|
|
973
|
+
null,
|
|
974
|
+
arguments
|
|
975
|
+
);
|
|
976
|
+
}, e._TA_TEMA = function() {
|
|
977
|
+
return (e._TA_TEMA = e.asm.TA_TEMA).apply(
|
|
978
|
+
null,
|
|
979
|
+
arguments
|
|
980
|
+
);
|
|
981
|
+
}, e._TA_TRIMA = function() {
|
|
982
|
+
return (e._TA_TRIMA = e.asm.TA_TRIMA).apply(null, arguments);
|
|
983
|
+
}, e._TA_MAMA = function() {
|
|
984
|
+
return (e._TA_MAMA = e.asm.TA_MAMA).apply(
|
|
985
|
+
null,
|
|
986
|
+
arguments
|
|
987
|
+
);
|
|
988
|
+
}, e._TA_T3 = function() {
|
|
989
|
+
return (e._TA_T3 = e.asm.TA_T3).apply(
|
|
990
|
+
null,
|
|
991
|
+
arguments
|
|
992
|
+
);
|
|
993
|
+
}, e._TA_MACD = function() {
|
|
994
|
+
return (e._TA_MACD = e.asm.TA_MACD).apply(
|
|
995
|
+
null,
|
|
996
|
+
arguments
|
|
997
|
+
);
|
|
998
|
+
}, e._TA_MACDEXT = function() {
|
|
999
|
+
return (e._TA_MACDEXT = e.asm.TA_MACDEXT).apply(null, arguments);
|
|
1000
|
+
}, e._TA_MACDFIX = function() {
|
|
1001
|
+
return (e._TA_MACDFIX = e.asm.TA_MACDFIX).apply(null, arguments);
|
|
1002
|
+
}, e._TA_MAVP = function() {
|
|
1003
|
+
return (e._TA_MAVP = e.asm.TA_MAVP).apply(
|
|
1004
|
+
null,
|
|
1005
|
+
arguments
|
|
1006
|
+
);
|
|
1007
|
+
}, e._TA_MAX = function() {
|
|
1008
|
+
return (e._TA_MAX = e.asm.TA_MAX).apply(
|
|
1009
|
+
null,
|
|
1010
|
+
arguments
|
|
1011
|
+
);
|
|
1012
|
+
}, e._TA_MAXINDEX = function() {
|
|
1013
|
+
return (e._TA_MAXINDEX = e.asm.TA_MAXINDEX).apply(null, arguments);
|
|
1014
|
+
}, e._TA_MEDPRICE = function() {
|
|
1015
|
+
return (e._TA_MEDPRICE = e.asm.TA_MEDPRICE).apply(null, arguments);
|
|
1016
|
+
}, e._TA_MFI = function() {
|
|
1017
|
+
return (e._TA_MFI = e.asm.TA_MFI).apply(
|
|
1018
|
+
null,
|
|
1019
|
+
arguments
|
|
1020
|
+
);
|
|
1021
|
+
}, e._TA_MIDPOINT = function() {
|
|
1022
|
+
return (e._TA_MIDPOINT = e.asm.TA_MIDPOINT).apply(null, arguments);
|
|
1023
|
+
}, e._TA_MIDPRICE = function() {
|
|
1024
|
+
return (e._TA_MIDPRICE = e.asm.TA_MIDPRICE).apply(null, arguments);
|
|
1025
|
+
}, e._TA_MIN = function() {
|
|
1026
|
+
return (e._TA_MIN = e.asm.TA_MIN).apply(
|
|
1027
|
+
null,
|
|
1028
|
+
arguments
|
|
1029
|
+
);
|
|
1030
|
+
}, e._TA_MININDEX = function() {
|
|
1031
|
+
return (e._TA_MININDEX = e.asm.TA_MININDEX).apply(null, arguments);
|
|
1032
|
+
}, e._TA_MINMAX = function() {
|
|
1033
|
+
return (e._TA_MINMAX = e.asm.TA_MINMAX).apply(null, arguments);
|
|
1034
|
+
}, e._TA_MINMAXINDEX = function() {
|
|
1035
|
+
return (e._TA_MINMAXINDEX = e.asm.TA_MINMAXINDEX).apply(null, arguments);
|
|
1036
|
+
}, e._TA_MINUS_DI = function() {
|
|
1037
|
+
return (e._TA_MINUS_DI = e.asm.TA_MINUS_DI).apply(null, arguments);
|
|
1038
|
+
}, e._TA_MINUS_DM = function() {
|
|
1039
|
+
return (e._TA_MINUS_DM = e.asm.TA_MINUS_DM).apply(null, arguments);
|
|
1040
|
+
}, e._TA_MOM = function() {
|
|
1041
|
+
return (e._TA_MOM = e.asm.TA_MOM).apply(
|
|
1042
|
+
null,
|
|
1043
|
+
arguments
|
|
1044
|
+
);
|
|
1045
|
+
}, e._TA_MULT = function() {
|
|
1046
|
+
return (e._TA_MULT = e.asm.TA_MULT).apply(
|
|
1047
|
+
null,
|
|
1048
|
+
arguments
|
|
1049
|
+
);
|
|
1050
|
+
}, e._TA_NATR = function() {
|
|
1051
|
+
return (e._TA_NATR = e.asm.TA_NATR).apply(
|
|
1052
|
+
null,
|
|
1053
|
+
arguments
|
|
1054
|
+
);
|
|
1055
|
+
}, e._TA_OBV = function() {
|
|
1056
|
+
return (e._TA_OBV = e.asm.TA_OBV).apply(
|
|
1057
|
+
null,
|
|
1058
|
+
arguments
|
|
1059
|
+
);
|
|
1060
|
+
}, e._TA_PLUS_DI = function() {
|
|
1061
|
+
return (e._TA_PLUS_DI = e.asm.TA_PLUS_DI).apply(null, arguments);
|
|
1062
|
+
}, e._TA_PLUS_DM = function() {
|
|
1063
|
+
return (e._TA_PLUS_DM = e.asm.TA_PLUS_DM).apply(null, arguments);
|
|
1064
|
+
}, e._TA_PPO = function() {
|
|
1065
|
+
return (e._TA_PPO = e.asm.TA_PPO).apply(
|
|
1066
|
+
null,
|
|
1067
|
+
arguments
|
|
1068
|
+
);
|
|
1069
|
+
}, e._TA_ROC = function() {
|
|
1070
|
+
return (e._TA_ROC = e.asm.TA_ROC).apply(
|
|
1071
|
+
null,
|
|
1072
|
+
arguments
|
|
1073
|
+
);
|
|
1074
|
+
}, e._TA_ROCP = function() {
|
|
1075
|
+
return (e._TA_ROCP = e.asm.TA_ROCP).apply(
|
|
1076
|
+
null,
|
|
1077
|
+
arguments
|
|
1078
|
+
);
|
|
1079
|
+
}, e._TA_ROCR = function() {
|
|
1080
|
+
return (e._TA_ROCR = e.asm.TA_ROCR).apply(
|
|
1081
|
+
null,
|
|
1082
|
+
arguments
|
|
1083
|
+
);
|
|
1084
|
+
}, e._TA_ROCR100 = function() {
|
|
1085
|
+
return (e._TA_ROCR100 = e.asm.TA_ROCR100).apply(null, arguments);
|
|
1086
|
+
}, e._TA_RSI = function() {
|
|
1087
|
+
return (e._TA_RSI = e.asm.TA_RSI).apply(
|
|
1088
|
+
null,
|
|
1089
|
+
arguments
|
|
1090
|
+
);
|
|
1091
|
+
}, e._TA_SAR = function() {
|
|
1092
|
+
return (e._TA_SAR = e.asm.TA_SAR).apply(
|
|
1093
|
+
null,
|
|
1094
|
+
arguments
|
|
1095
|
+
);
|
|
1096
|
+
}, e._TA_SAREXT = function() {
|
|
1097
|
+
return (e._TA_SAREXT = e.asm.TA_SAREXT).apply(null, arguments);
|
|
1098
|
+
}, e._TA_SIN = function() {
|
|
1099
|
+
return (e._TA_SIN = e.asm.TA_SIN).apply(
|
|
1100
|
+
null,
|
|
1101
|
+
arguments
|
|
1102
|
+
);
|
|
1103
|
+
}, e._TA_SINH = function() {
|
|
1104
|
+
return (e._TA_SINH = e.asm.TA_SINH).apply(
|
|
1105
|
+
null,
|
|
1106
|
+
arguments
|
|
1107
|
+
);
|
|
1108
|
+
}, e._TA_SQRT = function() {
|
|
1109
|
+
return (e._TA_SQRT = e.asm.TA_SQRT).apply(
|
|
1110
|
+
null,
|
|
1111
|
+
arguments
|
|
1112
|
+
);
|
|
1113
|
+
}, e._TA_STOCH = function() {
|
|
1114
|
+
return (e._TA_STOCH = e.asm.TA_STOCH).apply(null, arguments);
|
|
1115
|
+
}, e._TA_STOCHF = function() {
|
|
1116
|
+
return (e._TA_STOCHF = e.asm.TA_STOCHF).apply(null, arguments);
|
|
1117
|
+
}, e._TA_STOCHRSI = function() {
|
|
1118
|
+
return (e._TA_STOCHRSI = e.asm.TA_STOCHRSI).apply(null, arguments);
|
|
1119
|
+
}, e._TA_SUB = function() {
|
|
1120
|
+
return (e._TA_SUB = e.asm.TA_SUB).apply(
|
|
1121
|
+
null,
|
|
1122
|
+
arguments
|
|
1123
|
+
);
|
|
1124
|
+
}, e._TA_SUM = function() {
|
|
1125
|
+
return (e._TA_SUM = e.asm.TA_SUM).apply(
|
|
1126
|
+
null,
|
|
1127
|
+
arguments
|
|
1128
|
+
);
|
|
1129
|
+
}, e._TA_TAN = function() {
|
|
1130
|
+
return (e._TA_TAN = e.asm.TA_TAN).apply(
|
|
1131
|
+
null,
|
|
1132
|
+
arguments
|
|
1133
|
+
);
|
|
1134
|
+
}, e._TA_TANH = function() {
|
|
1135
|
+
return (e._TA_TANH = e.asm.TA_TANH).apply(
|
|
1136
|
+
null,
|
|
1137
|
+
arguments
|
|
1138
|
+
);
|
|
1139
|
+
}, e._TA_TRIX = function() {
|
|
1140
|
+
return (e._TA_TRIX = e.asm.TA_TRIX).apply(
|
|
1141
|
+
null,
|
|
1142
|
+
arguments
|
|
1143
|
+
);
|
|
1144
|
+
}, e._TA_TSF = function() {
|
|
1145
|
+
return (e._TA_TSF = e.asm.TA_TSF).apply(
|
|
1146
|
+
null,
|
|
1147
|
+
arguments
|
|
1148
|
+
);
|
|
1149
|
+
}, e._TA_TYPPRICE = function() {
|
|
1150
|
+
return (e._TA_TYPPRICE = e.asm.TA_TYPPRICE).apply(null, arguments);
|
|
1151
|
+
}, e._TA_ULTOSC = function() {
|
|
1152
|
+
return (e._TA_ULTOSC = e.asm.TA_ULTOSC).apply(null, arguments);
|
|
1153
|
+
}, e._TA_VAR = function() {
|
|
1154
|
+
return (e._TA_VAR = e.asm.TA_VAR).apply(
|
|
1155
|
+
null,
|
|
1156
|
+
arguments
|
|
1157
|
+
);
|
|
1158
|
+
}, e._TA_WCLPRICE = function() {
|
|
1159
|
+
return (e._TA_WCLPRICE = e.asm.TA_WCLPRICE).apply(null, arguments);
|
|
1160
|
+
}, e._TA_WILLR = function() {
|
|
1161
|
+
return (e._TA_WILLR = e.asm.TA_WILLR).apply(null, arguments);
|
|
1162
|
+
};
|
|
1163
|
+
var he = e.stackSave = function() {
|
|
1164
|
+
return (he = e.stackSave = e.asm.stackSave).apply(null, arguments);
|
|
1165
|
+
}, Oe = e.stackRestore = function() {
|
|
1166
|
+
return (Oe = e.stackRestore = e.asm.stackRestore).apply(null, arguments);
|
|
1167
|
+
}, Te = e.stackAlloc = function() {
|
|
1168
|
+
return (Te = e.stackAlloc = e.asm.stackAlloc).apply(null, arguments);
|
|
1169
|
+
}, on = e.___assign_got_enties = function() {
|
|
1170
|
+
return (on = e.___assign_got_enties = e.asm.__assign_got_enties).apply(null, arguments);
|
|
1171
|
+
};
|
|
1172
|
+
e._TA_Globals = 1448, e.___data_end = 4888;
|
|
1173
|
+
for (var zo in ["TA_Globals", "__data_end"])
|
|
1174
|
+
(function(t) {
|
|
1175
|
+
e["g$" + t] = function() {
|
|
1176
|
+
return e[t];
|
|
1177
|
+
};
|
|
1178
|
+
})(zo);
|
|
1179
|
+
e.ccall = fo, e.allocate = go;
|
|
1180
|
+
var ye;
|
|
1181
|
+
function Me(t) {
|
|
1182
|
+
this.name = "ExitStatus", this.message = "Program terminated with exit(" + t + ")", this.status = t;
|
|
1183
|
+
}
|
|
1184
|
+
ce = function t() {
|
|
1185
|
+
ye || He(), ye || (ce = t);
|
|
1186
|
+
};
|
|
1187
|
+
function $o(t) {
|
|
1188
|
+
var i = e._main;
|
|
1189
|
+
if (i) {
|
|
1190
|
+
var r = 0, m = 0;
|
|
1191
|
+
try {
|
|
1192
|
+
var R = i(r, m);
|
|
1193
|
+
Zo(R, !0);
|
|
1194
|
+
} catch (c) {
|
|
1195
|
+
if (c instanceof Me)
|
|
1196
|
+
return;
|
|
1197
|
+
if (c == "unwind") {
|
|
1198
|
+
J = !0;
|
|
1199
|
+
return;
|
|
1200
|
+
} else {
|
|
1201
|
+
var D = c;
|
|
1202
|
+
c && typeof c == "object" && c.stack && (D = [c, c.stack]), V("exception thrown: " + D), f(1, c);
|
|
1203
|
+
}
|
|
1204
|
+
} finally {
|
|
1205
|
+
}
|
|
1206
|
+
}
|
|
1207
|
+
}
|
|
1208
|
+
function He(t) {
|
|
1209
|
+
if (re > 0 || (ho(), re > 0))
|
|
1210
|
+
return;
|
|
1211
|
+
function i() {
|
|
1212
|
+
ye || (ye = !0, e.calledRun = !0, !T && (Oo(), Mo(), b(e), e.onRuntimeInitialized && e.onRuntimeInitialized(), rn && $o(), Ho()));
|
|
1213
|
+
}
|
|
1214
|
+
e.setStatus ? (e.setStatus("Running..."), setTimeout(function() {
|
|
1215
|
+
setTimeout(function() {
|
|
1216
|
+
e.setStatus("");
|
|
1217
|
+
}, 1), i();
|
|
1218
|
+
}, 1)) : i();
|
|
1219
|
+
}
|
|
1220
|
+
e.run = He;
|
|
1221
|
+
function Zo(t, i) {
|
|
1222
|
+
i && J && t === 0 || (J || (e.onExit && e.onExit(t), T = !0), f(t, new Me(t)));
|
|
1223
|
+
}
|
|
1224
|
+
if (e.preInit)
|
|
1225
|
+
for (typeof e.preInit == "function" && (e.preInit = [e.preInit]); e.preInit.length > 0; )
|
|
1226
|
+
e.preInit.pop()();
|
|
1227
|
+
var rn = !0;
|
|
1228
|
+
return e.noInitialRun && (rn = !1), J = !0, He(), N.ready;
|
|
1229
|
+
};
|
|
1230
|
+
}();
|
|
1231
|
+
const a = { ACCBANDS: { name: "ACCBANDS", camelCaseName: "accBands", group: "Overlap Studies", description: "Acceleration Bands", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 20, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "upperBand", type: "Double[]", plotHint: "limit_upper" }, { name: "middleBand", type: "Double[]", plotHint: "line" }, { name: "lowerBand", type: "Double[]", plotHint: "limit_lower" }] }, ACOS: { name: "ACOS", camelCaseName: "acos", group: "Math Transform", description: "Vector Trigonometric ACos", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, AD: { name: "AD", camelCaseName: "ad", group: "Volume Indicators", description: "Chaikin A/D Line", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }, { name: "volume", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ADD: { name: "ADD", camelCaseName: "add", group: "Math Operators", description: "Vector Arithmetic Add", inputs: [{ name: "inReal0", type: "Double[]" }, { name: "inReal1", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ADOSC: { name: "ADOSC", camelCaseName: "adOsc", group: "Volume Indicators", description: "Chaikin A/D Oscillator", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }, { name: "volume", type: "Double[]" }], options: [{ name: "fastPeriod", displayName: "Fast Period", defaultValue: 3, hint: "Number of period for the fast MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "slowPeriod", displayName: "Slow Period", defaultValue: 10, hint: "Number of period for the slow MA", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ADX: { name: "ADX", camelCaseName: "adx", group: "Momentum Indicators", description: "Average Directional Movement Index", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ADXR: { name: "ADXR", camelCaseName: "adxr", group: "Momentum Indicators", description: "Average Directional Movement Index Rating", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, APO: { name: "APO", camelCaseName: "apo", group: "Momentum Indicators", description: "Absolute Price Oscillator", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "fastPeriod", displayName: "Fast Period", defaultValue: 12, hint: "Number of period for the fast MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "slowPeriod", displayName: "Slow Period", defaultValue: 26, hint: "Number of period for the slow MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "MAType", displayName: "MA Type", defaultValue: 0, hint: "Type of Moving Average", type: "MAType" }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, AROON: { name: "AROON", camelCaseName: "aroon", group: "Momentum Indicators", description: "Aroon", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "aroonDown", type: "Double[]", plotHint: "line_dash" }, { name: "aroonUp", type: "Double[]", plotHint: "line" }] }, AROONOSC: { name: "AROONOSC", camelCaseName: "aroonOsc", group: "Momentum Indicators", description: "Aroon Oscillator", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ASIN: { name: "ASIN", camelCaseName: "asin", group: "Math Transform", description: "Vector Trigonometric ASin", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ATAN: { name: "ATAN", camelCaseName: "atan", group: "Math Transform", description: "Vector Trigonometric ATan", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ATR: { name: "ATR", camelCaseName: "atr", group: "Volatility Indicators", description: "Average True Range", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, AVGDEV: { name: "AVGDEV", camelCaseName: "avgDev", group: "Price Transform", description: "Average Deviation", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, AVGPRICE: { name: "AVGPRICE", camelCaseName: "avgPrice", group: "Price Transform", description: "Average Price", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, BBANDS: { name: "BBANDS", camelCaseName: "bbands", group: "Overlap Studies", description: "Bollinger Bands", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 5, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "nbDevUp", displayName: "Deviations up", defaultValue: 2, hint: "Deviation multiplier for upper band", type: "Double", range: { min: -3e37, max: 3e37 } }, { name: "nbDevDn", displayName: "Deviations down", defaultValue: 2, hint: "Deviation multiplier for lower band", type: "Double", range: { min: -3e37, max: 3e37 } }, { name: "MAType", displayName: "MA Type", defaultValue: 0, hint: "Type of Moving Average", type: "MAType" }], outputs: [{ name: "upperBand", type: "Double[]", plotHint: "limit_upper" }, { name: "middleBand", type: "Double[]", plotHint: "line" }, { name: "lowerBand", type: "Double[]", plotHint: "limit_lower" }] }, BETA: { name: "BETA", camelCaseName: "beta", group: "Statistic Functions", description: "Beta", inputs: [{ name: "inReal0", type: "Double[]" }, { name: "inReal1", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 5, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, BOP: { name: "BOP", camelCaseName: "bop", group: "Momentum Indicators", description: "Balance Of Power", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, CCI: { name: "CCI", camelCaseName: "cci", group: "Momentum Indicators", description: "Commodity Channel Index", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, CDL2CROWS: { name: "CDL2CROWS", camelCaseName: "cdl2Crows", group: "Pattern Recognition", description: "Two Crows", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDL3BLACKCROWS: { name: "CDL3BLACKCROWS", camelCaseName: "cdl3BlackCrows", group: "Pattern Recognition", description: "Three Black Crows", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDL3INSIDE: { name: "CDL3INSIDE", camelCaseName: "cdl3Inside", group: "Pattern Recognition", description: "Three Inside Up/Down", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDL3LINESTRIKE: { name: "CDL3LINESTRIKE", camelCaseName: "cdl3LineStrike", group: "Pattern Recognition", description: "Three-Line Strike ", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDL3OUTSIDE: { name: "CDL3OUTSIDE", camelCaseName: "cdl3Outside", group: "Pattern Recognition", description: "Three Outside Up/Down", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDL3STARSINSOUTH: { name: "CDL3STARSINSOUTH", camelCaseName: "cdl3StarsInSouth", group: "Pattern Recognition", description: "Three Stars In The South", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDL3WHITESOLDIERS: { name: "CDL3WHITESOLDIERS", camelCaseName: "cdl3WhiteSoldiers", group: "Pattern Recognition", description: "Three Advancing White Soldiers", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLABANDONEDBABY: { name: "CDLABANDONEDBABY", camelCaseName: "cdlAbandonedBaby", group: "Pattern Recognition", description: "Abandoned Baby", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "penetration", displayName: "Penetration", defaultValue: 0.3, hint: "Percentage of penetration of a candle within another candle", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLADVANCEBLOCK: { name: "CDLADVANCEBLOCK", camelCaseName: "cdlAdvanceBlock", group: "Pattern Recognition", description: "Advance Block", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLBELTHOLD: { name: "CDLBELTHOLD", camelCaseName: "cdlBeltHold", group: "Pattern Recognition", description: "Belt-hold", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLBREAKAWAY: { name: "CDLBREAKAWAY", camelCaseName: "cdlBreakaway", group: "Pattern Recognition", description: "Breakaway", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLCLOSINGMARUBOZU: { name: "CDLCLOSINGMARUBOZU", camelCaseName: "cdlClosingMarubozu", group: "Pattern Recognition", description: "Closing Marubozu", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLCONCEALBABYSWALL: { name: "CDLCONCEALBABYSWALL", camelCaseName: "cdlConcealBabysWall", group: "Pattern Recognition", description: "Concealing Baby Swallow", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLCOUNTERATTACK: { name: "CDLCOUNTERATTACK", camelCaseName: "cdlCounterAttack", group: "Pattern Recognition", description: "Counterattack", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLDARKCLOUDCOVER: { name: "CDLDARKCLOUDCOVER", camelCaseName: "cdlDarkCloudCover", group: "Pattern Recognition", description: "Dark Cloud Cover", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "penetration", displayName: "Penetration", defaultValue: 0.5, hint: "Percentage of penetration of a candle within another candle", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLDOJI: { name: "CDLDOJI", camelCaseName: "cdlDoji", group: "Pattern Recognition", description: "Doji", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLDOJISTAR: { name: "CDLDOJISTAR", camelCaseName: "cdlDojiStar", group: "Pattern Recognition", description: "Doji Star", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLDRAGONFLYDOJI: { name: "CDLDRAGONFLYDOJI", camelCaseName: "cdlDragonflyDoji", group: "Pattern Recognition", description: "Dragonfly Doji", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLENGULFING: { name: "CDLENGULFING", camelCaseName: "cdlEngulfing", group: "Pattern Recognition", description: "Engulfing Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLEVENINGDOJISTAR: { name: "CDLEVENINGDOJISTAR", camelCaseName: "cdlEveningDojiStar", group: "Pattern Recognition", description: "Evening Doji Star", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "penetration", displayName: "Penetration", defaultValue: 0.3, hint: "Percentage of penetration of a candle within another candle", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLEVENINGSTAR: { name: "CDLEVENINGSTAR", camelCaseName: "cdlEveningStar", group: "Pattern Recognition", description: "Evening Star", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "penetration", displayName: "Penetration", defaultValue: 0.3, hint: "Percentage of penetration of a candle within another candle", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLGAPSIDESIDEWHITE: { name: "CDLGAPSIDESIDEWHITE", camelCaseName: "cdlGapSideSideWhite", group: "Pattern Recognition", description: "Up/Down-gap side-by-side white lines", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLGRAVESTONEDOJI: { name: "CDLGRAVESTONEDOJI", camelCaseName: "cdlGravestoneDoji", group: "Pattern Recognition", description: "Gravestone Doji", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLHAMMER: { name: "CDLHAMMER", camelCaseName: "cdlHammer", group: "Pattern Recognition", description: "Hammer", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLHANGINGMAN: { name: "CDLHANGINGMAN", camelCaseName: "cdlHangingMan", group: "Pattern Recognition", description: "Hanging Man", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLHARAMI: { name: "CDLHARAMI", camelCaseName: "cdlHarami", group: "Pattern Recognition", description: "Harami Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLHARAMICROSS: { name: "CDLHARAMICROSS", camelCaseName: "cdlHaramiCross", group: "Pattern Recognition", description: "Harami Cross Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLHIGHWAVE: { name: "CDLHIGHWAVE", camelCaseName: "cdlHignWave", group: "Pattern Recognition", description: "High-Wave Candle", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLHIKKAKE: { name: "CDLHIKKAKE", camelCaseName: "cdlHikkake", group: "Pattern Recognition", description: "Hikkake Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLHIKKAKEMOD: { name: "CDLHIKKAKEMOD", camelCaseName: "cdlHikkakeMod", group: "Pattern Recognition", description: "Modified Hikkake Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLHOMINGPIGEON: { name: "CDLHOMINGPIGEON", camelCaseName: "cdlHomingPigeon", group: "Pattern Recognition", description: "Homing Pigeon", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLIDENTICAL3CROWS: { name: "CDLIDENTICAL3CROWS", camelCaseName: "cdlIdentical3Crows", group: "Pattern Recognition", description: "Identical Three Crows", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLINNECK: { name: "CDLINNECK", camelCaseName: "cdlInNeck", group: "Pattern Recognition", description: "In-Neck Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLINVERTEDHAMMER: { name: "CDLINVERTEDHAMMER", camelCaseName: "cdlInvertedHammer", group: "Pattern Recognition", description: "Inverted Hammer", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLKICKING: { name: "CDLKICKING", camelCaseName: "cdlKicking", group: "Pattern Recognition", description: "Kicking", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLKICKINGBYLENGTH: { name: "CDLKICKINGBYLENGTH", camelCaseName: "cdlKickingByLength", group: "Pattern Recognition", description: "Kicking - bull/bear determined by the longer marubozu", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLLADDERBOTTOM: { name: "CDLLADDERBOTTOM", camelCaseName: "cdlLadderBottom", group: "Pattern Recognition", description: "Ladder Bottom", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLLONGLEGGEDDOJI: { name: "CDLLONGLEGGEDDOJI", camelCaseName: "cdlLongLeggedDoji", group: "Pattern Recognition", description: "Long Legged Doji", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLLONGLINE: { name: "CDLLONGLINE", camelCaseName: "cdlLongLine", group: "Pattern Recognition", description: "Long Line Candle", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLMARUBOZU: { name: "CDLMARUBOZU", camelCaseName: "cdlMarubozu", group: "Pattern Recognition", description: "Marubozu", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLMATCHINGLOW: { name: "CDLMATCHINGLOW", camelCaseName: "cdlMatchingLow", group: "Pattern Recognition", description: "Matching Low", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLMATHOLD: { name: "CDLMATHOLD", camelCaseName: "cdlMatHold", group: "Pattern Recognition", description: "Mat Hold", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "penetration", displayName: "Penetration", defaultValue: 0.5, hint: "Percentage of penetration of a candle within another candle", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLMORNINGDOJISTAR: { name: "CDLMORNINGDOJISTAR", camelCaseName: "cdlMorningDojiStar", group: "Pattern Recognition", description: "Morning Doji Star", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "penetration", displayName: "Penetration", defaultValue: 0.3, hint: "Percentage of penetration of a candle within another candle", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLMORNINGSTAR: { name: "CDLMORNINGSTAR", camelCaseName: "cdlMorningStar", group: "Pattern Recognition", description: "Morning Star", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "penetration", displayName: "Penetration", defaultValue: 0.3, hint: "Percentage of penetration of a candle within another candle", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLONNECK: { name: "CDLONNECK", camelCaseName: "cdlOnNeck", group: "Pattern Recognition", description: "On-Neck Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLPIERCING: { name: "CDLPIERCING", camelCaseName: "cdlPiercing", group: "Pattern Recognition", description: "Piercing Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLRICKSHAWMAN: { name: "CDLRICKSHAWMAN", camelCaseName: "cdlRickshawMan", group: "Pattern Recognition", description: "Rickshaw Man", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLRISEFALL3METHODS: { name: "CDLRISEFALL3METHODS", camelCaseName: "cdlRiseFall3Methods", group: "Pattern Recognition", description: "Rising/Falling Three Methods", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLSEPARATINGLINES: { name: "CDLSEPARATINGLINES", camelCaseName: "cdlSeperatingLines", group: "Pattern Recognition", description: "Separating Lines", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLSHOOTINGSTAR: { name: "CDLSHOOTINGSTAR", camelCaseName: "cdlShootingStar", group: "Pattern Recognition", description: "Shooting Star", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLSHORTLINE: { name: "CDLSHORTLINE", camelCaseName: "cdlShortLine", group: "Pattern Recognition", description: "Short Line Candle", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLSPINNINGTOP: { name: "CDLSPINNINGTOP", camelCaseName: "cdlSpinningTop", group: "Pattern Recognition", description: "Spinning Top", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLSTALLEDPATTERN: { name: "CDLSTALLEDPATTERN", camelCaseName: "cdlStalledPattern", group: "Pattern Recognition", description: "Stalled Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLSTICKSANDWICH: { name: "CDLSTICKSANDWICH", camelCaseName: "cdlStickSandwhich", group: "Pattern Recognition", description: "Stick Sandwich", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLTAKURI: { name: "CDLTAKURI", camelCaseName: "cdlTakuri", group: "Pattern Recognition", description: "Takuri (Dragonfly Doji with very long lower shadow)", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLTASUKIGAP: { name: "CDLTASUKIGAP", camelCaseName: "cdlTasukiGap", group: "Pattern Recognition", description: "Tasuki Gap", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLTHRUSTING: { name: "CDLTHRUSTING", camelCaseName: "cdlThrusting", group: "Pattern Recognition", description: "Thrusting Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLTRISTAR: { name: "CDLTRISTAR", camelCaseName: "cdlTristar", group: "Pattern Recognition", description: "Tristar Pattern", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLUNIQUE3RIVER: { name: "CDLUNIQUE3RIVER", camelCaseName: "cdlUnique3River", group: "Pattern Recognition", description: "Unique 3 River", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLUPSIDEGAP2CROWS: { name: "CDLUPSIDEGAP2CROWS", camelCaseName: "cdlUpsideGap2Crows", group: "Pattern Recognition", description: "Upside Gap Two Crows", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CDLXSIDEGAP3METHODS: { name: "CDLXSIDEGAP3METHODS", camelCaseName: "cdlXSideGap3Methods", group: "Pattern Recognition", description: "Upside/Downside Gap Three Methods", inputs: [{ name: "open", type: "Double[]" }, { name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, CEIL: { name: "CEIL", camelCaseName: "ceil", group: "Math Transform", description: "Vector Ceil", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, CMO: { name: "CMO", camelCaseName: "cmo", group: "Momentum Indicators", description: "Chande Momentum Oscillator", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, CORREL: { name: "CORREL", camelCaseName: "correl", group: "Statistic Functions", description: "Pearson's Correlation Coefficient (r)", inputs: [{ name: "inReal0", type: "Double[]" }, { name: "inReal1", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, COS: { name: "COS", camelCaseName: "cos", group: "Math Transform", description: "Vector Trigonometric Cos", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, COSH: { name: "COSH", camelCaseName: "cosh", group: "Math Transform", description: "Vector Trigonometric Cosh", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, DEMA: { name: "DEMA", camelCaseName: "dema", group: "Overlap Studies", description: "Double Exponential Moving Average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, DIV: { name: "DIV", camelCaseName: "div", group: "Math Operators", description: "Vector Arithmetic Div", inputs: [{ name: "inReal0", type: "Double[]" }, { name: "inReal1", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, DX: { name: "DX", camelCaseName: "dx", group: "Momentum Indicators", description: "Directional Movement Index", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, EMA: { name: "EMA", camelCaseName: "ema", group: "Overlap Studies", description: "Exponential Moving Average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, EXP: { name: "EXP", camelCaseName: "exp", group: "Math Transform", description: "Vector Arithmetic Exp", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, FLOOR: { name: "FLOOR", camelCaseName: "floor", group: "Math Transform", description: "Vector Floor", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, HT_DCPERIOD: { name: "HT_DCPERIOD", camelCaseName: "htDcPeriod", group: "Cycle Indicators", description: "Hilbert Transform - Dominant Cycle Period", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, HT_DCPHASE: { name: "HT_DCPHASE", camelCaseName: "htDcPhase", group: "Cycle Indicators", description: "Hilbert Transform - Dominant Cycle Phase", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, HT_PHASOR: { name: "HT_PHASOR", camelCaseName: "htPhasor", group: "Cycle Indicators", description: "Hilbert Transform - Phasor Components", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "inPhase", type: "Double[]", plotHint: "line" }, { name: "quadrature", type: "Double[]", plotHint: "line_dash" }] }, HT_SINE: { name: "HT_SINE", camelCaseName: "htSine", group: "Cycle Indicators", description: "Hilbert Transform - SineWave", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "sine", type: "Double[]", plotHint: "line" }, { name: "leadSine", type: "Double[]", plotHint: "line_dash" }] }, HT_TRENDLINE: { name: "HT_TRENDLINE", camelCaseName: "htTrendline", group: "Overlap Studies", description: "Hilbert Transform - Instantaneous Trendline", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, HT_TRENDMODE: { name: "HT_TRENDMODE", camelCaseName: "htTrendMode", group: "Cycle Indicators", description: "Hilbert Transform - Trend vs Cycle Mode", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, IMI: { name: "IMI", camelCaseName: "imi", group: "Momentum Indicators", description: "Intraday Momentum Index", inputs: [{ name: "open", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, KAMA: { name: "KAMA", camelCaseName: "kama", group: "Overlap Studies", description: "Kaufman Adaptive Moving Average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, LINEARREG: { name: "LINEARREG", camelCaseName: "linearReg", group: "Statistic Functions", description: "Linear Regression", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, LINEARREG_ANGLE: { name: "LINEARREG_ANGLE", camelCaseName: "linearRegAngle", group: "Statistic Functions", description: "Linear Regression Angle", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, LINEARREG_INTERCEPT: { name: "LINEARREG_INTERCEPT", camelCaseName: "linearRegIntercept", group: "Statistic Functions", description: "Linear Regression Intercept", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, LINEARREG_SLOPE: { name: "LINEARREG_SLOPE", camelCaseName: "linearRegSlope", group: "Statistic Functions", description: "Linear Regression Slope", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, LN: { name: "LN", camelCaseName: "ln", group: "Math Transform", description: "Vector Log Natural", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, LOG10: { name: "LOG10", camelCaseName: "log10", group: "Math Transform", description: "Vector Log10", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MA: { name: "MA", camelCaseName: "movingAverage", group: "Overlap Studies", description: "Moving average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "MAType", displayName: "MA Type", defaultValue: 0, hint: "Type of Moving Average", type: "MAType" }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MACD: { name: "MACD", camelCaseName: "macd", group: "Momentum Indicators", description: "Moving Average Convergence/Divergence", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "fastPeriod", displayName: "Fast Period", defaultValue: 12, hint: "Number of period for the fast MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "slowPeriod", displayName: "Slow Period", defaultValue: 26, hint: "Number of period for the slow MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "signalPeriod", displayName: "Signal Period", defaultValue: 9, hint: "Smoothing for the signal line (nb of period)", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "MACD", type: "Double[]", plotHint: "line" }, { name: "MACDSignal", type: "Double[]", plotHint: "line_dash" }, { name: "MACDHist", type: "Double[]", plotHint: "histogram" }] }, MACDEXT: { name: "MACDEXT", camelCaseName: "macdExt", group: "Momentum Indicators", description: "MACD with controllable MA type", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "fastPeriod", displayName: "Fast Period", defaultValue: 12, hint: "Number of period for the fast MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "fastMAType", displayName: "Fast MA", defaultValue: 0, hint: "Type of Moving Average for fast MA", type: "MAType" }, { name: "slowPeriod", displayName: "Slow Period", defaultValue: 26, hint: "Number of period for the slow MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "slowMAType", displayName: "Slow MA", defaultValue: 0, hint: "Type of Moving Average for slow MA", type: "MAType" }, { name: "signalPeriod", displayName: "Signal Period", defaultValue: 9, hint: "Smoothing for the signal line (nb of period)", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "signalMAType", displayName: "Signal MA", defaultValue: 0, hint: "Type of Moving Average for signal line", type: "MAType" }], outputs: [{ name: "MACD", type: "Double[]", plotHint: "line" }, { name: "MACDSignal", type: "Double[]", plotHint: "line_dash" }, { name: "MACDHist", type: "Double[]", plotHint: "histogram" }] }, MACDFIX: { name: "MACDFIX", camelCaseName: "macdFix", group: "Momentum Indicators", description: "Moving Average Convergence/Divergence Fix 12/26", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "signalPeriod", displayName: "Signal Period", defaultValue: 9, hint: "Smoothing for the signal line (nb of period)", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "MACD", type: "Double[]", plotHint: "line" }, { name: "MACDSignal", type: "Double[]", plotHint: "line_dash" }, { name: "MACDHist", type: "Double[]", plotHint: "histogram" }] }, MAMA: { name: "MAMA", camelCaseName: "mama", group: "Overlap Studies", description: "MESA Adaptive Moving Average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "fastLimit", displayName: "Fast Limit", defaultValue: 0.5, hint: "Upper limit use in the adaptive algorithm", type: "Double", range: { min: 0.01, max: 0.99 } }, { name: "slowLimit", displayName: "Slow Limit", defaultValue: 0.05, hint: "Lower limit use in the adaptive algorithm", type: "Double", range: { min: 0.01, max: 0.99 } }], outputs: [{ name: "MAMA", type: "Double[]", plotHint: "line" }, { name: "FAMA", type: "Double[]", plotHint: "line_dash" }] }, MAVP: { name: "MAVP", camelCaseName: "movingAverageVariablePeriod", group: "Overlap Studies", description: "Moving average with variable period", inputs: [{ name: "inReal", type: "Double[]" }, { name: "inPeriods", type: "Double[]" }], options: [{ name: "minPeriod", displayName: "Minimum Period", defaultValue: 2, hint: "Value less than minimum will be changed to Minimum period", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "maxPeriod", displayName: "Maximum Period", defaultValue: 30, hint: "Value higher than maximum will be changed to Maximum period", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "MAType", displayName: "MA Type", defaultValue: 0, hint: "Type of Moving Average", type: "MAType" }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MAX: { name: "MAX", camelCaseName: "max", group: "Math Operators", description: "Highest value over a specified period", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MAXINDEX: { name: "MAXINDEX", camelCaseName: "maxIndex", group: "Math Operators", description: "Index of highest value over a specified period", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, MEDPRICE: { name: "MEDPRICE", camelCaseName: "medPrice", group: "Price Transform", description: "Median Price", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MFI: { name: "MFI", camelCaseName: "mfi", group: "Momentum Indicators", description: "Money Flow Index", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }, { name: "volume", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MIDPOINT: { name: "MIDPOINT", camelCaseName: "midPoint", group: "Overlap Studies", description: "MidPoint over period", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MIDPRICE: { name: "MIDPRICE", camelCaseName: "midPrice", group: "Overlap Studies", description: "Midpoint Price over period", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MIN: { name: "MIN", camelCaseName: "min", group: "Math Operators", description: "Lowest value over a specified period", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MININDEX: { name: "MININDEX", camelCaseName: "minIndex", group: "Math Operators", description: "Index of lowest value over a specified period", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Integer[]", plotHint: "line" }] }, MINMAX: { name: "MINMAX", camelCaseName: "minMax", group: "Math Operators", description: "Lowest and highest values over a specified period", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "min", type: "Double[]", plotHint: "line" }, { name: "max", type: "Double[]", plotHint: "line" }] }, MINMAXINDEX: { name: "MINMAXINDEX", camelCaseName: "minMaxIndex", group: "Math Operators", description: "Indexes of lowest and highest values over a specified period", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "minIdx", type: "Integer[]", plotHint: "line" }, { name: "maxIdx", type: "Integer[]", plotHint: "line" }] }, MINUS_DI: { name: "MINUS_DI", camelCaseName: "minusDI", group: "Momentum Indicators", description: "Minus Directional Indicator", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MINUS_DM: { name: "MINUS_DM", camelCaseName: "minusDM", group: "Momentum Indicators", description: "Minus Directional Movement", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MOM: { name: "MOM", camelCaseName: "mom", group: "Momentum Indicators", description: "Momentum", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 10, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, MULT: { name: "MULT", camelCaseName: "mult", group: "Math Operators", description: "Vector Arithmetic Mult", inputs: [{ name: "inReal0", type: "Double[]" }, { name: "inReal1", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, NATR: { name: "NATR", camelCaseName: "natr", group: "Volatility Indicators", description: "Normalized Average True Range", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, OBV: { name: "OBV", camelCaseName: "obv", group: "Volume Indicators", description: "On Balance Volume", inputs: [{ name: "inReal", type: "Double[]" }, { name: "volume", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, PLUS_DI: { name: "PLUS_DI", camelCaseName: "plusDI", group: "Momentum Indicators", description: "Plus Directional Indicator", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, PLUS_DM: { name: "PLUS_DM", camelCaseName: "plusDM", group: "Momentum Indicators", description: "Plus Directional Movement", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, PPO: { name: "PPO", camelCaseName: "ppo", group: "Momentum Indicators", description: "Percentage Price Oscillator", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "fastPeriod", displayName: "Fast Period", defaultValue: 12, hint: "Number of period for the fast MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "slowPeriod", displayName: "Slow Period", defaultValue: 26, hint: "Number of period for the slow MA", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "MAType", displayName: "MA Type", defaultValue: 0, hint: "Type of Moving Average", type: "MAType" }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ROC: { name: "ROC", camelCaseName: "roc", group: "Momentum Indicators", description: "Rate of change : ((price/prevPrice)-1)*100", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 10, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ROCP: { name: "ROCP", camelCaseName: "rocP", group: "Momentum Indicators", description: "Rate of change Percentage: (price-prevPrice)/prevPrice", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 10, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ROCR: { name: "ROCR", camelCaseName: "rocR", group: "Momentum Indicators", description: "Rate of change ratio: (price/prevPrice)", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 10, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ROCR100: { name: "ROCR100", camelCaseName: "rocR100", group: "Momentum Indicators", description: "Rate of change ratio 100 scale: (price/prevPrice)*100", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 10, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, RSI: { name: "RSI", camelCaseName: "rsi", group: "Momentum Indicators", description: "Relative Strength Index", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, SAR: { name: "SAR", camelCaseName: "sar", group: "Overlap Studies", description: "Parabolic SAR", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }], options: [{ name: "acceleration", displayName: "Acceleration Factor", defaultValue: 0.02, hint: "Acceleration Factor used up to the Maximum value", type: "Double", range: { min: 0, max: 3e37 } }, { name: "maximum", displayName: "AF Maximum", defaultValue: 0.2, hint: "Acceleration Factor Maximum value", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, SAREXT: { name: "SAREXT", camelCaseName: "sarExt", group: "Overlap Studies", description: "Parabolic SAR - Extended", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }], options: [{ name: "startValue", displayName: "Start Value", defaultValue: 0, hint: "Start value and direction. 0 for Auto, >0 for Long, <0 for Short", type: "Double", range: { min: -3e37, max: 3e37 } }, { name: "offsetOnReverse", displayName: "Offset on Reverse", defaultValue: 0, hint: "Percent offset added/removed to initial stop on short/long reversal", type: "Double", range: { min: 0, max: 3e37 } }, { name: "accelerationInitLong", displayName: "AF Init Long", defaultValue: 0.02, hint: "Acceleration Factor initial value for the Long direction", type: "Double", range: { min: 0, max: 3e37 } }, { name: "accelerationLong", displayName: "AF Long", defaultValue: 0.02, hint: "Acceleration Factor for the Long direction", type: "Double", range: { min: 0, max: 3e37 } }, { name: "accelerationMaxLong", displayName: "AF Max Long", defaultValue: 0.2, hint: "Acceleration Factor maximum value for the Long direction", type: "Double", range: { min: 0, max: 3e37 } }, { name: "accelerationInitShort", displayName: "AF Init Short", defaultValue: 0.02, hint: "Acceleration Factor initial value for the Short direction", type: "Double", range: { min: 0, max: 3e37 } }, { name: "accelerationShort", displayName: "AF Short", defaultValue: 0.02, hint: "Acceleration Factor for the Short direction", type: "Double", range: { min: 0, max: 3e37 } }, { name: "accelerationMaxShort", displayName: "AF Max Short", defaultValue: 0.2, hint: "Acceleration Factor maximum value for the Short direction", type: "Double", range: { min: 0, max: 3e37 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, SIN: { name: "SIN", camelCaseName: "sin", group: "Math Transform", description: "Vector Trigonometric Sin", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, SINH: { name: "SINH", camelCaseName: "sinh", group: "Math Transform", description: "Vector Trigonometric Sinh", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, SMA: { name: "SMA", camelCaseName: "sma", group: "Overlap Studies", description: "Simple Moving Average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, SQRT: { name: "SQRT", camelCaseName: "sqrt", group: "Math Transform", description: "Vector Square Root", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, STDDEV: { name: "STDDEV", camelCaseName: "stdDev", group: "Statistic Functions", description: "Standard Deviation", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 5, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "nbDev", displayName: "Deviations", defaultValue: 1, hint: "Nb of deviations", type: "Double", range: { min: -3e37, max: 3e37 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, STOCH: { name: "STOCH", camelCaseName: "stoch", group: "Momentum Indicators", description: "Stochastic", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "fastK_Period", displayName: "Fast-K Period", defaultValue: 5, hint: "Time period for building the Fast-K line", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "slowK_Period", displayName: "Slow-K Period", defaultValue: 3, hint: "Smoothing for making the Slow-K line. Usually set to 3", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "slowK_MAType", displayName: "Slow-K MA", defaultValue: 0, hint: "Type of Moving Average for Slow-K", type: "MAType" }, { name: "slowD_Period", displayName: "Slow-D Period", defaultValue: 3, hint: "Smoothing for making the Slow-D line", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "slowD_MAType", displayName: "Slow-D MA", defaultValue: 0, hint: "Type of Moving Average for Slow-D", type: "MAType" }], outputs: [{ name: "slowK", type: "Double[]", plotHint: "line_dash" }, { name: "slowD", type: "Double[]", plotHint: "line_dash" }] }, STOCHF: { name: "STOCHF", camelCaseName: "stochF", group: "Momentum Indicators", description: "Stochastic Fast", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "fastK_Period", displayName: "Fast-K Period", defaultValue: 5, hint: "Time period for building the Fast-K line", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "fastD_Period", displayName: "Fast-D Period", defaultValue: 3, hint: "Smoothing for making the Fast-D line. Usually set to 3", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "fastD_MAType", displayName: "Fast-D MA", defaultValue: 0, hint: "Type of Moving Average for Fast-D", type: "MAType" }], outputs: [{ name: "fastK", type: "Double[]", plotHint: "line" }, { name: "fastD", type: "Double[]", plotHint: "line" }] }, STOCHRSI: { name: "STOCHRSI", camelCaseName: "stochRsi", group: "Momentum Indicators", description: "Stochastic Relative Strength Index", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "fastK_Period", displayName: "Fast-K Period", defaultValue: 5, hint: "Time period for building the Fast-K line", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "fastD_Period", displayName: "Fast-D Period", defaultValue: 3, hint: "Smoothing for making the Fast-D line. Usually set to 3", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "fastD_MAType", displayName: "Fast-D MA", defaultValue: 0, hint: "Type of Moving Average for Fast-D", type: "MAType" }], outputs: [{ name: "fastK", type: "Double[]", plotHint: "line" }, { name: "fastD", type: "Double[]", plotHint: "line" }] }, SUB: { name: "SUB", camelCaseName: "sub", group: "Math Operators", description: "Vector Arithmetic Substraction", inputs: [{ name: "inReal0", type: "Double[]" }, { name: "inReal1", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, SUM: { name: "SUM", camelCaseName: "sum", group: "Math Operators", description: "Summation", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, T3: { name: "T3", camelCaseName: "t3", group: "Overlap Studies", description: "Triple Exponential Moving Average (T3)", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 5, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }, { name: "VFactor", displayName: "Volume Factor", defaultValue: 0.7, hint: "Volume Factor", type: "Double", range: { min: 0, max: 1 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, TAN: { name: "TAN", camelCaseName: "tan", group: "Math Transform", description: "Vector Trigonometric Tan", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, TANH: { name: "TANH", camelCaseName: "tanh", group: "Math Transform", description: "Vector Trigonometric Tanh", inputs: [{ name: "inReal", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, TEMA: { name: "TEMA", camelCaseName: "tema", group: "Overlap Studies", description: "Triple Exponential Moving Average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, TRANGE: { name: "TRANGE", camelCaseName: "trueRange", group: "Volatility Indicators", description: "True Range", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, TRIMA: { name: "TRIMA", camelCaseName: "trima", group: "Overlap Studies", description: "Triangular Moving Average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, TRIX: { name: "TRIX", camelCaseName: "trix", group: "Momentum Indicators", description: "1-day Rate-Of-Change (ROC) of a Triple Smooth EMA", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, TSF: { name: "TSF", camelCaseName: "tsf", group: "Statistic Functions", description: "Time Series Forecast", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, TYPPRICE: { name: "TYPPRICE", camelCaseName: "typPrice", group: "Price Transform", description: "Typical Price", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, ULTOSC: { name: "ULTOSC", camelCaseName: "ultOsc", group: "Momentum Indicators", description: "Ultimate Oscillator", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod1", displayName: "First Period", defaultValue: 7, hint: "Number of bars for 1st period.", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "timePeriod2", displayName: "Second Period", defaultValue: 14, hint: "Number of bars fro 2nd period", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "timePeriod3", displayName: "Third Period", defaultValue: 28, hint: "Number of bars for 3rd period", type: "Integer", range: { min: 1, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, VAR: { name: "VAR", camelCaseName: "variance", group: "Statistic Functions", description: "Variance", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 5, hint: "Number of period", type: "Integer", range: { min: 1, max: 1e5 } }, { name: "nbDev", displayName: "Deviations", defaultValue: 1, hint: "Nb of deviations", type: "Double", range: { min: -3e37, max: 3e37 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, WCLPRICE: { name: "WCLPRICE", camelCaseName: "wclPrice", group: "Price Transform", description: "Weighted Close Price", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, WILLR: { name: "WILLR", camelCaseName: "willR", group: "Momentum Indicators", description: "Williams' %R", inputs: [{ name: "high", type: "Double[]" }, { name: "low", type: "Double[]" }, { name: "close", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 14, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] }, WMA: { name: "WMA", camelCaseName: "wma", group: "Overlap Studies", description: "Weighted Moving Average", inputs: [{ name: "inReal", type: "Double[]" }], options: [{ name: "timePeriod", displayName: "Time Period", defaultValue: 30, hint: "Number of period", type: "Integer", range: { min: 2, max: 1e5 } }], outputs: [{ name: "output", type: "Double[]", plotHint: "line" }] } };
|
|
1232
|
+
var Fe = Fe;
|
|
1233
|
+
let ae;
|
|
1234
|
+
function cn(n, N) {
|
|
1235
|
+
const e = n._malloc(N * 8);
|
|
1236
|
+
return n.HEAPF64.set(new Float64Array(N), e / 8), {
|
|
1237
|
+
data: n.HEAPF64.subarray(e / 8, e / 8 + N),
|
|
1238
|
+
offset: e
|
|
1239
|
+
};
|
|
1240
|
+
}
|
|
1241
|
+
const ci = {
|
|
1242
|
+
0: "TA_SUCCESS",
|
|
1243
|
+
1: "TA_LIB_NOT_INITIALIZE",
|
|
1244
|
+
2: "TA_BAD_PARAM",
|
|
1245
|
+
3: "TA_ALLOC_ERR",
|
|
1246
|
+
4: "TA_GROUP_NOT_FOUND",
|
|
1247
|
+
5: "TA_FUNC_NOT_FOUND",
|
|
1248
|
+
6: "TA_INVALID_HANDLE",
|
|
1249
|
+
7: "TA_INVALID_PARAM_HOLDER",
|
|
1250
|
+
8: "TA_INVALID_PARAM_HOLDER_TYPE",
|
|
1251
|
+
9: "TA_INVALID_PARAM_FUNCTION",
|
|
1252
|
+
10: "TA_INPUT_NOT_ALL_INITIALIZE",
|
|
1253
|
+
11: "TA_OUTPUT_NOT_ALL_INITIALIZE",
|
|
1254
|
+
12: "TA_OUT_OF_RANGE_START_INDEX",
|
|
1255
|
+
13: "TA_OUT_OF_RANGE_END_INDEX",
|
|
1256
|
+
14: "TA_INVALID_LIST_TYPE",
|
|
1257
|
+
15: "TA_BAD_OBJECT",
|
|
1258
|
+
16: "TA_NOT_SUPPORTED",
|
|
1259
|
+
5e3: "TA_INTERNAL_ERROR",
|
|
1260
|
+
65535: "TA_UNKNOWN_ERR"
|
|
1261
|
+
};
|
|
1262
|
+
function o(n, N) {
|
|
1263
|
+
const e = `TA_${n.name}`;
|
|
1264
|
+
if (!ae)
|
|
1265
|
+
throw Error(`${n.name}() called before initialization.`);
|
|
1266
|
+
const b = 2 + n.inputs.length + n.options.length + 2 + n.outputs.length, w = new Array(b).fill("number");
|
|
1267
|
+
for (const { name: l } of n.inputs)
|
|
1268
|
+
if (!Array.isArray(N[l]))
|
|
1269
|
+
throw N[l] === void 0 ? Error(`Bad Param: "${l}" is required`) : Error(`Bad Param: "${l}" should be array of number`);
|
|
1270
|
+
for (const { name: l, defaultValue: p, range: s } of n.options)
|
|
1271
|
+
if (N[l] === void 0)
|
|
1272
|
+
N[l] = p;
|
|
1273
|
+
else if (s && (N[l] < s.min || N[l] > s.max))
|
|
1274
|
+
throw Error(`Bad Param: "${l}" out of range (min: ${s.min}, max: ${s.max})`);
|
|
1275
|
+
let { startIdx: h, endIdx: y } = N;
|
|
1276
|
+
h === void 0 && (h = 0);
|
|
1277
|
+
const f = n.inputs.map(({ name: l }) => N[l].length);
|
|
1278
|
+
y === void 0 && (y = Math.min(...f));
|
|
1279
|
+
const _ = [h, y], A = [];
|
|
1280
|
+
n.inputs.forEach(({ name: l }) => {
|
|
1281
|
+
const p = cn(ae, y - h), s = N[l];
|
|
1282
|
+
for (const I in s)
|
|
1283
|
+
p.data[I] = s[I];
|
|
1284
|
+
A.push(p), _.push(p.offset);
|
|
1285
|
+
}), n.options.forEach(({ name: l }) => _.push(N[l])), _.push(0), _.push(0);
|
|
1286
|
+
const E = n.outputs.map(({ name: l }) => {
|
|
1287
|
+
const p = cn(ae, y - h);
|
|
1288
|
+
return A.push(p), _.push(p.offset), { name: l, array: p };
|
|
1289
|
+
}), L = ae.ccall(e, "number", w, _);
|
|
1290
|
+
A.forEach((l) => ae._free(l.offset));
|
|
1291
|
+
const u = E.reduce((l, p) => (l[p.name] = Array.from(p.array.data), l), {});
|
|
1292
|
+
if (L === 0)
|
|
1293
|
+
return u;
|
|
1294
|
+
throw Error("[C_ERROR] " + ci[L]);
|
|
1295
|
+
}
|
|
1296
|
+
var Be;
|
|
1297
|
+
(function(n) {
|
|
1298
|
+
n[n.SMA = 0] = "SMA", n[n.EMA = 1] = "EMA", n[n.WMA = 2] = "WMA", n[n.DEMA = 3] = "DEMA", n[n.TEMA = 4] = "TEMA", n[n.TRIMA = 5] = "TRIMA", n[n.KAMA = 6] = "KAMA", n[n.MAMA = 7] = "MAMA", n[n.T3 = 8] = "T3";
|
|
1299
|
+
})(Be || (Be = {}));
|
|
1300
|
+
function yn(n) {
|
|
1301
|
+
return ae ? Promise.resolve(ae) : n && typeof n != "string" ? Promise.reject(new Error('Invalid argument, "init(wasmBinaryFilePath)" expects a string that specifies the location of wasm binary file')) : Fe({ locateFile: n ? () => n : void 0 }).then((e) => ae = e).catch((e) => {
|
|
1302
|
+
let b = "TA-Lib WASM runtime init fail.";
|
|
1303
|
+
throw e && e.message ? b += `
|
|
1304
|
+
Error:
|
|
1305
|
+
` + e.message : b += "Unknown reason. Perhaps you specify the wrong file path to wasm binary?", new Error(b);
|
|
1306
|
+
});
|
|
1307
|
+
}
|
|
1308
|
+
let _i = a.ACCBANDS;
|
|
1309
|
+
function fn(n) {
|
|
1310
|
+
return o(_i, n);
|
|
1311
|
+
}
|
|
1312
|
+
const Ai = fn;
|
|
1313
|
+
let Di = a.ACOS;
|
|
1314
|
+
function Cn(n) {
|
|
1315
|
+
return o(Di, n);
|
|
1316
|
+
}
|
|
1317
|
+
const di = Cn;
|
|
1318
|
+
let Ii = a.AD;
|
|
1319
|
+
function gn(n) {
|
|
1320
|
+
return o(Ii, n);
|
|
1321
|
+
}
|
|
1322
|
+
const Ti = gn;
|
|
1323
|
+
let yi = a.ADD;
|
|
1324
|
+
function Nn(n) {
|
|
1325
|
+
return o(yi, n);
|
|
1326
|
+
}
|
|
1327
|
+
const fi = Nn;
|
|
1328
|
+
let Ci = a.ADOSC;
|
|
1329
|
+
function Ln(n) {
|
|
1330
|
+
return o(Ci, n);
|
|
1331
|
+
}
|
|
1332
|
+
const gi = Ln;
|
|
1333
|
+
let Ni = a.ADX;
|
|
1334
|
+
function Rn(n) {
|
|
1335
|
+
return o(Ni, n);
|
|
1336
|
+
}
|
|
1337
|
+
const Li = Rn;
|
|
1338
|
+
let Ri = a.ADXR;
|
|
1339
|
+
function En(n) {
|
|
1340
|
+
return o(Ri, n);
|
|
1341
|
+
}
|
|
1342
|
+
const Ei = En;
|
|
1343
|
+
let bi = a.APO;
|
|
1344
|
+
function bn(n) {
|
|
1345
|
+
return o(bi, n);
|
|
1346
|
+
}
|
|
1347
|
+
const Si = bn;
|
|
1348
|
+
let Pi = a.AROON;
|
|
1349
|
+
function Sn(n) {
|
|
1350
|
+
return o(Pi, n);
|
|
1351
|
+
}
|
|
1352
|
+
const hi = Sn;
|
|
1353
|
+
let Oi = a.AROONOSC;
|
|
1354
|
+
function Pn(n) {
|
|
1355
|
+
return o(Oi, n);
|
|
1356
|
+
}
|
|
1357
|
+
const Mi = Pn;
|
|
1358
|
+
let Hi = a.ASIN;
|
|
1359
|
+
function hn(n) {
|
|
1360
|
+
return o(Hi, n);
|
|
1361
|
+
}
|
|
1362
|
+
const vi = hn;
|
|
1363
|
+
let wi = a.ATAN;
|
|
1364
|
+
function On(n) {
|
|
1365
|
+
return o(wi, n);
|
|
1366
|
+
}
|
|
1367
|
+
const Gi = On;
|
|
1368
|
+
let Vi = a.ATR;
|
|
1369
|
+
function Mn(n) {
|
|
1370
|
+
return o(Vi, n);
|
|
1371
|
+
}
|
|
1372
|
+
const xi = Mn;
|
|
1373
|
+
let Ui = a.AVGDEV;
|
|
1374
|
+
function Hn(n) {
|
|
1375
|
+
return o(Ui, n);
|
|
1376
|
+
}
|
|
1377
|
+
const Bi = Hn;
|
|
1378
|
+
let Ki = a.AVGPRICE;
|
|
1379
|
+
function vn(n) {
|
|
1380
|
+
return o(Ki, n);
|
|
1381
|
+
}
|
|
1382
|
+
const Fi = vn;
|
|
1383
|
+
let Wi = a.BBANDS;
|
|
1384
|
+
function wn(n) {
|
|
1385
|
+
return o(Wi, n);
|
|
1386
|
+
}
|
|
1387
|
+
const ki = wn;
|
|
1388
|
+
let Xi = a.BETA;
|
|
1389
|
+
function Gn(n) {
|
|
1390
|
+
return o(Xi, n);
|
|
1391
|
+
}
|
|
1392
|
+
const Ji = Gn;
|
|
1393
|
+
let Yi = a.BOP;
|
|
1394
|
+
function Vn(n) {
|
|
1395
|
+
return o(Yi, n);
|
|
1396
|
+
}
|
|
1397
|
+
const ji = Vn;
|
|
1398
|
+
let qi = a.CCI;
|
|
1399
|
+
function xn(n) {
|
|
1400
|
+
return o(qi, n);
|
|
1401
|
+
}
|
|
1402
|
+
const zi = xn;
|
|
1403
|
+
let $i = a.CDL2CROWS;
|
|
1404
|
+
function Un(n) {
|
|
1405
|
+
return o($i, n);
|
|
1406
|
+
}
|
|
1407
|
+
const Zi = Un;
|
|
1408
|
+
let Qi = a.CDL3BLACKCROWS;
|
|
1409
|
+
function Bn(n) {
|
|
1410
|
+
return o(Qi, n);
|
|
1411
|
+
}
|
|
1412
|
+
const er = Bn;
|
|
1413
|
+
let nr = a.CDL3INSIDE;
|
|
1414
|
+
function Kn(n) {
|
|
1415
|
+
return o(nr, n);
|
|
1416
|
+
}
|
|
1417
|
+
const tr = Kn;
|
|
1418
|
+
let ar = a.CDL3LINESTRIKE;
|
|
1419
|
+
function Fn(n) {
|
|
1420
|
+
return o(ar, n);
|
|
1421
|
+
}
|
|
1422
|
+
const or = Fn;
|
|
1423
|
+
let ir = a.CDL3OUTSIDE;
|
|
1424
|
+
function Wn(n) {
|
|
1425
|
+
return o(ir, n);
|
|
1426
|
+
}
|
|
1427
|
+
const rr = Wn;
|
|
1428
|
+
let ur = a.CDL3STARSINSOUTH;
|
|
1429
|
+
function kn(n) {
|
|
1430
|
+
return o(ur, n);
|
|
1431
|
+
}
|
|
1432
|
+
const lr = kn;
|
|
1433
|
+
let pr = a.CDL3WHITESOLDIERS;
|
|
1434
|
+
function Xn(n) {
|
|
1435
|
+
return o(pr, n);
|
|
1436
|
+
}
|
|
1437
|
+
const sr = Xn;
|
|
1438
|
+
let mr = a.CDLABANDONEDBABY;
|
|
1439
|
+
function Jn(n) {
|
|
1440
|
+
return o(mr, n);
|
|
1441
|
+
}
|
|
1442
|
+
const cr = Jn;
|
|
1443
|
+
let _r = a.CDLADVANCEBLOCK;
|
|
1444
|
+
function Yn(n) {
|
|
1445
|
+
return o(_r, n);
|
|
1446
|
+
}
|
|
1447
|
+
const Ar = Yn;
|
|
1448
|
+
let Dr = a.CDLBELTHOLD;
|
|
1449
|
+
function jn(n) {
|
|
1450
|
+
return o(Dr, n);
|
|
1451
|
+
}
|
|
1452
|
+
const dr = jn;
|
|
1453
|
+
let Ir = a.CDLBREAKAWAY;
|
|
1454
|
+
function qn(n) {
|
|
1455
|
+
return o(Ir, n);
|
|
1456
|
+
}
|
|
1457
|
+
const Tr = qn;
|
|
1458
|
+
let yr = a.CDLCLOSINGMARUBOZU;
|
|
1459
|
+
function zn(n) {
|
|
1460
|
+
return o(yr, n);
|
|
1461
|
+
}
|
|
1462
|
+
const fr = zn;
|
|
1463
|
+
let Cr = a.CDLCONCEALBABYSWALL;
|
|
1464
|
+
function $n(n) {
|
|
1465
|
+
return o(Cr, n);
|
|
1466
|
+
}
|
|
1467
|
+
const gr = $n;
|
|
1468
|
+
let Nr = a.CDLCOUNTERATTACK;
|
|
1469
|
+
function Zn(n) {
|
|
1470
|
+
return o(Nr, n);
|
|
1471
|
+
}
|
|
1472
|
+
const Lr = Zn;
|
|
1473
|
+
let Rr = a.CDLDARKCLOUDCOVER;
|
|
1474
|
+
function Qn(n) {
|
|
1475
|
+
return o(Rr, n);
|
|
1476
|
+
}
|
|
1477
|
+
const Er = Qn;
|
|
1478
|
+
let br = a.CDLDOJI;
|
|
1479
|
+
function et(n) {
|
|
1480
|
+
return o(br, n);
|
|
1481
|
+
}
|
|
1482
|
+
const Sr = et;
|
|
1483
|
+
let Pr = a.CDLDOJISTAR;
|
|
1484
|
+
function nt(n) {
|
|
1485
|
+
return o(Pr, n);
|
|
1486
|
+
}
|
|
1487
|
+
const hr = nt;
|
|
1488
|
+
let Or = a.CDLDRAGONFLYDOJI;
|
|
1489
|
+
function tt(n) {
|
|
1490
|
+
return o(Or, n);
|
|
1491
|
+
}
|
|
1492
|
+
const Mr = tt;
|
|
1493
|
+
let Hr = a.CDLENGULFING;
|
|
1494
|
+
function at(n) {
|
|
1495
|
+
return o(Hr, n);
|
|
1496
|
+
}
|
|
1497
|
+
const vr = at;
|
|
1498
|
+
let wr = a.CDLEVENINGDOJISTAR;
|
|
1499
|
+
function ot(n) {
|
|
1500
|
+
return o(wr, n);
|
|
1501
|
+
}
|
|
1502
|
+
const Gr = ot;
|
|
1503
|
+
let Vr = a.CDLEVENINGSTAR;
|
|
1504
|
+
function it(n) {
|
|
1505
|
+
return o(Vr, n);
|
|
1506
|
+
}
|
|
1507
|
+
const xr = it;
|
|
1508
|
+
let Ur = a.CDLGAPSIDESIDEWHITE;
|
|
1509
|
+
function rt(n) {
|
|
1510
|
+
return o(Ur, n);
|
|
1511
|
+
}
|
|
1512
|
+
const Br = rt;
|
|
1513
|
+
let Kr = a.CDLGRAVESTONEDOJI;
|
|
1514
|
+
function ut(n) {
|
|
1515
|
+
return o(Kr, n);
|
|
1516
|
+
}
|
|
1517
|
+
const Fr = ut;
|
|
1518
|
+
let Wr = a.CDLHAMMER;
|
|
1519
|
+
function lt(n) {
|
|
1520
|
+
return o(Wr, n);
|
|
1521
|
+
}
|
|
1522
|
+
const kr = lt;
|
|
1523
|
+
let Xr = a.CDLHANGINGMAN;
|
|
1524
|
+
function pt(n) {
|
|
1525
|
+
return o(Xr, n);
|
|
1526
|
+
}
|
|
1527
|
+
const Jr = pt;
|
|
1528
|
+
let Yr = a.CDLHARAMI;
|
|
1529
|
+
function st(n) {
|
|
1530
|
+
return o(Yr, n);
|
|
1531
|
+
}
|
|
1532
|
+
const jr = st;
|
|
1533
|
+
let qr = a.CDLHARAMICROSS;
|
|
1534
|
+
function mt(n) {
|
|
1535
|
+
return o(qr, n);
|
|
1536
|
+
}
|
|
1537
|
+
const zr = mt;
|
|
1538
|
+
let $r = a.CDLHIGHWAVE;
|
|
1539
|
+
function ct(n) {
|
|
1540
|
+
return o($r, n);
|
|
1541
|
+
}
|
|
1542
|
+
const Zr = ct;
|
|
1543
|
+
let Qr = a.CDLHIKKAKE;
|
|
1544
|
+
function _t(n) {
|
|
1545
|
+
return o(Qr, n);
|
|
1546
|
+
}
|
|
1547
|
+
const eu = _t;
|
|
1548
|
+
let nu = a.CDLHIKKAKEMOD;
|
|
1549
|
+
function At(n) {
|
|
1550
|
+
return o(nu, n);
|
|
1551
|
+
}
|
|
1552
|
+
const tu = At;
|
|
1553
|
+
let au = a.CDLHOMINGPIGEON;
|
|
1554
|
+
function Dt(n) {
|
|
1555
|
+
return o(au, n);
|
|
1556
|
+
}
|
|
1557
|
+
const ou = Dt;
|
|
1558
|
+
let iu = a.CDLIDENTICAL3CROWS;
|
|
1559
|
+
function dt(n) {
|
|
1560
|
+
return o(iu, n);
|
|
1561
|
+
}
|
|
1562
|
+
const ru = dt;
|
|
1563
|
+
let uu = a.CDLINNECK;
|
|
1564
|
+
function It(n) {
|
|
1565
|
+
return o(uu, n);
|
|
1566
|
+
}
|
|
1567
|
+
const lu = It;
|
|
1568
|
+
let pu = a.CDLINVERTEDHAMMER;
|
|
1569
|
+
function Tt(n) {
|
|
1570
|
+
return o(pu, n);
|
|
1571
|
+
}
|
|
1572
|
+
const su = Tt;
|
|
1573
|
+
let mu = a.CDLKICKING;
|
|
1574
|
+
function yt(n) {
|
|
1575
|
+
return o(mu, n);
|
|
1576
|
+
}
|
|
1577
|
+
const cu = yt;
|
|
1578
|
+
let _u = a.CDLKICKINGBYLENGTH;
|
|
1579
|
+
function ft(n) {
|
|
1580
|
+
return o(_u, n);
|
|
1581
|
+
}
|
|
1582
|
+
const Au = ft;
|
|
1583
|
+
let Du = a.CDLLADDERBOTTOM;
|
|
1584
|
+
function Ct(n) {
|
|
1585
|
+
return o(Du, n);
|
|
1586
|
+
}
|
|
1587
|
+
const du = Ct;
|
|
1588
|
+
let Iu = a.CDLLONGLEGGEDDOJI;
|
|
1589
|
+
function gt(n) {
|
|
1590
|
+
return o(Iu, n);
|
|
1591
|
+
}
|
|
1592
|
+
const Tu = gt;
|
|
1593
|
+
let yu = a.CDLLONGLINE;
|
|
1594
|
+
function Nt(n) {
|
|
1595
|
+
return o(yu, n);
|
|
1596
|
+
}
|
|
1597
|
+
const fu = Nt;
|
|
1598
|
+
let Cu = a.CDLMARUBOZU;
|
|
1599
|
+
function Lt(n) {
|
|
1600
|
+
return o(Cu, n);
|
|
1601
|
+
}
|
|
1602
|
+
const gu = Lt;
|
|
1603
|
+
let Nu = a.CDLMATCHINGLOW;
|
|
1604
|
+
function Rt(n) {
|
|
1605
|
+
return o(Nu, n);
|
|
1606
|
+
}
|
|
1607
|
+
const Lu = Rt;
|
|
1608
|
+
let Ru = a.CDLMATHOLD;
|
|
1609
|
+
function Et(n) {
|
|
1610
|
+
return o(Ru, n);
|
|
1611
|
+
}
|
|
1612
|
+
const Eu = Et;
|
|
1613
|
+
let bu = a.CDLMORNINGDOJISTAR;
|
|
1614
|
+
function bt(n) {
|
|
1615
|
+
return o(bu, n);
|
|
1616
|
+
}
|
|
1617
|
+
const Su = bt;
|
|
1618
|
+
let Pu = a.CDLMORNINGSTAR;
|
|
1619
|
+
function St(n) {
|
|
1620
|
+
return o(Pu, n);
|
|
1621
|
+
}
|
|
1622
|
+
const hu = St;
|
|
1623
|
+
let Ou = a.CDLONNECK;
|
|
1624
|
+
function Pt(n) {
|
|
1625
|
+
return o(Ou, n);
|
|
1626
|
+
}
|
|
1627
|
+
const Mu = Pt;
|
|
1628
|
+
let Hu = a.CDLPIERCING;
|
|
1629
|
+
function ht(n) {
|
|
1630
|
+
return o(Hu, n);
|
|
1631
|
+
}
|
|
1632
|
+
const vu = ht;
|
|
1633
|
+
let wu = a.CDLRICKSHAWMAN;
|
|
1634
|
+
function Ot(n) {
|
|
1635
|
+
return o(wu, n);
|
|
1636
|
+
}
|
|
1637
|
+
const Gu = Ot;
|
|
1638
|
+
let Vu = a.CDLRISEFALL3METHODS;
|
|
1639
|
+
function Mt(n) {
|
|
1640
|
+
return o(Vu, n);
|
|
1641
|
+
}
|
|
1642
|
+
const xu = Mt;
|
|
1643
|
+
let Uu = a.CDLSEPARATINGLINES;
|
|
1644
|
+
function Ht(n) {
|
|
1645
|
+
return o(Uu, n);
|
|
1646
|
+
}
|
|
1647
|
+
const Bu = Ht;
|
|
1648
|
+
let Ku = a.CDLSHOOTINGSTAR;
|
|
1649
|
+
function vt(n) {
|
|
1650
|
+
return o(Ku, n);
|
|
1651
|
+
}
|
|
1652
|
+
const Fu = vt;
|
|
1653
|
+
let Wu = a.CDLSHORTLINE;
|
|
1654
|
+
function wt(n) {
|
|
1655
|
+
return o(Wu, n);
|
|
1656
|
+
}
|
|
1657
|
+
const ku = wt;
|
|
1658
|
+
let Xu = a.CDLSPINNINGTOP;
|
|
1659
|
+
function Gt(n) {
|
|
1660
|
+
return o(Xu, n);
|
|
1661
|
+
}
|
|
1662
|
+
const Ju = Gt;
|
|
1663
|
+
let Yu = a.CDLSTALLEDPATTERN;
|
|
1664
|
+
function Vt(n) {
|
|
1665
|
+
return o(Yu, n);
|
|
1666
|
+
}
|
|
1667
|
+
const ju = Vt;
|
|
1668
|
+
let qu = a.CDLSTICKSANDWICH;
|
|
1669
|
+
function xt(n) {
|
|
1670
|
+
return o(qu, n);
|
|
1671
|
+
}
|
|
1672
|
+
const zu = xt;
|
|
1673
|
+
let $u = a.CDLTAKURI;
|
|
1674
|
+
function Ut(n) {
|
|
1675
|
+
return o($u, n);
|
|
1676
|
+
}
|
|
1677
|
+
const Zu = Ut;
|
|
1678
|
+
let Qu = a.CDLTASUKIGAP;
|
|
1679
|
+
function Bt(n) {
|
|
1680
|
+
return o(Qu, n);
|
|
1681
|
+
}
|
|
1682
|
+
const el = Bt;
|
|
1683
|
+
let nl = a.CDLTHRUSTING;
|
|
1684
|
+
function Kt(n) {
|
|
1685
|
+
return o(nl, n);
|
|
1686
|
+
}
|
|
1687
|
+
const tl = Kt;
|
|
1688
|
+
let al = a.CDLTRISTAR;
|
|
1689
|
+
function Ft(n) {
|
|
1690
|
+
return o(al, n);
|
|
1691
|
+
}
|
|
1692
|
+
const ol = Ft;
|
|
1693
|
+
let il = a.CDLUNIQUE3RIVER;
|
|
1694
|
+
function Wt(n) {
|
|
1695
|
+
return o(il, n);
|
|
1696
|
+
}
|
|
1697
|
+
const rl = Wt;
|
|
1698
|
+
let ul = a.CDLUPSIDEGAP2CROWS;
|
|
1699
|
+
function kt(n) {
|
|
1700
|
+
return o(ul, n);
|
|
1701
|
+
}
|
|
1702
|
+
const ll = kt;
|
|
1703
|
+
let pl = a.CDLXSIDEGAP3METHODS;
|
|
1704
|
+
function Xt(n) {
|
|
1705
|
+
return o(pl, n);
|
|
1706
|
+
}
|
|
1707
|
+
const sl = Xt;
|
|
1708
|
+
let ml = a.CEIL;
|
|
1709
|
+
function Jt(n) {
|
|
1710
|
+
return o(ml, n);
|
|
1711
|
+
}
|
|
1712
|
+
const cl = Jt;
|
|
1713
|
+
let _l = a.CMO;
|
|
1714
|
+
function Yt(n) {
|
|
1715
|
+
return o(_l, n);
|
|
1716
|
+
}
|
|
1717
|
+
const Al = Yt;
|
|
1718
|
+
let Dl = a.CORREL;
|
|
1719
|
+
function jt(n) {
|
|
1720
|
+
return o(Dl, n);
|
|
1721
|
+
}
|
|
1722
|
+
const dl = jt;
|
|
1723
|
+
let Il = a.COS;
|
|
1724
|
+
function qt(n) {
|
|
1725
|
+
return o(Il, n);
|
|
1726
|
+
}
|
|
1727
|
+
const Tl = qt;
|
|
1728
|
+
let yl = a.COSH;
|
|
1729
|
+
function zt(n) {
|
|
1730
|
+
return o(yl, n);
|
|
1731
|
+
}
|
|
1732
|
+
const fl = zt;
|
|
1733
|
+
let Cl = a.DEMA;
|
|
1734
|
+
function $t(n) {
|
|
1735
|
+
return o(Cl, n);
|
|
1736
|
+
}
|
|
1737
|
+
const gl = $t;
|
|
1738
|
+
let Nl = a.DIV;
|
|
1739
|
+
function Zt(n) {
|
|
1740
|
+
return o(Nl, n);
|
|
1741
|
+
}
|
|
1742
|
+
const Ll = Zt;
|
|
1743
|
+
let Rl = a.DX;
|
|
1744
|
+
function Qt(n) {
|
|
1745
|
+
return o(Rl, n);
|
|
1746
|
+
}
|
|
1747
|
+
const El = Qt;
|
|
1748
|
+
let bl = a.EMA;
|
|
1749
|
+
function ea(n) {
|
|
1750
|
+
return o(bl, n);
|
|
1751
|
+
}
|
|
1752
|
+
const Sl = ea;
|
|
1753
|
+
let Pl = a.EXP;
|
|
1754
|
+
function na(n) {
|
|
1755
|
+
return o(Pl, n);
|
|
1756
|
+
}
|
|
1757
|
+
const hl = na;
|
|
1758
|
+
let Ol = a.FLOOR;
|
|
1759
|
+
function ta(n) {
|
|
1760
|
+
return o(Ol, n);
|
|
1761
|
+
}
|
|
1762
|
+
const Ml = ta;
|
|
1763
|
+
let Hl = a.HT_DCPERIOD;
|
|
1764
|
+
function aa(n) {
|
|
1765
|
+
return o(Hl, n);
|
|
1766
|
+
}
|
|
1767
|
+
const vl = aa;
|
|
1768
|
+
let wl = a.HT_DCPHASE;
|
|
1769
|
+
function oa(n) {
|
|
1770
|
+
return o(wl, n);
|
|
1771
|
+
}
|
|
1772
|
+
const Gl = oa;
|
|
1773
|
+
let Vl = a.HT_PHASOR;
|
|
1774
|
+
function ia(n) {
|
|
1775
|
+
return o(Vl, n);
|
|
1776
|
+
}
|
|
1777
|
+
const xl = ia;
|
|
1778
|
+
let Ul = a.HT_SINE;
|
|
1779
|
+
function ra(n) {
|
|
1780
|
+
return o(Ul, n);
|
|
1781
|
+
}
|
|
1782
|
+
const Bl = ra;
|
|
1783
|
+
let Kl = a.HT_TRENDLINE;
|
|
1784
|
+
function ua(n) {
|
|
1785
|
+
return o(Kl, n);
|
|
1786
|
+
}
|
|
1787
|
+
const Fl = ua;
|
|
1788
|
+
let Wl = a.HT_TRENDMODE;
|
|
1789
|
+
function la(n) {
|
|
1790
|
+
return o(Wl, n);
|
|
1791
|
+
}
|
|
1792
|
+
const kl = la;
|
|
1793
|
+
let Xl = a.IMI;
|
|
1794
|
+
function pa(n) {
|
|
1795
|
+
return o(Xl, n);
|
|
1796
|
+
}
|
|
1797
|
+
const Jl = pa;
|
|
1798
|
+
let Yl = a.KAMA;
|
|
1799
|
+
function sa(n) {
|
|
1800
|
+
return o(Yl, n);
|
|
1801
|
+
}
|
|
1802
|
+
const jl = sa;
|
|
1803
|
+
let ql = a.LINEARREG;
|
|
1804
|
+
function ma(n) {
|
|
1805
|
+
return o(ql, n);
|
|
1806
|
+
}
|
|
1807
|
+
const zl = ma;
|
|
1808
|
+
let $l = a.LINEARREG_ANGLE;
|
|
1809
|
+
function ca(n) {
|
|
1810
|
+
return o($l, n);
|
|
1811
|
+
}
|
|
1812
|
+
const Zl = ca;
|
|
1813
|
+
let Ql = a.LINEARREG_INTERCEPT;
|
|
1814
|
+
function _a(n) {
|
|
1815
|
+
return o(Ql, n);
|
|
1816
|
+
}
|
|
1817
|
+
const ep = _a;
|
|
1818
|
+
let np = a.LINEARREG_SLOPE;
|
|
1819
|
+
function Aa(n) {
|
|
1820
|
+
return o(np, n);
|
|
1821
|
+
}
|
|
1822
|
+
const tp = Aa;
|
|
1823
|
+
let ap = a.LN;
|
|
1824
|
+
function Da(n) {
|
|
1825
|
+
return o(ap, n);
|
|
1826
|
+
}
|
|
1827
|
+
const op = Da;
|
|
1828
|
+
let ip = a.LOG10;
|
|
1829
|
+
function da(n) {
|
|
1830
|
+
return o(ip, n);
|
|
1831
|
+
}
|
|
1832
|
+
const rp = da;
|
|
1833
|
+
let up = a.MA;
|
|
1834
|
+
function Ia(n) {
|
|
1835
|
+
return o(up, n);
|
|
1836
|
+
}
|
|
1837
|
+
const lp = Ia;
|
|
1838
|
+
let pp = a.MACD;
|
|
1839
|
+
function Ta(n) {
|
|
1840
|
+
return o(pp, n);
|
|
1841
|
+
}
|
|
1842
|
+
const sp = Ta;
|
|
1843
|
+
let mp = a.MACDEXT;
|
|
1844
|
+
function ya(n) {
|
|
1845
|
+
return o(mp, n);
|
|
1846
|
+
}
|
|
1847
|
+
const cp = ya;
|
|
1848
|
+
let _p = a.MACDFIX;
|
|
1849
|
+
function fa(n) {
|
|
1850
|
+
return o(_p, n);
|
|
1851
|
+
}
|
|
1852
|
+
const Ap = fa;
|
|
1853
|
+
let Dp = a.MAMA;
|
|
1854
|
+
function Ca(n) {
|
|
1855
|
+
return o(Dp, n);
|
|
1856
|
+
}
|
|
1857
|
+
const dp = Ca;
|
|
1858
|
+
let Ip = a.MAVP;
|
|
1859
|
+
function ga(n) {
|
|
1860
|
+
return o(Ip, n);
|
|
1861
|
+
}
|
|
1862
|
+
const Tp = ga;
|
|
1863
|
+
let yp = a.MAX;
|
|
1864
|
+
function Na(n) {
|
|
1865
|
+
return o(yp, n);
|
|
1866
|
+
}
|
|
1867
|
+
const fp = Na;
|
|
1868
|
+
let Cp = a.MAXINDEX;
|
|
1869
|
+
function La(n) {
|
|
1870
|
+
return o(Cp, n);
|
|
1871
|
+
}
|
|
1872
|
+
const gp = La;
|
|
1873
|
+
let Np = a.MEDPRICE;
|
|
1874
|
+
function Ra(n) {
|
|
1875
|
+
return o(Np, n);
|
|
1876
|
+
}
|
|
1877
|
+
const Lp = Ra;
|
|
1878
|
+
let Rp = a.MFI;
|
|
1879
|
+
function Ea(n) {
|
|
1880
|
+
return o(Rp, n);
|
|
1881
|
+
}
|
|
1882
|
+
const Ep = Ea;
|
|
1883
|
+
let bp = a.MIDPOINT;
|
|
1884
|
+
function ba(n) {
|
|
1885
|
+
return o(bp, n);
|
|
1886
|
+
}
|
|
1887
|
+
const Sp = ba;
|
|
1888
|
+
let Pp = a.MIDPRICE;
|
|
1889
|
+
function Sa(n) {
|
|
1890
|
+
return o(Pp, n);
|
|
1891
|
+
}
|
|
1892
|
+
const hp = Sa;
|
|
1893
|
+
let Op = a.MIN;
|
|
1894
|
+
function Pa(n) {
|
|
1895
|
+
return o(Op, n);
|
|
1896
|
+
}
|
|
1897
|
+
const Mp = Pa;
|
|
1898
|
+
let Hp = a.MININDEX;
|
|
1899
|
+
function ha(n) {
|
|
1900
|
+
return o(Hp, n);
|
|
1901
|
+
}
|
|
1902
|
+
const vp = ha;
|
|
1903
|
+
let wp = a.MINMAX;
|
|
1904
|
+
function Oa(n) {
|
|
1905
|
+
return o(wp, n);
|
|
1906
|
+
}
|
|
1907
|
+
const Gp = Oa;
|
|
1908
|
+
let Vp = a.MINMAXINDEX;
|
|
1909
|
+
function Ma(n) {
|
|
1910
|
+
return o(Vp, n);
|
|
1911
|
+
}
|
|
1912
|
+
const xp = Ma;
|
|
1913
|
+
let Up = a.MINUS_DI;
|
|
1914
|
+
function Ha(n) {
|
|
1915
|
+
return o(Up, n);
|
|
1916
|
+
}
|
|
1917
|
+
const Bp = Ha;
|
|
1918
|
+
let Kp = a.MINUS_DM;
|
|
1919
|
+
function va(n) {
|
|
1920
|
+
return o(Kp, n);
|
|
1921
|
+
}
|
|
1922
|
+
const Fp = va;
|
|
1923
|
+
let Wp = a.MOM;
|
|
1924
|
+
function wa(n) {
|
|
1925
|
+
return o(Wp, n);
|
|
1926
|
+
}
|
|
1927
|
+
const kp = wa;
|
|
1928
|
+
let Xp = a.MULT;
|
|
1929
|
+
function Ga(n) {
|
|
1930
|
+
return o(Xp, n);
|
|
1931
|
+
}
|
|
1932
|
+
const Jp = Ga;
|
|
1933
|
+
let Yp = a.NATR;
|
|
1934
|
+
function Va(n) {
|
|
1935
|
+
return o(Yp, n);
|
|
1936
|
+
}
|
|
1937
|
+
const jp = Va;
|
|
1938
|
+
let qp = a.OBV;
|
|
1939
|
+
function xa(n) {
|
|
1940
|
+
return o(qp, n);
|
|
1941
|
+
}
|
|
1942
|
+
const zp = xa;
|
|
1943
|
+
let $p = a.PLUS_DI;
|
|
1944
|
+
function Ua(n) {
|
|
1945
|
+
return o($p, n);
|
|
1946
|
+
}
|
|
1947
|
+
const Zp = Ua;
|
|
1948
|
+
let Qp = a.PLUS_DM;
|
|
1949
|
+
function Ba(n) {
|
|
1950
|
+
return o(Qp, n);
|
|
1951
|
+
}
|
|
1952
|
+
const es = Ba;
|
|
1953
|
+
let ns = a.PPO;
|
|
1954
|
+
function Ka(n) {
|
|
1955
|
+
return o(ns, n);
|
|
1956
|
+
}
|
|
1957
|
+
const ts = Ka;
|
|
1958
|
+
let as = a.ROC;
|
|
1959
|
+
function Fa(n) {
|
|
1960
|
+
return o(as, n);
|
|
1961
|
+
}
|
|
1962
|
+
const os = Fa;
|
|
1963
|
+
let is = a.ROCP;
|
|
1964
|
+
function Wa(n) {
|
|
1965
|
+
return o(is, n);
|
|
1966
|
+
}
|
|
1967
|
+
const rs = Wa;
|
|
1968
|
+
let us = a.ROCR;
|
|
1969
|
+
function ka(n) {
|
|
1970
|
+
return o(us, n);
|
|
1971
|
+
}
|
|
1972
|
+
const ls = ka;
|
|
1973
|
+
let ps = a.ROCR100;
|
|
1974
|
+
function Xa(n) {
|
|
1975
|
+
return o(ps, n);
|
|
1976
|
+
}
|
|
1977
|
+
const ss = Xa;
|
|
1978
|
+
let ms = a.RSI;
|
|
1979
|
+
function Ja(n) {
|
|
1980
|
+
return o(ms, n);
|
|
1981
|
+
}
|
|
1982
|
+
const cs = Ja;
|
|
1983
|
+
let _s = a.SAR;
|
|
1984
|
+
function Ya(n) {
|
|
1985
|
+
return o(_s, n);
|
|
1986
|
+
}
|
|
1987
|
+
const As = Ya;
|
|
1988
|
+
let Ds = a.SAREXT;
|
|
1989
|
+
function ja(n) {
|
|
1990
|
+
return o(Ds, n);
|
|
1991
|
+
}
|
|
1992
|
+
const ds = ja;
|
|
1993
|
+
let Is = a.SIN;
|
|
1994
|
+
function qa(n) {
|
|
1995
|
+
return o(Is, n);
|
|
1996
|
+
}
|
|
1997
|
+
const Ts = qa;
|
|
1998
|
+
let ys = a.SINH;
|
|
1999
|
+
function za(n) {
|
|
2000
|
+
return o(ys, n);
|
|
2001
|
+
}
|
|
2002
|
+
const fs = za;
|
|
2003
|
+
let Cs = a.SMA;
|
|
2004
|
+
function $a(n) {
|
|
2005
|
+
return o(Cs, n);
|
|
2006
|
+
}
|
|
2007
|
+
const gs = $a;
|
|
2008
|
+
let Ns = a.SQRT;
|
|
2009
|
+
function Za(n) {
|
|
2010
|
+
return o(Ns, n);
|
|
2011
|
+
}
|
|
2012
|
+
const Ls = Za;
|
|
2013
|
+
let Rs = a.STDDEV;
|
|
2014
|
+
function Qa(n) {
|
|
2015
|
+
return o(Rs, n);
|
|
2016
|
+
}
|
|
2017
|
+
const Es = Qa;
|
|
2018
|
+
let bs = a.STOCH;
|
|
2019
|
+
function eo(n) {
|
|
2020
|
+
return o(bs, n);
|
|
2021
|
+
}
|
|
2022
|
+
const Ss = eo;
|
|
2023
|
+
let Ps = a.STOCHF;
|
|
2024
|
+
function no(n) {
|
|
2025
|
+
return o(Ps, n);
|
|
2026
|
+
}
|
|
2027
|
+
const hs = no;
|
|
2028
|
+
let Os = a.STOCHRSI;
|
|
2029
|
+
function to(n) {
|
|
2030
|
+
return o(Os, n);
|
|
2031
|
+
}
|
|
2032
|
+
const Ms = to;
|
|
2033
|
+
let Hs = a.SUB;
|
|
2034
|
+
function ao(n) {
|
|
2035
|
+
return o(Hs, n);
|
|
2036
|
+
}
|
|
2037
|
+
const vs = ao;
|
|
2038
|
+
let ws = a.SUM;
|
|
2039
|
+
function oo(n) {
|
|
2040
|
+
return o(ws, n);
|
|
2041
|
+
}
|
|
2042
|
+
const Gs = oo;
|
|
2043
|
+
let Vs = a.T3;
|
|
2044
|
+
function io(n) {
|
|
2045
|
+
return o(Vs, n);
|
|
2046
|
+
}
|
|
2047
|
+
const xs = io;
|
|
2048
|
+
let Us = a.TAN;
|
|
2049
|
+
function ro(n) {
|
|
2050
|
+
return o(Us, n);
|
|
2051
|
+
}
|
|
2052
|
+
const Bs = ro;
|
|
2053
|
+
let Ks = a.TANH;
|
|
2054
|
+
function uo(n) {
|
|
2055
|
+
return o(Ks, n);
|
|
2056
|
+
}
|
|
2057
|
+
const Fs = uo;
|
|
2058
|
+
let Ws = a.TEMA;
|
|
2059
|
+
function lo(n) {
|
|
2060
|
+
return o(Ws, n);
|
|
2061
|
+
}
|
|
2062
|
+
const ks = lo;
|
|
2063
|
+
let Xs = a.TRANGE;
|
|
2064
|
+
function po(n) {
|
|
2065
|
+
return o(Xs, n);
|
|
2066
|
+
}
|
|
2067
|
+
const Js = po;
|
|
2068
|
+
let Ys = a.TRIMA;
|
|
2069
|
+
function so(n) {
|
|
2070
|
+
return o(Ys, n);
|
|
2071
|
+
}
|
|
2072
|
+
const js = so;
|
|
2073
|
+
let qs = a.TRIX;
|
|
2074
|
+
function mo(n) {
|
|
2075
|
+
return o(qs, n);
|
|
2076
|
+
}
|
|
2077
|
+
const zs = mo;
|
|
2078
|
+
let $s = a.TSF;
|
|
2079
|
+
function co(n) {
|
|
2080
|
+
return o($s, n);
|
|
2081
|
+
}
|
|
2082
|
+
const Zs = co;
|
|
2083
|
+
let Qs = a.TYPPRICE;
|
|
2084
|
+
function _o(n) {
|
|
2085
|
+
return o(Qs, n);
|
|
2086
|
+
}
|
|
2087
|
+
const em = _o;
|
|
2088
|
+
let nm = a.ULTOSC;
|
|
2089
|
+
function Ao(n) {
|
|
2090
|
+
return o(nm, n);
|
|
2091
|
+
}
|
|
2092
|
+
const tm = Ao;
|
|
2093
|
+
let am = a.VAR;
|
|
2094
|
+
function Do(n) {
|
|
2095
|
+
return o(am, n);
|
|
2096
|
+
}
|
|
2097
|
+
const om = Do;
|
|
2098
|
+
let im = a.WCLPRICE;
|
|
2099
|
+
function Io(n) {
|
|
2100
|
+
return o(im, n);
|
|
2101
|
+
}
|
|
2102
|
+
const rm = Io;
|
|
2103
|
+
let um = a.WILLR;
|
|
2104
|
+
function To(n) {
|
|
2105
|
+
return o(um, n);
|
|
2106
|
+
}
|
|
2107
|
+
const lm = To;
|
|
2108
|
+
let pm = a.WMA;
|
|
2109
|
+
function yo(n) {
|
|
2110
|
+
return o(pm, n);
|
|
2111
|
+
}
|
|
2112
|
+
const sm = yo, fe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2113
|
+
__proto__: null,
|
|
2114
|
+
ACCBANDS: fn,
|
|
2115
|
+
ACOS: Cn,
|
|
2116
|
+
AD: gn,
|
|
2117
|
+
ADD: Nn,
|
|
2118
|
+
ADOSC: Ln,
|
|
2119
|
+
ADX: Rn,
|
|
2120
|
+
ADXR: En,
|
|
2121
|
+
APO: bn,
|
|
2122
|
+
AROON: Sn,
|
|
2123
|
+
AROONOSC: Pn,
|
|
2124
|
+
ASIN: hn,
|
|
2125
|
+
ATAN: On,
|
|
2126
|
+
ATR: Mn,
|
|
2127
|
+
AVGDEV: Hn,
|
|
2128
|
+
AVGPRICE: vn,
|
|
2129
|
+
BBANDS: wn,
|
|
2130
|
+
BETA: Gn,
|
|
2131
|
+
BOP: Vn,
|
|
2132
|
+
CCI: xn,
|
|
2133
|
+
CDL2CROWS: Un,
|
|
2134
|
+
CDL3BLACKCROWS: Bn,
|
|
2135
|
+
CDL3INSIDE: Kn,
|
|
2136
|
+
CDL3LINESTRIKE: Fn,
|
|
2137
|
+
CDL3OUTSIDE: Wn,
|
|
2138
|
+
CDL3STARSINSOUTH: kn,
|
|
2139
|
+
CDL3WHITESOLDIERS: Xn,
|
|
2140
|
+
CDLABANDONEDBABY: Jn,
|
|
2141
|
+
CDLADVANCEBLOCK: Yn,
|
|
2142
|
+
CDLBELTHOLD: jn,
|
|
2143
|
+
CDLBREAKAWAY: qn,
|
|
2144
|
+
CDLCLOSINGMARUBOZU: zn,
|
|
2145
|
+
CDLCONCEALBABYSWALL: $n,
|
|
2146
|
+
CDLCOUNTERATTACK: Zn,
|
|
2147
|
+
CDLDARKCLOUDCOVER: Qn,
|
|
2148
|
+
CDLDOJI: et,
|
|
2149
|
+
CDLDOJISTAR: nt,
|
|
2150
|
+
CDLDRAGONFLYDOJI: tt,
|
|
2151
|
+
CDLENGULFING: at,
|
|
2152
|
+
CDLEVENINGDOJISTAR: ot,
|
|
2153
|
+
CDLEVENINGSTAR: it,
|
|
2154
|
+
CDLGAPSIDESIDEWHITE: rt,
|
|
2155
|
+
CDLGRAVESTONEDOJI: ut,
|
|
2156
|
+
CDLHAMMER: lt,
|
|
2157
|
+
CDLHANGINGMAN: pt,
|
|
2158
|
+
CDLHARAMI: st,
|
|
2159
|
+
CDLHARAMICROSS: mt,
|
|
2160
|
+
CDLHIGHWAVE: ct,
|
|
2161
|
+
CDLHIKKAKE: _t,
|
|
2162
|
+
CDLHIKKAKEMOD: At,
|
|
2163
|
+
CDLHOMINGPIGEON: Dt,
|
|
2164
|
+
CDLIDENTICAL3CROWS: dt,
|
|
2165
|
+
CDLINNECK: It,
|
|
2166
|
+
CDLINVERTEDHAMMER: Tt,
|
|
2167
|
+
CDLKICKING: yt,
|
|
2168
|
+
CDLKICKINGBYLENGTH: ft,
|
|
2169
|
+
CDLLADDERBOTTOM: Ct,
|
|
2170
|
+
CDLLONGLEGGEDDOJI: gt,
|
|
2171
|
+
CDLLONGLINE: Nt,
|
|
2172
|
+
CDLMARUBOZU: Lt,
|
|
2173
|
+
CDLMATCHINGLOW: Rt,
|
|
2174
|
+
CDLMATHOLD: Et,
|
|
2175
|
+
CDLMORNINGDOJISTAR: bt,
|
|
2176
|
+
CDLMORNINGSTAR: St,
|
|
2177
|
+
CDLONNECK: Pt,
|
|
2178
|
+
CDLPIERCING: ht,
|
|
2179
|
+
CDLRICKSHAWMAN: Ot,
|
|
2180
|
+
CDLRISEFALL3METHODS: Mt,
|
|
2181
|
+
CDLSEPARATINGLINES: Ht,
|
|
2182
|
+
CDLSHOOTINGSTAR: vt,
|
|
2183
|
+
CDLSHORTLINE: wt,
|
|
2184
|
+
CDLSPINNINGTOP: Gt,
|
|
2185
|
+
CDLSTALLEDPATTERN: Vt,
|
|
2186
|
+
CDLSTICKSANDWICH: xt,
|
|
2187
|
+
CDLTAKURI: Ut,
|
|
2188
|
+
CDLTASUKIGAP: Bt,
|
|
2189
|
+
CDLTHRUSTING: Kt,
|
|
2190
|
+
CDLTRISTAR: Ft,
|
|
2191
|
+
CDLUNIQUE3RIVER: Wt,
|
|
2192
|
+
CDLUPSIDEGAP2CROWS: kt,
|
|
2193
|
+
CDLXSIDEGAP3METHODS: Xt,
|
|
2194
|
+
CEIL: Jt,
|
|
2195
|
+
CMO: Yt,
|
|
2196
|
+
CORREL: jt,
|
|
2197
|
+
COS: qt,
|
|
2198
|
+
COSH: zt,
|
|
2199
|
+
DEMA: $t,
|
|
2200
|
+
DIV: Zt,
|
|
2201
|
+
DX: Qt,
|
|
2202
|
+
EMA: ea,
|
|
2203
|
+
EXP: na,
|
|
2204
|
+
FLOOR: ta,
|
|
2205
|
+
HT_DCPERIOD: aa,
|
|
2206
|
+
HT_DCPHASE: oa,
|
|
2207
|
+
HT_PHASOR: ia,
|
|
2208
|
+
HT_SINE: ra,
|
|
2209
|
+
HT_TRENDLINE: ua,
|
|
2210
|
+
HT_TRENDMODE: la,
|
|
2211
|
+
IMI: pa,
|
|
2212
|
+
KAMA: sa,
|
|
2213
|
+
LINEARREG: ma,
|
|
2214
|
+
LINEARREG_ANGLE: ca,
|
|
2215
|
+
LINEARREG_INTERCEPT: _a,
|
|
2216
|
+
LINEARREG_SLOPE: Aa,
|
|
2217
|
+
LN: Da,
|
|
2218
|
+
LOG10: da,
|
|
2219
|
+
MA: Ia,
|
|
2220
|
+
MACD: Ta,
|
|
2221
|
+
MACDEXT: ya,
|
|
2222
|
+
MACDFIX: fa,
|
|
2223
|
+
MAMA: Ca,
|
|
2224
|
+
get MAType() {
|
|
2225
|
+
return Be;
|
|
2226
|
+
},
|
|
2227
|
+
MAVP: ga,
|
|
2228
|
+
MAX: Na,
|
|
2229
|
+
MAXINDEX: La,
|
|
2230
|
+
MEDPRICE: Ra,
|
|
2231
|
+
MFI: Ea,
|
|
2232
|
+
MIDPOINT: ba,
|
|
2233
|
+
MIDPRICE: Sa,
|
|
2234
|
+
MIN: Pa,
|
|
2235
|
+
MININDEX: ha,
|
|
2236
|
+
MINMAX: Oa,
|
|
2237
|
+
MINMAXINDEX: Ma,
|
|
2238
|
+
MINUS_DI: Ha,
|
|
2239
|
+
MINUS_DM: va,
|
|
2240
|
+
MOM: wa,
|
|
2241
|
+
MULT: Ga,
|
|
2242
|
+
NATR: Va,
|
|
2243
|
+
OBV: xa,
|
|
2244
|
+
PLUS_DI: Ua,
|
|
2245
|
+
PLUS_DM: Ba,
|
|
2246
|
+
PPO: Ka,
|
|
2247
|
+
ROC: Fa,
|
|
2248
|
+
ROCP: Wa,
|
|
2249
|
+
ROCR: ka,
|
|
2250
|
+
ROCR100: Xa,
|
|
2251
|
+
RSI: Ja,
|
|
2252
|
+
SAR: Ya,
|
|
2253
|
+
SAREXT: ja,
|
|
2254
|
+
SIN: qa,
|
|
2255
|
+
SINH: za,
|
|
2256
|
+
SMA: $a,
|
|
2257
|
+
SQRT: Za,
|
|
2258
|
+
STDDEV: Qa,
|
|
2259
|
+
STOCH: eo,
|
|
2260
|
+
STOCHF: no,
|
|
2261
|
+
STOCHRSI: to,
|
|
2262
|
+
SUB: ao,
|
|
2263
|
+
SUM: oo,
|
|
2264
|
+
T3: io,
|
|
2265
|
+
TAN: ro,
|
|
2266
|
+
TANH: uo,
|
|
2267
|
+
TEMA: lo,
|
|
2268
|
+
TRANGE: po,
|
|
2269
|
+
TRIMA: so,
|
|
2270
|
+
TRIX: mo,
|
|
2271
|
+
TSF: co,
|
|
2272
|
+
TYPPRICE: _o,
|
|
2273
|
+
ULTOSC: Ao,
|
|
2274
|
+
VAR: Do,
|
|
2275
|
+
WCLPRICE: Io,
|
|
2276
|
+
WILLR: To,
|
|
2277
|
+
WMA: yo,
|
|
2278
|
+
accBands: Ai,
|
|
2279
|
+
acos: di,
|
|
2280
|
+
ad: Ti,
|
|
2281
|
+
adOsc: gi,
|
|
2282
|
+
add: fi,
|
|
2283
|
+
adx: Li,
|
|
2284
|
+
adxr: Ei,
|
|
2285
|
+
apo: Si,
|
|
2286
|
+
aroon: hi,
|
|
2287
|
+
aroonOsc: Mi,
|
|
2288
|
+
asin: vi,
|
|
2289
|
+
atan: Gi,
|
|
2290
|
+
atr: xi,
|
|
2291
|
+
avgDev: Bi,
|
|
2292
|
+
avgPrice: Fi,
|
|
2293
|
+
bbands: ki,
|
|
2294
|
+
beta: Ji,
|
|
2295
|
+
bop: ji,
|
|
2296
|
+
cci: zi,
|
|
2297
|
+
cdl2Crows: Zi,
|
|
2298
|
+
cdl3BlackCrows: er,
|
|
2299
|
+
cdl3Inside: tr,
|
|
2300
|
+
cdl3LineStrike: or,
|
|
2301
|
+
cdl3Outside: rr,
|
|
2302
|
+
cdl3StarsInSouth: lr,
|
|
2303
|
+
cdl3WhiteSoldiers: sr,
|
|
2304
|
+
cdlAbandonedBaby: cr,
|
|
2305
|
+
cdlAdvanceBlock: Ar,
|
|
2306
|
+
cdlBeltHold: dr,
|
|
2307
|
+
cdlBreakaway: Tr,
|
|
2308
|
+
cdlClosingMarubozu: fr,
|
|
2309
|
+
cdlConcealBabysWall: gr,
|
|
2310
|
+
cdlCounterAttack: Lr,
|
|
2311
|
+
cdlDarkCloudCover: Er,
|
|
2312
|
+
cdlDoji: Sr,
|
|
2313
|
+
cdlDojiStar: hr,
|
|
2314
|
+
cdlDragonflyDoji: Mr,
|
|
2315
|
+
cdlEngulfing: vr,
|
|
2316
|
+
cdlEveningDojiStar: Gr,
|
|
2317
|
+
cdlEveningStar: xr,
|
|
2318
|
+
cdlGapSideSideWhite: Br,
|
|
2319
|
+
cdlGravestoneDoji: Fr,
|
|
2320
|
+
cdlHammer: kr,
|
|
2321
|
+
cdlHangingMan: Jr,
|
|
2322
|
+
cdlHarami: jr,
|
|
2323
|
+
cdlHaramiCross: zr,
|
|
2324
|
+
cdlHignWave: Zr,
|
|
2325
|
+
cdlHikkake: eu,
|
|
2326
|
+
cdlHikkakeMod: tu,
|
|
2327
|
+
cdlHomingPigeon: ou,
|
|
2328
|
+
cdlIdentical3Crows: ru,
|
|
2329
|
+
cdlInNeck: lu,
|
|
2330
|
+
cdlInvertedHammer: su,
|
|
2331
|
+
cdlKicking: cu,
|
|
2332
|
+
cdlKickingByLength: Au,
|
|
2333
|
+
cdlLadderBottom: du,
|
|
2334
|
+
cdlLongLeggedDoji: Tu,
|
|
2335
|
+
cdlLongLine: fu,
|
|
2336
|
+
cdlMarubozu: gu,
|
|
2337
|
+
cdlMatHold: Eu,
|
|
2338
|
+
cdlMatchingLow: Lu,
|
|
2339
|
+
cdlMorningDojiStar: Su,
|
|
2340
|
+
cdlMorningStar: hu,
|
|
2341
|
+
cdlOnNeck: Mu,
|
|
2342
|
+
cdlPiercing: vu,
|
|
2343
|
+
cdlRickshawMan: Gu,
|
|
2344
|
+
cdlRiseFall3Methods: xu,
|
|
2345
|
+
cdlSeperatingLines: Bu,
|
|
2346
|
+
cdlShootingStar: Fu,
|
|
2347
|
+
cdlShortLine: ku,
|
|
2348
|
+
cdlSpinningTop: Ju,
|
|
2349
|
+
cdlStalledPattern: ju,
|
|
2350
|
+
cdlStickSandwhich: zu,
|
|
2351
|
+
cdlTakuri: Zu,
|
|
2352
|
+
cdlTasukiGap: el,
|
|
2353
|
+
cdlThrusting: tl,
|
|
2354
|
+
cdlTristar: ol,
|
|
2355
|
+
cdlUnique3River: rl,
|
|
2356
|
+
cdlUpsideGap2Crows: ll,
|
|
2357
|
+
cdlXSideGap3Methods: sl,
|
|
2358
|
+
ceil: cl,
|
|
2359
|
+
cmo: Al,
|
|
2360
|
+
correl: dl,
|
|
2361
|
+
cos: Tl,
|
|
2362
|
+
cosh: fl,
|
|
2363
|
+
dema: gl,
|
|
2364
|
+
div: Ll,
|
|
2365
|
+
dx: El,
|
|
2366
|
+
ema: Sl,
|
|
2367
|
+
exp: hl,
|
|
2368
|
+
floor: Ml,
|
|
2369
|
+
htDcPeriod: vl,
|
|
2370
|
+
htDcPhase: Gl,
|
|
2371
|
+
htPhasor: xl,
|
|
2372
|
+
htSine: Bl,
|
|
2373
|
+
htTrendMode: kl,
|
|
2374
|
+
htTrendline: Fl,
|
|
2375
|
+
imi: Jl,
|
|
2376
|
+
init: yn,
|
|
2377
|
+
kama: jl,
|
|
2378
|
+
linearReg: zl,
|
|
2379
|
+
linearRegAngle: Zl,
|
|
2380
|
+
linearRegIntercept: ep,
|
|
2381
|
+
linearRegSlope: tp,
|
|
2382
|
+
ln: op,
|
|
2383
|
+
log10: rp,
|
|
2384
|
+
macd: sp,
|
|
2385
|
+
macdExt: cp,
|
|
2386
|
+
macdFix: Ap,
|
|
2387
|
+
mama: dp,
|
|
2388
|
+
max: fp,
|
|
2389
|
+
maxIndex: gp,
|
|
2390
|
+
medPrice: Lp,
|
|
2391
|
+
mfi: Ep,
|
|
2392
|
+
midPoint: Sp,
|
|
2393
|
+
midPrice: hp,
|
|
2394
|
+
min: Mp,
|
|
2395
|
+
minIndex: vp,
|
|
2396
|
+
minMax: Gp,
|
|
2397
|
+
minMaxIndex: xp,
|
|
2398
|
+
minusDI: Bp,
|
|
2399
|
+
minusDM: Fp,
|
|
2400
|
+
mom: kp,
|
|
2401
|
+
movingAverage: lp,
|
|
2402
|
+
movingAverageVariablePeriod: Tp,
|
|
2403
|
+
mult: Jp,
|
|
2404
|
+
natr: jp,
|
|
2405
|
+
obv: zp,
|
|
2406
|
+
plusDI: Zp,
|
|
2407
|
+
plusDM: es,
|
|
2408
|
+
ppo: ts,
|
|
2409
|
+
roc: os,
|
|
2410
|
+
rocP: rs,
|
|
2411
|
+
rocR: ls,
|
|
2412
|
+
rocR100: ss,
|
|
2413
|
+
rsi: cs,
|
|
2414
|
+
sar: As,
|
|
2415
|
+
sarExt: ds,
|
|
2416
|
+
sin: Ts,
|
|
2417
|
+
sinh: fs,
|
|
2418
|
+
sma: gs,
|
|
2419
|
+
sqrt: Ls,
|
|
2420
|
+
stdDev: Es,
|
|
2421
|
+
stoch: Ss,
|
|
2422
|
+
stochF: hs,
|
|
2423
|
+
stochRsi: Ms,
|
|
2424
|
+
sub: vs,
|
|
2425
|
+
sum: Gs,
|
|
2426
|
+
t3: xs,
|
|
2427
|
+
tan: Bs,
|
|
2428
|
+
tanh: Fs,
|
|
2429
|
+
tema: ks,
|
|
2430
|
+
trima: js,
|
|
2431
|
+
trix: zs,
|
|
2432
|
+
trueRange: Js,
|
|
2433
|
+
tsf: Zs,
|
|
2434
|
+
typPrice: em,
|
|
2435
|
+
ultOsc: tm,
|
|
2436
|
+
variance: om,
|
|
2437
|
+
wclPrice: rm,
|
|
2438
|
+
willR: lm,
|
|
2439
|
+
wma: sm
|
|
2440
|
+
}, Symbol.toStringTag, { value: "Module" })), mm = /* @__PURE__ */ Ae({
|
|
19
2441
|
__name: "index",
|
|
20
|
-
setup(
|
|
21
|
-
let
|
|
22
|
-
const
|
|
23
|
-
return
|
|
2442
|
+
setup(n, { expose: N }) {
|
|
2443
|
+
let e = !1, b = !0, w = [];
|
|
2444
|
+
const h = (y, f) => y.length > f ? y.slice(y.length - f) : y;
|
|
2445
|
+
return N({
|
|
24
2446
|
// 注册计算指标线方法
|
|
25
2447
|
initTalib: async () => {
|
|
26
|
-
if (!
|
|
27
|
-
|
|
28
|
-
|
|
2448
|
+
if (!e)
|
|
2449
|
+
e = !0, await yn("./talib.wasm"), b = !1, w.forEach((y) => {
|
|
2450
|
+
y();
|
|
29
2451
|
});
|
|
30
|
-
else if (
|
|
31
|
-
return new Promise((
|
|
32
|
-
|
|
2452
|
+
else if (b)
|
|
2453
|
+
return new Promise((y) => {
|
|
2454
|
+
w.push(y);
|
|
33
2455
|
});
|
|
34
2456
|
},
|
|
35
2457
|
// 键盘事件处理
|
|
36
|
-
handleKeyDown: (
|
|
37
|
-
let { startValue:
|
|
38
|
-
if (
|
|
39
|
-
if (
|
|
2458
|
+
handleKeyDown: (y, f) => {
|
|
2459
|
+
let { startValue: _, endValue: A, maxIndex: E } = f;
|
|
2460
|
+
if (y.code === "ArrowLeft") {
|
|
2461
|
+
if (_ === 0)
|
|
40
2462
|
return;
|
|
41
|
-
|
|
42
|
-
} else if (
|
|
43
|
-
if (
|
|
2463
|
+
_ = _ - 1, A = A - 1;
|
|
2464
|
+
} else if (y.code === "ArrowRight") {
|
|
2465
|
+
if (A === E)
|
|
44
2466
|
return;
|
|
45
|
-
|
|
46
|
-
} else if (
|
|
47
|
-
if (
|
|
2467
|
+
_ = _ + 1, A = A + 1;
|
|
2468
|
+
} else if (y.code === "ArrowUp") {
|
|
2469
|
+
if (A - _ < 5)
|
|
48
2470
|
return;
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
} else if (
|
|
52
|
-
const
|
|
53
|
-
|
|
2471
|
+
const L = Math.floor((A - _) / 2) + 1;
|
|
2472
|
+
_ = _ + L, A - _ < 5 && (_ = A - 4);
|
|
2473
|
+
} else if (y.code === "ArrowDown") {
|
|
2474
|
+
const L = Math.min(500, A - _);
|
|
2475
|
+
_ = _ - L - 1;
|
|
54
2476
|
}
|
|
55
2477
|
return {
|
|
56
|
-
startValue:
|
|
57
|
-
endValue:
|
|
2478
|
+
startValue: _,
|
|
2479
|
+
endValue: A
|
|
58
2480
|
};
|
|
59
2481
|
},
|
|
60
2482
|
// 根据时间解析dataZoom
|
|
61
|
-
getDataZoomInfoByTime: (
|
|
62
|
-
const { showStartTime:
|
|
63
|
-
let
|
|
64
|
-
return
|
|
65
|
-
const
|
|
66
|
-
|
|
2483
|
+
getDataZoomInfoByTime: (y) => {
|
|
2484
|
+
const { showStartTime: f, showEndTime: _, xAxisData: A, maxShowDays: E } = y;
|
|
2485
|
+
let L = -1, u = -1, l = {};
|
|
2486
|
+
return A.forEach((p, s) => {
|
|
2487
|
+
const I = p.split(" ")[0];
|
|
2488
|
+
l[I] = l[I] || 0, l[I] += 1, new Date(p) >= new Date(f) && L === -1 && (L = s), new Date(p) <= new Date(_) && (u = s);
|
|
67
2489
|
}), {
|
|
68
|
-
startValue:
|
|
69
|
-
endValue:
|
|
70
|
-
maxValueSpan: Math.max(...Object.values(
|
|
2490
|
+
startValue: L,
|
|
2491
|
+
endValue: u,
|
|
2492
|
+
maxValueSpan: Math.max(...Object.values(l)) * E
|
|
71
2493
|
};
|
|
72
2494
|
},
|
|
73
2495
|
/**
|
|
@@ -83,68 +2505,68 @@ const oe = /* @__PURE__ */ R({
|
|
|
83
2505
|
* length, // 便捷数据 - K线长度
|
|
84
2506
|
* }
|
|
85
2507
|
*/
|
|
86
|
-
formatDataBySlide: (
|
|
87
|
-
const { originDrawData:
|
|
88
|
-
let
|
|
89
|
-
|
|
90
|
-
...
|
|
91
|
-
...
|
|
92
|
-
],
|
|
93
|
-
...
|
|
94
|
-
...
|
|
95
|
-
],
|
|
96
|
-
|
|
2508
|
+
formatDataBySlide: (y) => {
|
|
2509
|
+
const { originDrawData: f, addData: _, startTime: A, endTime: E } = y, { mainIndicator: L, mainIndicatorList: u, subIndicator: l, subIndicatorList: p, config: s, timeRange: I } = y, { loadAddCount: H, preLoadCount: V } = s;
|
|
2510
|
+
let O = [], x = [], Y = [], U = [];
|
|
2511
|
+
A && E ? (O = _.filter((g) => new Date(g[0]) >= new Date(A) && new Date(g[0]) <= new Date(E)), U = [..._]) : E ? (O = [
|
|
2512
|
+
..._.filter((g, T) => T >= _.length - H && new Date(I[0]) <= new Date(g[0]) && new Date(g[0]) <= new Date(I[1])),
|
|
2513
|
+
...f.originData
|
|
2514
|
+
], U = [..._, ...f.originData]) : A && (O = [
|
|
2515
|
+
...f.originData,
|
|
2516
|
+
..._.filter((g, T) => T >= V && new Date(I[0]) <= new Date(g[0]) && new Date(g[0]) <= new Date(I[1]))
|
|
2517
|
+
], U = O), O.forEach((g, T) => {
|
|
2518
|
+
x.push([g[1], g[4], g[3], g[2], T === 0 ? 0 : O[T - 1][4], g[6]]), Y.push(g[0]);
|
|
97
2519
|
});
|
|
98
|
-
let
|
|
99
|
-
const
|
|
2520
|
+
let C = [], M = [];
|
|
2521
|
+
const B = {
|
|
100
2522
|
time: [],
|
|
101
2523
|
open: [],
|
|
102
2524
|
close: [],
|
|
103
2525
|
high: [],
|
|
104
2526
|
low: [],
|
|
105
|
-
originData:
|
|
2527
|
+
originData: U
|
|
106
2528
|
};
|
|
107
|
-
let
|
|
108
|
-
return
|
|
109
|
-
|
|
110
|
-
}),
|
|
111
|
-
const { calculationFn:
|
|
2529
|
+
let j = null, J = null;
|
|
2530
|
+
return U.forEach((g, T) => {
|
|
2531
|
+
B.time.push(g[0]), B.open.push(g[1]), B.close.push(g[4]), B.high.push(g[2]), B.low.push(g[3]), g[0] === O[0][0] && (j = T), g[0] === O[O.length - 1][0] && (J = T + 1);
|
|
2532
|
+
}), C = u.find(({ value: g }) => g === L).config.map((g) => {
|
|
2533
|
+
const { calculationFn: T } = g;
|
|
112
2534
|
return {
|
|
113
|
-
...
|
|
114
|
-
data:
|
|
2535
|
+
...g,
|
|
2536
|
+
data: T ? T(fe, B, { time: [], open: [], close: [], high: [], low: [], originData: [] }).slice(j, J) : []
|
|
115
2537
|
};
|
|
116
|
-
}),
|
|
117
|
-
const { source:
|
|
118
|
-
return
|
|
119
|
-
...
|
|
2538
|
+
}), M = p.find(({ value: g }) => g === l).config.reduce((g, T) => {
|
|
2539
|
+
const { source: P, calculationFn: $ } = T;
|
|
2540
|
+
return P === "calculation" ? [
|
|
2541
|
+
...g,
|
|
120
2542
|
{
|
|
121
|
-
...
|
|
122
|
-
data:
|
|
2543
|
+
...T,
|
|
2544
|
+
data: $ ? $(fe, B).slice(j, J) : []
|
|
123
2545
|
}
|
|
124
|
-
] :
|
|
2546
|
+
] : g;
|
|
125
2547
|
}, []), {
|
|
126
|
-
originData:
|
|
127
|
-
candlestickData:
|
|
128
|
-
mainIndicatorData:
|
|
129
|
-
subIndicatorData:
|
|
130
|
-
xAxisData:
|
|
131
|
-
startTime:
|
|
132
|
-
endTime:
|
|
133
|
-
length:
|
|
2548
|
+
originData: O,
|
|
2549
|
+
candlestickData: x,
|
|
2550
|
+
mainIndicatorData: C,
|
|
2551
|
+
subIndicatorData: M,
|
|
2552
|
+
xAxisData: Y,
|
|
2553
|
+
startTime: O[0][0],
|
|
2554
|
+
endTime: O[O.length - 1][0],
|
|
2555
|
+
length: O.length
|
|
134
2556
|
};
|
|
135
2557
|
},
|
|
136
2558
|
// 计算绘图数据(根据长度使用)
|
|
137
|
-
formatDataByCount: (
|
|
138
|
-
const { originDrawData:
|
|
139
|
-
let
|
|
140
|
-
const { addCount:
|
|
141
|
-
let
|
|
142
|
-
const
|
|
143
|
-
|
|
144
|
-
const
|
|
145
|
-
...
|
|
146
|
-
data:
|
|
147
|
-
|
|
2559
|
+
formatDataByCount: (y) => {
|
|
2560
|
+
const { originDrawData: f, addData: _, mainIndicator: A, mainIndicatorList: E, subIndicator: L, subIndicatorList: u, config: l } = y;
|
|
2561
|
+
let p = {};
|
|
2562
|
+
const { addCount: s, preLoadCount: I } = l, H = [], V = [], O = [], x = [], Y = [];
|
|
2563
|
+
let U = [], C = [];
|
|
2564
|
+
const M = _.filter((T, P) => (H.push(T[0]), V.push(T[1]), O.push(T[4]), x.push(T[2]), Y.push(T[3]), U.push(T[0]), C.push([T[1], T[4], T[3], T[2], P === 0 ? 0 : _[P - 1][4], T[6]]), _.length >= s + I - 1 ? P >= I : !0));
|
|
2565
|
+
U = h(U, M.length), C = h(C, M.length);
|
|
2566
|
+
const B = { time: H, open: V, close: O, high: x, low: Y, originData: _ }, J = E.find((T) => T.value === A).config.map((T) => ({
|
|
2567
|
+
...T,
|
|
2568
|
+
data: h(
|
|
2569
|
+
T.calculationFn ? T.calculationFn(fe, B, {
|
|
148
2570
|
time: [],
|
|
149
2571
|
open: [],
|
|
150
2572
|
close: [],
|
|
@@ -152,54 +2574,54 @@ const oe = /* @__PURE__ */ R({
|
|
|
152
2574
|
low: [],
|
|
153
2575
|
originData: []
|
|
154
2576
|
}) : [],
|
|
155
|
-
|
|
2577
|
+
U.length
|
|
156
2578
|
)
|
|
157
2579
|
}));
|
|
158
|
-
let
|
|
159
|
-
return
|
|
160
|
-
...
|
|
2580
|
+
let g = [];
|
|
2581
|
+
return L && u && (g = u.find((P) => P.value === L).config.reduce((P, $) => $.source === "calculation" ? [
|
|
2582
|
+
...P,
|
|
161
2583
|
{
|
|
162
|
-
|
|
163
|
-
data:
|
|
164
|
-
|
|
165
|
-
|
|
2584
|
+
...$,
|
|
2585
|
+
data: h(
|
|
2586
|
+
$.calculationFn ? $.calculationFn(fe, B) : [],
|
|
2587
|
+
U.length
|
|
166
2588
|
)
|
|
167
2589
|
}
|
|
168
|
-
] :
|
|
169
|
-
originData: [...
|
|
2590
|
+
] : P, [])), f.length ? p = {
|
|
2591
|
+
originData: [...M, ...f.originData],
|
|
170
2592
|
// 原数据
|
|
171
|
-
xAxisData: [...
|
|
2593
|
+
xAxisData: [...U, ...f.xAxisData],
|
|
172
2594
|
// 时间数据
|
|
173
|
-
candlestickData: [...
|
|
2595
|
+
candlestickData: [...C, ...f.candlestickData],
|
|
174
2596
|
// k线数据
|
|
175
|
-
mainIndicatorData:
|
|
176
|
-
...
|
|
177
|
-
data: [...
|
|
2597
|
+
mainIndicatorData: f.mainIndicatorData.map((T, P) => ({
|
|
2598
|
+
...T,
|
|
2599
|
+
data: [...J[P].data, ...T.data]
|
|
178
2600
|
})),
|
|
179
2601
|
// 主图指标线数据
|
|
180
|
-
subIndicatorData:
|
|
181
|
-
...
|
|
182
|
-
data: [...
|
|
2602
|
+
subIndicatorData: f.subIndicatorData.map((T, P) => ({
|
|
2603
|
+
...T,
|
|
2604
|
+
data: [...g[P].data, ...T.data]
|
|
183
2605
|
}))
|
|
184
2606
|
// 副图数据
|
|
185
|
-
} :
|
|
186
|
-
originData:
|
|
2607
|
+
} : p = {
|
|
2608
|
+
originData: M,
|
|
187
2609
|
// 原数据
|
|
188
|
-
xAxisData:
|
|
2610
|
+
xAxisData: U,
|
|
189
2611
|
// 时间数据
|
|
190
|
-
candlestickData:
|
|
2612
|
+
candlestickData: C,
|
|
191
2613
|
// k线数据
|
|
192
|
-
mainIndicatorData:
|
|
2614
|
+
mainIndicatorData: J,
|
|
193
2615
|
// 主图指标线数据
|
|
194
|
-
subIndicatorData:
|
|
2616
|
+
subIndicatorData: g
|
|
195
2617
|
// 副图数据
|
|
196
|
-
},
|
|
2618
|
+
}, p.length = p.xAxisData.length, p.startTime = p.xAxisData[0], p.endTime = p.xAxisData[p.length - 1], p;
|
|
197
2619
|
},
|
|
198
2620
|
fn: () => {
|
|
199
2621
|
}
|
|
200
|
-
}), (
|
|
2622
|
+
}), (y, f) => null;
|
|
201
2623
|
}
|
|
202
|
-
}),
|
|
2624
|
+
}), cm = { class: "kline-tips" }, _m = /* @__PURE__ */ Ae({
|
|
203
2625
|
__name: "index",
|
|
204
2626
|
props: {
|
|
205
2627
|
// 提示数据
|
|
@@ -208,17 +2630,17 @@ const oe = /* @__PURE__ */ R({
|
|
|
208
2630
|
require: !0
|
|
209
2631
|
}
|
|
210
2632
|
},
|
|
211
|
-
setup(
|
|
212
|
-
return (
|
|
213
|
-
(
|
|
214
|
-
key:
|
|
2633
|
+
setup(n) {
|
|
2634
|
+
return (N, e) => (Q(), oe("div", cm, [
|
|
2635
|
+
(Q(!0), oe(_n, null, An(n.data, (b, w) => (Q(), oe("div", {
|
|
2636
|
+
key: w,
|
|
215
2637
|
class: "kline-tips-item",
|
|
216
|
-
style:
|
|
217
|
-
},
|
|
2638
|
+
style: oi({ color: b.color })
|
|
2639
|
+
}, sn(b.label) + " " + sn(b.value), 5))), 128))
|
|
218
2640
|
]));
|
|
219
2641
|
}
|
|
220
2642
|
});
|
|
221
|
-
const
|
|
2643
|
+
const Ke = /* @__PURE__ */ Ne(_m, [["__scopeId", "data-v-2a02e841"]]), Am = { class: "kline-tips" }, Dm = /* @__PURE__ */ Ae({
|
|
222
2644
|
__name: "index",
|
|
223
2645
|
props: {
|
|
224
2646
|
// 提示数据
|
|
@@ -243,47 +2665,47 @@ const M = /* @__PURE__ */ q(ie, [["__scopeId", "data-v-2a02e841"]]), le = { clas
|
|
|
243
2665
|
require: !0
|
|
244
2666
|
}
|
|
245
2667
|
},
|
|
246
|
-
setup(
|
|
247
|
-
const { round:
|
|
248
|
-
const { drawData:
|
|
249
|
-
if (
|
|
250
|
-
let
|
|
251
|
-
return
|
|
252
|
-
{ label: "开", value:
|
|
253
|
-
{ label: "高", value:
|
|
254
|
-
{ label: "低", value:
|
|
255
|
-
{ label: "收", value:
|
|
256
|
-
{ label: "额", value:
|
|
257
|
-
{ label: "涨跌", value: `${
|
|
2668
|
+
setup(n) {
|
|
2669
|
+
const { round: N, multiply: e, divide: b, subtract: w, formatValue: h } = Tn, y = n, f = Ce(() => {
|
|
2670
|
+
const { drawData: A, activeIndex: E, candlestickData: L } = y;
|
|
2671
|
+
if (L != null && L.length && L[E]) {
|
|
2672
|
+
let u;
|
|
2673
|
+
return L[E][6] > 0 ? u = "red" : L[E][6] < 0 && (u = "green"), [
|
|
2674
|
+
{ label: "开", value: N(L[E][0]) },
|
|
2675
|
+
{ label: "高", value: N(L[E][3]) },
|
|
2676
|
+
{ label: "低", value: N(L[E][2]) },
|
|
2677
|
+
{ label: "收", value: N(L[E][1]) },
|
|
2678
|
+
{ label: "额", value: h(L[E][4]) },
|
|
2679
|
+
{ label: "涨跌", value: `${N(L[E][6])}%`, color: u }
|
|
258
2680
|
];
|
|
259
|
-
} else if (
|
|
260
|
-
const
|
|
261
|
-
{ label: "开", value:
|
|
262
|
-
{ label: "高", value:
|
|
263
|
-
{ label: "低", value:
|
|
264
|
-
{ label: "收", value:
|
|
2681
|
+
} else if (A.candlestickData && A.candlestickData[E]) {
|
|
2682
|
+
const u = A.candlestickData[E], l = [
|
|
2683
|
+
{ label: "开", value: N(u[0]) },
|
|
2684
|
+
{ label: "高", value: N(u[3]) },
|
|
2685
|
+
{ label: "低", value: N(u[2]) },
|
|
2686
|
+
{ label: "收", value: N(u[1]) }
|
|
265
2687
|
];
|
|
266
|
-
|
|
267
|
-
const
|
|
268
|
-
let
|
|
269
|
-
return
|
|
2688
|
+
u[5] !== void 0 && l.push({ label: "额", value: h(u[5]) });
|
|
2689
|
+
const p = N(e(b(w(u[1], u[4]), Math.abs(u[4])), 100));
|
|
2690
|
+
let s;
|
|
2691
|
+
return p > 0 ? s = "red" : p < 0 && (s = "green"), l.push({ label: "涨跌", value: `${p}%`, color: s }), l;
|
|
270
2692
|
}
|
|
271
2693
|
return [];
|
|
272
|
-
}),
|
|
273
|
-
var
|
|
274
|
-
const { drawData:
|
|
275
|
-
return ((
|
|
2694
|
+
}), _ = Ce(() => {
|
|
2695
|
+
var L;
|
|
2696
|
+
const { drawData: A, activeIndex: E } = y;
|
|
2697
|
+
return ((L = A == null ? void 0 : A.mainIndicatorData) == null ? void 0 : L.map((u) => ({ label: u.key, value: N(u.data[E]), color: u.color }))) || [];
|
|
276
2698
|
});
|
|
277
|
-
return (
|
|
278
|
-
|
|
279
|
-
|
|
2699
|
+
return (A, E) => (Q(), oe("div", Am, [
|
|
2700
|
+
ge(Ke, { data: f.value }, null, 8, ["data"]),
|
|
2701
|
+
ge(Ke, { data: _.value }, null, 8, ["data"])
|
|
280
2702
|
]));
|
|
281
2703
|
}
|
|
282
2704
|
});
|
|
283
|
-
const
|
|
2705
|
+
const dm = /* @__PURE__ */ Ne(Dm, [["__scopeId", "data-v-234f3f41"]]), Im = { class: "klineSub" }, Tm = { class: "klineSub-tips" }, ym = {
|
|
284
2706
|
key: 0,
|
|
285
2707
|
class: "klineSub-tips-select"
|
|
286
|
-
},
|
|
2708
|
+
}, fm = /* @__PURE__ */ Ae({
|
|
287
2709
|
__name: "index",
|
|
288
2710
|
props: {
|
|
289
2711
|
drawData: { type: Object, require: !0 },
|
|
@@ -296,123 +2718,123 @@ const ce = /* @__PURE__ */ q(se, [["__scopeId", "data-v-234f3f41"]]), ue = { cla
|
|
|
296
2718
|
// 配置
|
|
297
2719
|
},
|
|
298
2720
|
emits: ["update:modelValue"],
|
|
299
|
-
setup(
|
|
300
|
-
const { round:
|
|
301
|
-
let
|
|
302
|
-
const
|
|
2721
|
+
setup(n, { expose: N, emit: e }) {
|
|
2722
|
+
const { round: b } = Tn;
|
|
2723
|
+
let w, h;
|
|
2724
|
+
const y = e, f = n, _ = Dn(), A = Ce({
|
|
303
2725
|
get() {
|
|
304
|
-
return
|
|
2726
|
+
return f.modelValue;
|
|
305
2727
|
},
|
|
306
|
-
set(
|
|
307
|
-
|
|
308
|
-
}
|
|
309
|
-
}),
|
|
310
|
-
const { drawData:
|
|
311
|
-
return
|
|
312
|
-
var
|
|
313
|
-
let
|
|
314
|
-
return
|
|
315
|
-
label:
|
|
316
|
-
color:
|
|
317
|
-
value:
|
|
2728
|
+
set(u) {
|
|
2729
|
+
y("update:modelValue", u);
|
|
2730
|
+
}
|
|
2731
|
+
}), E = Ce(() => {
|
|
2732
|
+
const { drawData: u, activeIndex: l } = f, p = f.subIndicatorList.find((s) => s.value === A.value);
|
|
2733
|
+
return u.originData && u.originData[l] ? p.config.map((s) => {
|
|
2734
|
+
var H, V;
|
|
2735
|
+
let I = "-";
|
|
2736
|
+
return s.source === "origin" ? I = u.originData[l][s.dataIndex] || "-" : s.source === "calculation" && (I = (((V = (H = u.subIndicatorData) == null ? void 0 : H.find((x) => x.key === s.key)) == null ? void 0 : V.data) || [])[l]), {
|
|
2737
|
+
label: s.key,
|
|
2738
|
+
color: s.color,
|
|
2739
|
+
value: I === "-" ? I : b(I)
|
|
318
2740
|
};
|
|
319
2741
|
}) : [];
|
|
320
2742
|
});
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
let
|
|
324
|
-
|
|
325
|
-
if (
|
|
326
|
-
|
|
2743
|
+
dn(() => {
|
|
2744
|
+
w = Ue.init(_.value);
|
|
2745
|
+
let u = !0;
|
|
2746
|
+
h = new ResizeObserver(() => {
|
|
2747
|
+
if (u) {
|
|
2748
|
+
u = null;
|
|
327
2749
|
return;
|
|
328
2750
|
}
|
|
329
|
-
|
|
330
|
-
}),
|
|
331
|
-
}),
|
|
332
|
-
|
|
2751
|
+
w.resize();
|
|
2752
|
+
}), h.observe(_.value);
|
|
2753
|
+
}), In(() => {
|
|
2754
|
+
w.dispose(), h.disconnect(), h = null;
|
|
333
2755
|
});
|
|
334
|
-
const
|
|
335
|
-
const
|
|
336
|
-
return
|
|
2756
|
+
const L = (u, l) => {
|
|
2757
|
+
const p = u[l], s = l === 0 ? u[l] : u[l - 1];
|
|
2758
|
+
return p[0] === p[1] ? p[0] >= s[1] ? {
|
|
337
2759
|
color: "transparent",
|
|
338
2760
|
borderColor: "#FF0000"
|
|
339
2761
|
} : {
|
|
340
2762
|
color: "#00FFFF"
|
|
341
|
-
} :
|
|
2763
|
+
} : p[1] > p[0] ? {
|
|
342
2764
|
color: "transparent",
|
|
343
2765
|
borderColor: "#FF0000"
|
|
344
2766
|
} : {
|
|
345
2767
|
color: "#00FFFF"
|
|
346
2768
|
};
|
|
347
2769
|
};
|
|
348
|
-
return
|
|
349
|
-
connect: (
|
|
350
|
-
|
|
2770
|
+
return N({
|
|
2771
|
+
connect: (u) => {
|
|
2772
|
+
Ue.connect([u, w]);
|
|
351
2773
|
},
|
|
352
2774
|
// 联动
|
|
353
|
-
draw: (
|
|
354
|
-
|
|
355
|
-
var
|
|
356
|
-
const { startValue:
|
|
357
|
-
if (
|
|
358
|
-
let
|
|
359
|
-
|
|
2775
|
+
draw: (u) => {
|
|
2776
|
+
ii(() => {
|
|
2777
|
+
var U;
|
|
2778
|
+
const { startValue: l, endValue: p, maxValueSpan: s } = u, { xAxisData: I, subIndicatorData: H, candlestickData: V, originData: O } = f.drawData, x = f.subIndicatorList.find((C) => C.value === A.value), Y = [];
|
|
2779
|
+
if (x.series === "bar") {
|
|
2780
|
+
let C = [];
|
|
2781
|
+
x.source === "origin" ? C = O.map((M) => M[x.dataIndex]) : C = ((U = H == null ? void 0 : H.find((M) => M.key === x.dataIndex)) == null ? void 0 : U.data) || [], Y.push({
|
|
360
2782
|
name: "subMain",
|
|
361
2783
|
xAxisIndex: 0,
|
|
362
2784
|
yAxisIndex: 1,
|
|
363
2785
|
type: "bar",
|
|
364
2786
|
silent: !0,
|
|
365
2787
|
symbol: "none",
|
|
366
|
-
data:
|
|
367
|
-
value:
|
|
368
|
-
itemStyle:
|
|
369
|
-
} :
|
|
370
|
-
value:
|
|
2788
|
+
data: C.map((M, B) => x.color === "kline" ? {
|
|
2789
|
+
value: M,
|
|
2790
|
+
itemStyle: L(V, B)
|
|
2791
|
+
} : x.color === "value" ? {
|
|
2792
|
+
value: M,
|
|
371
2793
|
itemStyle: {
|
|
372
|
-
color:
|
|
2794
|
+
color: M >= 0 ? "#FF0000" : "#00FFFF"
|
|
373
2795
|
}
|
|
374
2796
|
} : {
|
|
375
|
-
value:
|
|
2797
|
+
value: M,
|
|
376
2798
|
itemStyle: {
|
|
377
|
-
color:
|
|
2799
|
+
color: x.color
|
|
378
2800
|
}
|
|
379
2801
|
})
|
|
380
2802
|
});
|
|
381
2803
|
}
|
|
382
|
-
|
|
383
|
-
if (
|
|
384
|
-
let
|
|
385
|
-
|
|
2804
|
+
H.forEach((C) => {
|
|
2805
|
+
if (C.series === "line") {
|
|
2806
|
+
let M = [];
|
|
2807
|
+
C.source === "origin" ? M = O.map((B) => B[C.dataIndex]) : C.source === "calculation" && (M = C.data), Y.push({
|
|
386
2808
|
xAxisIndex: 0,
|
|
387
|
-
yAxisIndex:
|
|
388
|
-
name:
|
|
2809
|
+
yAxisIndex: C.yAxis === "right" ? 2 : 1,
|
|
2810
|
+
name: C.key,
|
|
389
2811
|
type: "line",
|
|
390
2812
|
silent: !0,
|
|
391
2813
|
symbol: "none",
|
|
392
|
-
data:
|
|
2814
|
+
data: M,
|
|
393
2815
|
lineStyle: {
|
|
394
2816
|
width: 1
|
|
395
2817
|
},
|
|
396
2818
|
itemStyle: {
|
|
397
|
-
color:
|
|
2819
|
+
color: C.color
|
|
398
2820
|
}
|
|
399
2821
|
});
|
|
400
2822
|
}
|
|
401
|
-
}),
|
|
2823
|
+
}), w.setOption(
|
|
402
2824
|
{
|
|
403
2825
|
animation: !1,
|
|
404
2826
|
grid: {
|
|
405
|
-
left: `${
|
|
2827
|
+
left: `${f.config.gridLeft}px`,
|
|
406
2828
|
top: "10px",
|
|
407
|
-
right: `${
|
|
2829
|
+
right: `${f.config.gridRight}px`,
|
|
408
2830
|
bottom: "20px"
|
|
409
2831
|
},
|
|
410
2832
|
dataZoom: [
|
|
411
2833
|
{
|
|
412
2834
|
type: "inside",
|
|
413
|
-
startValue:
|
|
414
|
-
endValue:
|
|
415
|
-
maxValueSpan:
|
|
2835
|
+
startValue: l,
|
|
2836
|
+
endValue: p,
|
|
2837
|
+
maxValueSpan: s
|
|
416
2838
|
}
|
|
417
2839
|
],
|
|
418
2840
|
tooltip: {
|
|
@@ -423,12 +2845,12 @@ const ce = /* @__PURE__ */ q(se, [["__scopeId", "data-v-234f3f41"]]), ue = { cla
|
|
|
423
2845
|
type: "cross",
|
|
424
2846
|
label: {
|
|
425
2847
|
rich: {},
|
|
426
|
-
formatter: (
|
|
427
|
-
const { axisDimension:
|
|
428
|
-
if (
|
|
429
|
-
return
|
|
430
|
-
if (
|
|
431
|
-
return String(
|
|
2848
|
+
formatter: (C) => {
|
|
2849
|
+
const { axisDimension: M, value: B } = C;
|
|
2850
|
+
if (M === "x")
|
|
2851
|
+
return B;
|
|
2852
|
+
if (C.axisIndex === 1)
|
|
2853
|
+
return String(b(B));
|
|
432
2854
|
}
|
|
433
2855
|
}
|
|
434
2856
|
},
|
|
@@ -436,7 +2858,7 @@ const ce = /* @__PURE__ */ q(se, [["__scopeId", "data-v-234f3f41"]]), ue = { cla
|
|
|
436
2858
|
},
|
|
437
2859
|
xAxis: {
|
|
438
2860
|
type: "category",
|
|
439
|
-
data:
|
|
2861
|
+
data: I,
|
|
440
2862
|
axisLine: {
|
|
441
2863
|
show: !0
|
|
442
2864
|
},
|
|
@@ -445,7 +2867,7 @@ const ce = /* @__PURE__ */ q(se, [["__scopeId", "data-v-234f3f41"]]), ue = { cla
|
|
|
445
2867
|
},
|
|
446
2868
|
axisLabel: {
|
|
447
2869
|
show: !0,
|
|
448
|
-
formatter: (
|
|
2870
|
+
formatter: (C) => C
|
|
449
2871
|
}
|
|
450
2872
|
},
|
|
451
2873
|
yAxis: [
|
|
@@ -454,8 +2876,8 @@ const ce = /* @__PURE__ */ q(se, [["__scopeId", "data-v-234f3f41"]]), ue = { cla
|
|
|
454
2876
|
},
|
|
455
2877
|
{
|
|
456
2878
|
position: "left",
|
|
457
|
-
min:
|
|
458
|
-
max:
|
|
2879
|
+
min: x.leftYAxisRange === "cover" ? (C) => C.min : null,
|
|
2880
|
+
max: x.leftYAxisRange === "cover" ? (C) => C.max : null,
|
|
459
2881
|
splitNumber: 1,
|
|
460
2882
|
axisLine: {
|
|
461
2883
|
show: !0
|
|
@@ -470,8 +2892,8 @@ const ce = /* @__PURE__ */ q(se, [["__scopeId", "data-v-234f3f41"]]), ue = { cla
|
|
|
470
2892
|
},
|
|
471
2893
|
{
|
|
472
2894
|
position: "right",
|
|
473
|
-
min:
|
|
474
|
-
max:
|
|
2895
|
+
min: x.rightYAxisRange === "cover" ? (C) => C.min : null,
|
|
2896
|
+
max: x.rightYAxisRange === "cover" ? (C) => C.max : null,
|
|
475
2897
|
splitNumber: 1,
|
|
476
2898
|
axisLine: {
|
|
477
2899
|
show: !1
|
|
@@ -484,97 +2906,97 @@ const ce = /* @__PURE__ */ q(se, [["__scopeId", "data-v-234f3f41"]]), ue = { cla
|
|
|
484
2906
|
}
|
|
485
2907
|
}
|
|
486
2908
|
],
|
|
487
|
-
series:
|
|
2909
|
+
series: Y
|
|
488
2910
|
},
|
|
489
2911
|
!0
|
|
490
2912
|
);
|
|
491
2913
|
});
|
|
492
2914
|
}
|
|
493
2915
|
// 重置
|
|
494
|
-
}), (
|
|
495
|
-
const
|
|
496
|
-
return
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
modelValue:
|
|
501
|
-
"onUpdate:modelValue":
|
|
2916
|
+
}), (u, l) => {
|
|
2917
|
+
const p = si, s = mi;
|
|
2918
|
+
return Q(), oe("div", Im, [
|
|
2919
|
+
mn("div", Tm, [
|
|
2920
|
+
E.value.length ? (Q(), oe("div", ym, [
|
|
2921
|
+
ge(s, {
|
|
2922
|
+
modelValue: A.value,
|
|
2923
|
+
"onUpdate:modelValue": l[0] || (l[0] = (I) => A.value = I),
|
|
502
2924
|
size: "small",
|
|
503
2925
|
"popper-class": "element-dark",
|
|
504
2926
|
class: "element-dark subIndicator"
|
|
505
2927
|
}, {
|
|
506
|
-
default:
|
|
507
|
-
(
|
|
508
|
-
key:
|
|
509
|
-
label:
|
|
510
|
-
value:
|
|
2928
|
+
default: ri(() => [
|
|
2929
|
+
(Q(!0), oe(_n, null, An(n.subIndicatorList, (I) => (Q(), ui(p, {
|
|
2930
|
+
key: I.value,
|
|
2931
|
+
label: I.label,
|
|
2932
|
+
value: I.value
|
|
511
2933
|
}, null, 8, ["label", "value"]))), 128))
|
|
512
2934
|
]),
|
|
513
2935
|
_: 1
|
|
514
2936
|
}, 8, ["modelValue"])
|
|
515
|
-
])) :
|
|
516
|
-
|
|
2937
|
+
])) : li("", !0),
|
|
2938
|
+
ge(Ke, { data: E.value }, null, 8, ["data"])
|
|
517
2939
|
]),
|
|
518
|
-
|
|
2940
|
+
mn("div", {
|
|
519
2941
|
class: "klineSub-chart",
|
|
520
2942
|
ref_key: "subChartRef",
|
|
521
|
-
ref:
|
|
2943
|
+
ref: _
|
|
522
2944
|
}, null, 512)
|
|
523
2945
|
]);
|
|
524
2946
|
};
|
|
525
2947
|
}
|
|
526
2948
|
});
|
|
527
|
-
const
|
|
2949
|
+
const Cm = /* @__PURE__ */ Ne(fm, [["__scopeId", "data-v-0a2f256e"]]), gm = /* @__PURE__ */ Ae({
|
|
528
2950
|
__name: "index",
|
|
529
2951
|
props: {
|
|
530
2952
|
data: { type: Array, default: () => [] }
|
|
531
2953
|
// 时间数据
|
|
532
2954
|
},
|
|
533
2955
|
emits: ["change"],
|
|
534
|
-
setup(
|
|
535
|
-
let
|
|
536
|
-
const
|
|
537
|
-
|
|
538
|
-
() =>
|
|
2956
|
+
setup(n, { expose: N, emit: e }) {
|
|
2957
|
+
let b, w, h = null;
|
|
2958
|
+
const y = e, f = n, _ = Dn();
|
|
2959
|
+
pi(
|
|
2960
|
+
() => f.data,
|
|
539
2961
|
() => {
|
|
540
|
-
|
|
2962
|
+
L();
|
|
541
2963
|
},
|
|
542
2964
|
{ deep: !0 }
|
|
543
|
-
),
|
|
544
|
-
|
|
545
|
-
let
|
|
546
|
-
|
|
547
|
-
if (
|
|
548
|
-
|
|
2965
|
+
), dn(() => {
|
|
2966
|
+
b = Ue.init(_.value), A(), L();
|
|
2967
|
+
let u = !0;
|
|
2968
|
+
w = new ResizeObserver(() => {
|
|
2969
|
+
if (u) {
|
|
2970
|
+
u = null;
|
|
549
2971
|
return;
|
|
550
2972
|
}
|
|
551
|
-
|
|
552
|
-
}),
|
|
553
|
-
}),
|
|
554
|
-
|
|
2973
|
+
b.resize();
|
|
2974
|
+
}), w.observe(_.value);
|
|
2975
|
+
}), In(() => {
|
|
2976
|
+
b.off("datazoom"), b.dispose(), w.disconnect(), w = null;
|
|
555
2977
|
});
|
|
556
|
-
const
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
const { data:
|
|
560
|
-
|
|
2978
|
+
const A = () => {
|
|
2979
|
+
b.on("datazoom", (u) => {
|
|
2980
|
+
u.dataZoomId && (clearTimeout(h), h = setTimeout(() => {
|
|
2981
|
+
const { data: l } = f, { start: p, end: s } = u, I = Math.floor(p * l.length / 100), H = s === 100 ? l.length - 1 : Math.floor(s * l.length / 100);
|
|
2982
|
+
E(I, H), clearTimeout(h);
|
|
561
2983
|
}, 100));
|
|
562
2984
|
});
|
|
563
|
-
},
|
|
564
|
-
const
|
|
565
|
-
if (
|
|
2985
|
+
}, E = (u, l) => {
|
|
2986
|
+
const p = f.data;
|
|
2987
|
+
if (p.length === 0)
|
|
566
2988
|
return;
|
|
567
|
-
const
|
|
568
|
-
|
|
569
|
-
startTime: `${
|
|
570
|
-
endTime: `${
|
|
2989
|
+
const s = p[u][0].split(" ")[0], I = p[l][0].split(" ")[0];
|
|
2990
|
+
y("change", {
|
|
2991
|
+
startTime: `${s} 00:00:00`,
|
|
2992
|
+
endTime: `${I} 24:00:00`
|
|
571
2993
|
});
|
|
572
|
-
},
|
|
573
|
-
const { data:
|
|
574
|
-
if (
|
|
2994
|
+
}, L = () => {
|
|
2995
|
+
const { data: u } = f;
|
|
2996
|
+
if (u.length === 0)
|
|
575
2997
|
return;
|
|
576
|
-
const
|
|
577
|
-
|
|
2998
|
+
const l = u.map((s) => s[0].split(" ")[0]), p = u.map((s) => s[1]);
|
|
2999
|
+
b.setOption({
|
|
578
3000
|
grid: {
|
|
579
3001
|
height: 0,
|
|
580
3002
|
left: "80px",
|
|
@@ -582,7 +3004,7 @@ const he = /* @__PURE__ */ q(fe, [["__scopeId", "data-v-0a2f256e"]]), me = /* @_
|
|
|
582
3004
|
},
|
|
583
3005
|
xAxis: {
|
|
584
3006
|
type: "category",
|
|
585
|
-
data:
|
|
3007
|
+
data: l,
|
|
586
3008
|
show: !1
|
|
587
3009
|
},
|
|
588
3010
|
yAxis: {
|
|
@@ -590,53 +3012,53 @@ const he = /* @__PURE__ */ q(fe, [["__scopeId", "data-v-0a2f256e"]]), me = /* @_
|
|
|
590
3012
|
},
|
|
591
3013
|
series: [
|
|
592
3014
|
{
|
|
593
|
-
data:
|
|
3015
|
+
data: p,
|
|
594
3016
|
type: "line"
|
|
595
3017
|
}
|
|
596
3018
|
]
|
|
597
3019
|
}, !0);
|
|
598
3020
|
};
|
|
599
|
-
return
|
|
600
|
-
resetSlide: (
|
|
601
|
-
let
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
}),
|
|
3021
|
+
return N({
|
|
3022
|
+
resetSlide: (u, l, p) => {
|
|
3023
|
+
let s = -1, I = -1;
|
|
3024
|
+
f.data.forEach((H, V) => {
|
|
3025
|
+
s === -1 && H[0] === u ? s = V : s === -1 && new Date(H[0]) > new Date(u) && (s = V - 1), (I === -1 && H[0] === l || I === -1 && new Date(H[0]) > new Date(l)) && (I = V);
|
|
3026
|
+
}), I = I === -1 ? f.data.length - 1 : I, b.setOption({
|
|
605
3027
|
dataZoom: [
|
|
606
3028
|
{
|
|
607
3029
|
show: !0,
|
|
608
|
-
startValue:
|
|
609
|
-
endValue:
|
|
610
|
-
maxValueSpan:
|
|
3030
|
+
startValue: s,
|
|
3031
|
+
endValue: I,
|
|
3032
|
+
maxValueSpan: p,
|
|
611
3033
|
textStyle: {
|
|
612
3034
|
color: "#ccc"
|
|
613
3035
|
}
|
|
614
3036
|
},
|
|
615
3037
|
{
|
|
616
3038
|
type: "inside",
|
|
617
|
-
startValue:
|
|
618
|
-
endValue:
|
|
619
|
-
maxValueSpan:
|
|
3039
|
+
startValue: s,
|
|
3040
|
+
endValue: I,
|
|
3041
|
+
maxValueSpan: p
|
|
620
3042
|
}
|
|
621
3043
|
]
|
|
622
3044
|
});
|
|
623
3045
|
},
|
|
624
3046
|
// 重置
|
|
625
3047
|
resize: () => {
|
|
626
|
-
|
|
3048
|
+
b == null || b.resize();
|
|
627
3049
|
}
|
|
628
|
-
}), (
|
|
3050
|
+
}), (u, l) => (Q(), oe("div", {
|
|
629
3051
|
class: "klineSlide",
|
|
630
3052
|
ref_key: "slideChartRef",
|
|
631
|
-
ref:
|
|
3053
|
+
ref: _
|
|
632
3054
|
}, null, 512));
|
|
633
3055
|
}
|
|
634
3056
|
});
|
|
635
|
-
const
|
|
636
|
-
install(
|
|
637
|
-
|
|
3057
|
+
const Nm = /* @__PURE__ */ Ne(gm, [["__scopeId", "data-v-5008746a"]]), wm = {
|
|
3058
|
+
install(n) {
|
|
3059
|
+
n.component("st-klineUtils", mm), n.component("st-klineSub", Cm), n.component("st-klineTips", dm), n.component("st-klineSlide", Nm);
|
|
638
3060
|
}
|
|
639
3061
|
};
|
|
640
3062
|
export {
|
|
641
|
-
|
|
3063
|
+
wm as default
|
|
642
3064
|
};
|