oakscriptjs 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +13 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.mjs +13 -1
- package/dist/runtime/series.d.ts +1 -0
- package/dist/runtime/series.d.ts.map +1 -1
- package/dist/runtime/types.d.ts +19 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/script/index.cjs +3630 -0
- package/dist/script/index.d.ts +290 -0
- package/dist/script/index.d.ts.map +1 -0
- package/dist/script/index.mjs +3613 -0
- package/dist/types/metadata.d.ts +23 -0
- package/dist/types/metadata.d.ts.map +1 -1
- package/package.json +9 -2
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
import type { Bar } from '../types';
|
|
2
|
+
import type { BarColorData, IndicatorResult, MarkerData, MarkerLocation, MarkerSize, ShapeStyle, TimeValue } from '../types/metadata';
|
|
3
|
+
import type { BarColorConfig, FillConfig, HLineConfig, InputConfig, PlotConfig, ShapeConfig } from '../runtime/types';
|
|
4
|
+
import { BarData, Series } from '../runtime/series';
|
|
5
|
+
import * as taSeries from '../ta-series';
|
|
6
|
+
import * as colorCore from '../color';
|
|
7
|
+
import { isNA, nz } from '../utils';
|
|
8
|
+
export interface ScriptRunResult {
|
|
9
|
+
metadata: {
|
|
10
|
+
title: string;
|
|
11
|
+
shortTitle?: string;
|
|
12
|
+
overlay: boolean;
|
|
13
|
+
precision?: number;
|
|
14
|
+
format?: string;
|
|
15
|
+
};
|
|
16
|
+
inputConfig: InputConfig[];
|
|
17
|
+
plotConfig: PlotConfig[];
|
|
18
|
+
hlineConfig: HLineConfig[];
|
|
19
|
+
fillConfig: FillConfig[];
|
|
20
|
+
shapeConfig: ShapeConfig[];
|
|
21
|
+
barColorConfig: BarColorConfig[];
|
|
22
|
+
defaultInputs: Record<string, unknown>;
|
|
23
|
+
alertConfig: AlertConditionConfig[];
|
|
24
|
+
result: IndicatorResult & {
|
|
25
|
+
alerts?: AlertState[];
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
export interface AlertConditionConfig {
|
|
29
|
+
id: string;
|
|
30
|
+
title: string;
|
|
31
|
+
message?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface AlertState {
|
|
34
|
+
id: string;
|
|
35
|
+
title: string;
|
|
36
|
+
message?: string;
|
|
37
|
+
triggered: boolean;
|
|
38
|
+
}
|
|
39
|
+
export interface PlotHandle {
|
|
40
|
+
id: string;
|
|
41
|
+
kind: 'plot' | 'hline';
|
|
42
|
+
}
|
|
43
|
+
export declare function executeScript(body: () => void, barsInput: Bar[], inputs?: Record<string, unknown>): ScriptRunResult;
|
|
44
|
+
export interface IndicatorOptions {
|
|
45
|
+
shorttitle?: string;
|
|
46
|
+
overlay?: boolean;
|
|
47
|
+
precision?: number;
|
|
48
|
+
format?: string;
|
|
49
|
+
}
|
|
50
|
+
export declare function indicator(title: string, options?: IndicatorOptions): void;
|
|
51
|
+
export interface NumericInputOptions {
|
|
52
|
+
minval?: number;
|
|
53
|
+
maxval?: number;
|
|
54
|
+
step?: number;
|
|
55
|
+
}
|
|
56
|
+
export interface StringInputOptions {
|
|
57
|
+
options?: string[];
|
|
58
|
+
}
|
|
59
|
+
export declare const input: {
|
|
60
|
+
int(defval: number, title?: string, opts?: NumericInputOptions): number;
|
|
61
|
+
float(defval: number, title?: string, opts?: NumericInputOptions): number;
|
|
62
|
+
bool(defval: boolean, title?: string): boolean;
|
|
63
|
+
string(defval: string, title?: string, opts?: StringInputOptions): string;
|
|
64
|
+
color(defval: string, title?: string): string;
|
|
65
|
+
source(defval?: string, title?: string): Series;
|
|
66
|
+
};
|
|
67
|
+
export declare const open: Series;
|
|
68
|
+
export declare const high: Series;
|
|
69
|
+
export declare const low: Series;
|
|
70
|
+
export declare const close: Series;
|
|
71
|
+
export declare const volume: Series;
|
|
72
|
+
export declare const hl2: Series;
|
|
73
|
+
export declare const hlc3: Series;
|
|
74
|
+
export declare const ohlc4: Series;
|
|
75
|
+
export declare const hlcc4: Series;
|
|
76
|
+
export declare const ta: {
|
|
77
|
+
tr: (handleNa?: boolean) => Series;
|
|
78
|
+
atr: (length: number) => Series;
|
|
79
|
+
sar: (start?: number, inc?: number, max?: number) => Series;
|
|
80
|
+
wpr: (length?: number) => Series;
|
|
81
|
+
supertrend: (factor: number, atrLength: number) => [Series, Series];
|
|
82
|
+
dmi: (diLength: number, adxSmoothing: number) => [Series, Series, Series];
|
|
83
|
+
kc: (source: Series, length: number, mult: number, useTrueRange?: boolean) => [Series, Series, Series];
|
|
84
|
+
kcw: (source: Series, length?: number, mult?: number, useTrueRange?: boolean) => Series;
|
|
85
|
+
ichimoku: (conversionPeriods: number, basePeriods: number, laggingSpan2Periods: number, displacement: number) => [Series, Series, Series, Series, Series];
|
|
86
|
+
sma(source: Series, length: number): Series;
|
|
87
|
+
ema(source: Series, length: number): Series;
|
|
88
|
+
wma(source: Series, length: number): Series;
|
|
89
|
+
rma(source: Series, length: number): Series;
|
|
90
|
+
rsi(source: Series, length: number): Series;
|
|
91
|
+
macd(source: Series, fastLength: number, slowLength: number, signalLength: number): [Series, Series, Series];
|
|
92
|
+
bb(source: Series, length: number, mult: number): [Series, Series, Series];
|
|
93
|
+
stdev(source: Series, length: number): Series;
|
|
94
|
+
stoch(source: Series, high: Series, low: Series, length: number): Series;
|
|
95
|
+
crossover(source1: Series, source2: Series | number): Series;
|
|
96
|
+
crossunder(source1: Series, source2: Series | number): Series;
|
|
97
|
+
cross(source1: Series, source2: Series | number): Series;
|
|
98
|
+
change(source: Series, length?: number): Series;
|
|
99
|
+
mom(source: Series, length: number): Series;
|
|
100
|
+
roc(source: Series, length: number): Series;
|
|
101
|
+
highest(source: Series, length: number): Series;
|
|
102
|
+
lowest(source: Series, length: number): Series;
|
|
103
|
+
rising(source: Series, length: number): Series;
|
|
104
|
+
falling(source: Series, length: number): Series;
|
|
105
|
+
cum(source: Series): Series;
|
|
106
|
+
vwap(source: Series, volume: Series): Series;
|
|
107
|
+
vwma(source: Series, length: number, volume: Series): Series;
|
|
108
|
+
linreg(source: Series, length: number, offset?: number): Series;
|
|
109
|
+
alma(source: Series, length?: number, offset?: number, sigma?: number, floor?: boolean): Series;
|
|
110
|
+
zigzag(bars: Bar[], deviation?: number, depth?: number, backstep?: number): [Series, Series, Series];
|
|
111
|
+
cci(source: Series, length: number): Series;
|
|
112
|
+
dev(source: Series, length: number): Series;
|
|
113
|
+
variance(source: Series, length: number, biased?: boolean): Series;
|
|
114
|
+
median(source: Series, length: number): Series;
|
|
115
|
+
swma(source: Series): Series;
|
|
116
|
+
correlation(source1: Series, source2: Series, length: number): Series;
|
|
117
|
+
percentrank(source: Series, length: number): Series;
|
|
118
|
+
mfi(source: Series, length: number, volume: Series): Series;
|
|
119
|
+
hma(source: Series, length: number): Series;
|
|
120
|
+
pivothigh(source: Series, leftbars: number, rightbars: number): Series;
|
|
121
|
+
pivotlow(source: Series, leftbars: number, rightbars: number): Series;
|
|
122
|
+
barssince(condition: Series): Series;
|
|
123
|
+
valuewhen(condition: Series, source: Series, occurrence: number): Series;
|
|
124
|
+
tsi(source: Series, shortLength: number, longLength: number): Series;
|
|
125
|
+
cmo(source: Series, length: number): Series;
|
|
126
|
+
bbw(source: Series, length: number, mult: number): Series;
|
|
127
|
+
range(high: Series, low: Series): Series;
|
|
128
|
+
highestbars(source: Series, length: number): Series;
|
|
129
|
+
lowestbars(source: Series, length: number): Series;
|
|
130
|
+
max(source1: Series, source2: Series): Series;
|
|
131
|
+
min(source1: Series, source2: Series): Series;
|
|
132
|
+
cog(source: Series, length?: number): Series;
|
|
133
|
+
mode(source: Series, length: number): Series;
|
|
134
|
+
percentile_linear_interpolation(source: Series, length: number, percentage: number): Series;
|
|
135
|
+
percentile_nearest_rank(source: Series, length: number, percentage: number): Series;
|
|
136
|
+
rci(source: Series, length: number): Series;
|
|
137
|
+
ta: {
|
|
138
|
+
sma: typeof taSeries.sma;
|
|
139
|
+
ema: typeof taSeries.ema;
|
|
140
|
+
wma: typeof taSeries.wma;
|
|
141
|
+
vwma: typeof taSeries.vwma;
|
|
142
|
+
rma: typeof taSeries.rma;
|
|
143
|
+
rsi: typeof taSeries.rsi;
|
|
144
|
+
macd: typeof taSeries.macd;
|
|
145
|
+
bb: typeof taSeries.bb;
|
|
146
|
+
stdev: typeof taSeries.stdev;
|
|
147
|
+
atr: typeof taSeries.atr;
|
|
148
|
+
tr: typeof taSeries.tr;
|
|
149
|
+
stoch: typeof taSeries.stoch;
|
|
150
|
+
crossover: typeof taSeries.crossover;
|
|
151
|
+
crossunder: typeof taSeries.crossunder;
|
|
152
|
+
cross: typeof taSeries.cross;
|
|
153
|
+
change: typeof taSeries.change;
|
|
154
|
+
mom: typeof taSeries.mom;
|
|
155
|
+
roc: typeof taSeries.roc;
|
|
156
|
+
highest: typeof taSeries.highest;
|
|
157
|
+
lowest: typeof taSeries.lowest;
|
|
158
|
+
rising: typeof taSeries.rising;
|
|
159
|
+
falling: typeof taSeries.falling;
|
|
160
|
+
cum: typeof taSeries.cum;
|
|
161
|
+
supertrend: typeof taSeries.supertrend;
|
|
162
|
+
vwap: typeof taSeries.vwap;
|
|
163
|
+
ichimoku: typeof taSeries.ichimoku;
|
|
164
|
+
linreg: typeof taSeries.linreg;
|
|
165
|
+
alma: typeof taSeries.alma;
|
|
166
|
+
zigzag: typeof taSeries.zigzag;
|
|
167
|
+
cci: typeof taSeries.cci;
|
|
168
|
+
sar: typeof taSeries.sar;
|
|
169
|
+
dev: typeof taSeries.dev;
|
|
170
|
+
variance: typeof taSeries.variance;
|
|
171
|
+
median: typeof taSeries.median;
|
|
172
|
+
swma: typeof taSeries.swma;
|
|
173
|
+
correlation: typeof taSeries.correlation;
|
|
174
|
+
percentrank: typeof taSeries.percentrank;
|
|
175
|
+
mfi: typeof taSeries.mfi;
|
|
176
|
+
hma: typeof taSeries.hma;
|
|
177
|
+
pivothigh: typeof taSeries.pivothigh;
|
|
178
|
+
pivotlow: typeof taSeries.pivotlow;
|
|
179
|
+
barssince: typeof taSeries.barssince;
|
|
180
|
+
valuewhen: typeof taSeries.valuewhen;
|
|
181
|
+
dmi: typeof taSeries.dmi;
|
|
182
|
+
tsi: typeof taSeries.tsi;
|
|
183
|
+
cmo: typeof taSeries.cmo;
|
|
184
|
+
kc: typeof taSeries.kc;
|
|
185
|
+
bbw: typeof taSeries.bbw;
|
|
186
|
+
wpr: typeof taSeries.wpr;
|
|
187
|
+
kcw: typeof taSeries.kcw;
|
|
188
|
+
range: typeof taSeries.range;
|
|
189
|
+
highestbars: typeof taSeries.highestbars;
|
|
190
|
+
lowestbars: typeof taSeries.lowestbars;
|
|
191
|
+
max: typeof taSeries.max;
|
|
192
|
+
min: typeof taSeries.min;
|
|
193
|
+
cog: typeof taSeries.cog;
|
|
194
|
+
mode: typeof taSeries.mode;
|
|
195
|
+
percentile_linear_interpolation: typeof taSeries.percentile_linear_interpolation;
|
|
196
|
+
percentile_nearest_rank: typeof taSeries.percentile_nearest_rank;
|
|
197
|
+
rci: typeof taSeries.rci;
|
|
198
|
+
};
|
|
199
|
+
};
|
|
200
|
+
declare function colorWhen(cond: Series, colorTrue: string, colorFalse: string): string[];
|
|
201
|
+
declare function colorWhen(cond: Series, colorTrue: string, colorFalse?: string): Array<string | undefined>;
|
|
202
|
+
export declare const color: {
|
|
203
|
+
new: typeof colorCore.new_color;
|
|
204
|
+
when: typeof colorWhen;
|
|
205
|
+
rgb(red: import("..").simple_int, green: import("..").simple_int, blue: import("..").simple_int, transp?: import("..").simple_float): import("../types").color;
|
|
206
|
+
from_hex(hex: string, transp?: import("..").simple_float): import("../types").color;
|
|
207
|
+
new_color(baseColor: import("../types").color, transp: import("..").simple_float): import("../types").color;
|
|
208
|
+
r(clr: import("../types").color): import("..").int;
|
|
209
|
+
g(clr: import("../types").color): import("..").int;
|
|
210
|
+
b(clr: import("../types").color): import("..").int;
|
|
211
|
+
t(clr: import("../types").color): import("..").float;
|
|
212
|
+
from_gradient(value: import("..").float, bottom_value: import("..").float, top_value: import("..").float, bottom_color: import("../types").color, top_color: import("../types").color): import("../types").color;
|
|
213
|
+
aqua: "#00FFFF";
|
|
214
|
+
black: "#000000";
|
|
215
|
+
blue: "#0000FF";
|
|
216
|
+
fuchsia: "#FF00FF";
|
|
217
|
+
gray: "#808080";
|
|
218
|
+
green: "#00FF00";
|
|
219
|
+
lime: "#00FF00";
|
|
220
|
+
maroon: "#800000";
|
|
221
|
+
navy: "#000080";
|
|
222
|
+
olive: "#808000";
|
|
223
|
+
orange: "#FFA500";
|
|
224
|
+
purple: "#800080";
|
|
225
|
+
red: "#FF0000";
|
|
226
|
+
silver: "#C0C0C0";
|
|
227
|
+
teal: "#008080";
|
|
228
|
+
white: "#FFFFFF";
|
|
229
|
+
yellow: "#FFFF00";
|
|
230
|
+
};
|
|
231
|
+
export interface ScriptPlotOptions {
|
|
232
|
+
color?: string | string[];
|
|
233
|
+
linewidth?: number;
|
|
234
|
+
style?: PlotConfig['style'];
|
|
235
|
+
display?: PlotConfig['display'];
|
|
236
|
+
histbase?: number;
|
|
237
|
+
}
|
|
238
|
+
export declare function plot(series: Series, title?: string, options?: ScriptPlotOptions): PlotHandle;
|
|
239
|
+
export interface ScriptHLineOptions {
|
|
240
|
+
color?: string;
|
|
241
|
+
linestyle?: HLineConfig['linestyle'];
|
|
242
|
+
linewidth?: number;
|
|
243
|
+
}
|
|
244
|
+
export declare function hline(price: number, title?: string, options?: ScriptHLineOptions): PlotHandle;
|
|
245
|
+
export interface ScriptFillOptions {
|
|
246
|
+
color?: string | string[];
|
|
247
|
+
title?: string;
|
|
248
|
+
}
|
|
249
|
+
export declare function fill(a: PlotHandle, b: PlotHandle, options?: ScriptFillOptions): void;
|
|
250
|
+
export interface PlotShapeOptions {
|
|
251
|
+
style?: ShapeStyle;
|
|
252
|
+
location?: MarkerLocation;
|
|
253
|
+
color?: string;
|
|
254
|
+
text?: string;
|
|
255
|
+
textcolor?: string;
|
|
256
|
+
size?: MarkerSize;
|
|
257
|
+
offset?: number;
|
|
258
|
+
tooltip?: string;
|
|
259
|
+
}
|
|
260
|
+
export interface PlotCharOptions extends Omit<PlotShapeOptions, 'style'> {
|
|
261
|
+
char?: string;
|
|
262
|
+
}
|
|
263
|
+
export declare function plotshape(condition: Series, title?: string, options?: PlotShapeOptions): void;
|
|
264
|
+
export declare function plotchar(condition: Series, title?: string, options?: PlotCharOptions): void;
|
|
265
|
+
export declare function bgcolor(colors: string | Array<string | undefined>, options?: {
|
|
266
|
+
offset?: number;
|
|
267
|
+
title?: string;
|
|
268
|
+
}): void;
|
|
269
|
+
export declare function barcolor(colors: string | Array<string | undefined>, options?: {
|
|
270
|
+
title?: string;
|
|
271
|
+
}): void;
|
|
272
|
+
export interface BarContext {
|
|
273
|
+
readonly i: number;
|
|
274
|
+
readonly n: number;
|
|
275
|
+
readonly time: number;
|
|
276
|
+
readonly open: number;
|
|
277
|
+
readonly high: number;
|
|
278
|
+
readonly low: number;
|
|
279
|
+
readonly close: number;
|
|
280
|
+
readonly volume: number;
|
|
281
|
+
get(src: Series, offset?: number): number;
|
|
282
|
+
prev(offset?: number): number;
|
|
283
|
+
}
|
|
284
|
+
export declare function eachBar(fn: (c: BarContext) => number | boolean | void): Series;
|
|
285
|
+
export declare function seriesOf(values: number[]): Series;
|
|
286
|
+
export declare function alertcondition(condition: Series, title: string, message?: string): void;
|
|
287
|
+
export { Series, BarData, isNA as na, nz };
|
|
288
|
+
export * as math from '../math';
|
|
289
|
+
export type { Bar, IndicatorResult, TimeValue, InputConfig, PlotConfig, HLineConfig, FillConfig, ShapeConfig, BarColorConfig, MarkerData, BarColorData, MarkerLocation, MarkerSize, ShapeStyle, };
|
|
290
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/script/index.ts"],"names":[],"mappings":"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"}
|