oakscriptjs 0.13.2 → 0.14.1

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.
Files changed (119) hide show
  1. package/AGENTS.md +6 -1
  2. package/README.md +1 -1
  3. package/bin/oakscript.mjs +5 -0
  4. package/dist/cjs/check/checks.d.ts +78 -0
  5. package/dist/cjs/check/checks.d.ts.map +1 -0
  6. package/dist/cjs/check/checks.js +109 -0
  7. package/dist/cjs/check/checks.js.map +7 -0
  8. package/dist/cjs/check/format.d.ts +26 -0
  9. package/dist/cjs/check/format.d.ts.map +1 -0
  10. package/dist/cjs/check/format.js +106 -0
  11. package/dist/cjs/check/format.js.map +7 -0
  12. package/dist/cjs/check/harness.d.ts +94 -0
  13. package/dist/cjs/check/harness.d.ts.map +1 -0
  14. package/dist/cjs/check/harness.js +302 -0
  15. package/dist/cjs/check/harness.js.map +7 -0
  16. package/dist/cjs/check/index.d.ts +253 -0
  17. package/dist/cjs/check/index.d.ts.map +1 -0
  18. package/dist/cjs/check/index.js +466 -0
  19. package/dist/cjs/check/index.js.map +7 -0
  20. package/dist/cjs/check/node.d.ts +53 -0
  21. package/dist/cjs/check/node.d.ts.map +1 -0
  22. package/dist/cjs/check/node.js +318 -0
  23. package/dist/cjs/check/node.js.map +7 -0
  24. package/dist/cjs/check/spec.d.ts +44 -0
  25. package/dist/cjs/check/spec.d.ts.map +1 -0
  26. package/dist/cjs/check/spec.js +199 -0
  27. package/dist/cjs/check/spec.js.map +7 -0
  28. package/dist/cjs/index.d.ts +1 -1
  29. package/dist/cjs/index.js +1 -1
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/cjs/runtime/series.d.ts +6 -0
  32. package/dist/cjs/runtime/series.d.ts.map +1 -1
  33. package/dist/cjs/runtime/series.js +15 -0
  34. package/dist/cjs/runtime/series.js.map +2 -2
  35. package/dist/cjs/script/constants.d.ts +200 -0
  36. package/dist/cjs/script/constants.d.ts.map +1 -0
  37. package/dist/cjs/script/constants.js +217 -0
  38. package/dist/cjs/script/constants.js.map +7 -0
  39. package/dist/cjs/script/drawing-args.d.ts +25 -0
  40. package/dist/cjs/script/drawing-args.d.ts.map +1 -0
  41. package/dist/cjs/script/drawing-args.js +203 -0
  42. package/dist/cjs/script/drawing-args.js.map +7 -0
  43. package/dist/cjs/script/globals.d.ts +127 -0
  44. package/dist/cjs/script/globals.d.ts.map +1 -0
  45. package/dist/cjs/script/globals.js +17 -0
  46. package/dist/cjs/script/globals.js.map +7 -0
  47. package/dist/cjs/script/index.d.ts +504 -166
  48. package/dist/cjs/script/index.d.ts.map +1 -1
  49. package/dist/cjs/script/index.js +236 -96
  50. package/dist/cjs/script/index.js.map +3 -3
  51. package/dist/esm/check/checks.d.ts +78 -0
  52. package/dist/esm/check/checks.d.ts.map +1 -0
  53. package/dist/esm/check/checks.js +95 -0
  54. package/dist/esm/check/checks.js.map +1 -0
  55. package/dist/esm/check/format.d.ts +26 -0
  56. package/dist/esm/check/format.d.ts.map +1 -0
  57. package/dist/esm/check/format.js +105 -0
  58. package/dist/esm/check/format.js.map +1 -0
  59. package/dist/esm/check/harness.d.ts +94 -0
  60. package/dist/esm/check/harness.d.ts.map +1 -0
  61. package/dist/esm/check/harness.js +317 -0
  62. package/dist/esm/check/harness.js.map +1 -0
  63. package/dist/esm/check/index.d.ts +253 -0
  64. package/dist/esm/check/index.d.ts.map +1 -0
  65. package/dist/esm/check/index.js +470 -0
  66. package/dist/esm/check/index.js.map +1 -0
  67. package/dist/esm/check/node.d.ts +53 -0
  68. package/dist/esm/check/node.d.ts.map +1 -0
  69. package/dist/esm/check/node.js +347 -0
  70. package/dist/esm/check/node.js.map +1 -0
  71. package/dist/esm/check/spec.d.ts +44 -0
  72. package/dist/esm/check/spec.d.ts.map +1 -0
  73. package/dist/esm/check/spec.js +198 -0
  74. package/dist/esm/check/spec.js.map +1 -0
  75. package/dist/esm/index.d.ts +1 -1
  76. package/dist/esm/index.js +1 -1
  77. package/dist/esm/runtime/series.d.ts +6 -0
  78. package/dist/esm/runtime/series.d.ts.map +1 -1
  79. package/dist/esm/runtime/series.js +14 -0
  80. package/dist/esm/runtime/series.js.map +1 -1
  81. package/dist/esm/script/constants.d.ts +200 -0
  82. package/dist/esm/script/constants.d.ts.map +1 -0
  83. package/dist/esm/script/constants.js +151 -0
  84. package/dist/esm/script/constants.js.map +1 -0
  85. package/dist/esm/script/drawing-args.d.ts +25 -0
  86. package/dist/esm/script/drawing-args.d.ts.map +1 -0
  87. package/dist/esm/script/drawing-args.js +171 -0
  88. package/dist/esm/script/drawing-args.js.map +1 -0
  89. package/dist/esm/script/globals.d.ts +127 -0
  90. package/dist/esm/script/globals.d.ts.map +1 -0
  91. package/dist/esm/script/globals.js +28 -0
  92. package/dist/esm/script/globals.js.map +1 -0
  93. package/dist/esm/script/index.d.ts +504 -166
  94. package/dist/esm/script/index.d.ts.map +1 -1
  95. package/dist/esm/script/index.js +256 -83
  96. package/dist/esm/script/index.js.map +1 -1
  97. package/package.json +31 -1
  98. package/skills/oakscript/SKILL.md +62 -26
  99. package/skills/oakscript/examples/ma-cross.js +2 -2
  100. package/skills/oakscript/examples/mtf-trend-filter.js +3 -3
  101. package/skills/oakscript/reference/check.md +150 -0
  102. package/skills/oakscript/reference/errors.md +31 -7
  103. package/skills/oakscript/reference/pine-differences.md +17 -16
  104. package/skills/oakscript/reference/plotting.md +25 -19
  105. package/skills/oakscript/reference/script-structure.md +34 -17
  106. package/skills/oakscript/reference/timeframes-symbols.md +5 -1
  107. package/skills/oakscript/spec.schema.json +199 -0
  108. package/src/check/checks.ts +175 -0
  109. package/src/check/format.ts +117 -0
  110. package/src/check/harness.ts +372 -0
  111. package/src/check/index.ts +708 -0
  112. package/src/check/node.ts +368 -0
  113. package/src/check/spec.ts +200 -0
  114. package/src/index.ts +1 -1
  115. package/src/runtime/series.ts +19 -0
  116. package/src/script/constants.ts +169 -0
  117. package/src/script/drawing-args.ts +179 -0
  118. package/src/script/globals.ts +129 -0
  119. package/src/script/index.ts +462 -81
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/script/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/script/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,14 @@
1
1
  {
2
2
  "name": "oakscriptjs",
3
- "version": "0.13.2",
3
+ "version": "0.14.1",
4
4
  "type": "module",
5
5
  "description": "PineScript v6 compatible technical analysis library for JavaScript/TypeScript",
6
6
  "main": "./dist/cjs/index.js",
7
7
  "module": "./dist/esm/index.js",
8
8
  "types": "./dist/cjs/index.d.ts",
9
+ "bin": {
10
+ "oakscript": "bin/oakscript.mjs"
11
+ },
9
12
  "exports": {
10
13
  ".": {
11
14
  "import": {
@@ -37,10 +40,31 @@
37
40
  "default": "./dist/cjs/script/index.js"
38
41
  }
39
42
  },
43
+ "./script/globals": {
44
+ "import": {
45
+ "types": "./dist/esm/script/globals.d.ts",
46
+ "default": "./dist/esm/script/globals.js"
47
+ },
48
+ "require": {
49
+ "types": "./dist/cjs/script/globals.d.ts",
50
+ "default": "./dist/cjs/script/globals.js"
51
+ }
52
+ },
53
+ "./check": {
54
+ "import": {
55
+ "types": "./dist/esm/check/index.d.ts",
56
+ "default": "./dist/esm/check/index.js"
57
+ },
58
+ "require": {
59
+ "types": "./dist/cjs/check/index.d.ts",
60
+ "default": "./dist/cjs/check/index.js"
61
+ }
62
+ },
40
63
  "./package.json": "./package.json"
41
64
  },
42
65
  "files": [
43
66
  "dist",
67
+ "bin",
44
68
  "src",
45
69
  "skills",
46
70
  "README.md",
@@ -119,6 +143,12 @@
119
143
  ],
120
144
  "script": [
121
145
  "./dist/cjs/script/index.d.ts"
146
+ ],
147
+ "script/globals": [
148
+ "./dist/cjs/script/globals.d.ts"
149
+ ],
150
+ "check": [
151
+ "./dist/cjs/check/index.d.ts"
122
152
  ]
123
153
  }
124
154
  },
@@ -13,7 +13,7 @@ indicator("My SMA", { overlay: true }); // one declaration:
13
13
  const length = input.int(20, "Length", { minval: 1 }); // an input: declared AND read here
14
14
  const sma = ta.sma(close, length); // Series math, all bars at once
15
15
  plot(sma, "SMA", { color: color.blue, linewidth: 2 }); // an output
16
- plotshape(ta.crossover(close, sma), "Cross", { style: "triangleup", location: "belowbar" });
16
+ plotshape(ta.crossover(close, sma), "Cross", { style: shape.triangleup, location: location.belowbar });
17
17
  ```
18
18
 
19
19
  ## The script format
@@ -31,7 +31,11 @@ plotshape(ta.crossover(close, sma), "Cross", { style: "triangleup", location: "b
31
31
 
32
32
  ## Workflow
33
33
 
34
- 1. **Declare** with `indicator(title, { overlay })` (overlay `true`: on the price pane; `false`: own pane) or
34
+ 0. **Write the spec first** when you can run a command: the user's request as a small JSON file (title, pane,
35
+ inputs and defaults, outputs, what the signals look like, `"scenarios": true`) and, for the behaviour it cannot
36
+ count ("Buy only when the RSI is below 30"), a checks file; `oakscript check` checks both (step 6). An unknown spec
37
+ key is an error. See [check](reference/check.md#the-spec).
38
+ 1. **Declare** with `indicator(title, { overlay })` (overlay `true`: on the price pane; `false`, the default: own pane) or
35
39
  `strategy(title, { ...properties })`. Exactly one declaration, at the top.
36
40
  2. **Inputs**: `input.int / float / bool / string / color / source / timeframe / session / symbol / time`.
37
41
  They return plain values (a Series for `input.source`). The input id is the title in snake case
@@ -42,28 +46,36 @@ plotshape(ta.crossover(close, sma), "Cross", { style: "triangleup", location: "b
42
46
  `strategy.eachBar((c) => ...)` holds the orders.
43
47
  5. **Outputs**: `plot`, `hline`, `fill`, `plotshape`, `plotchar`, `plotarrow`, `bgcolor`, `barcolor`,
44
48
  `plotcandle`, drawings (`label.new`, `line.new`, `box.new`, `table.new`), `alertcondition`, `alert`.
45
- 6. **Run it and check the values**: compile errors, runtime errors, then the plot values on the last bars
49
+ 6. **Check it**: `npx oakscript check script.js --spec spec.json` type-checks the script, runs it on 1,500 bars
50
+ and reports errors with their line, the inputs and outputs, the values and signal counts, the failed spec items and
51
+ warnings (an empty plot, a signal on every bar or never, an input that changes nothing). Fix until the exit code is
52
+ 0, or 2 with warnings you have read. For a port, `--export chart-export.csv` compares the values bar by bar. See
53
+ [check](reference/check.md).
54
+ 7. **Without a command**, check by hand: compile errors, runtime errors, then the plot values on the last bars
46
55
  (an empty plot means NaN everywhere). See [errors](reference/errors.md).
47
- 7. Start from the closest [example](#examples) rather than from scratch.
56
+ 8. Start from the closest [example](#examples) rather than from scratch.
48
57
 
49
58
  ## Rules
50
59
 
51
- 1. **No operators on Series.** JavaScript has no operator overloading: `close - open` is `NaN`, and
52
- `if (ta.crossover(a, b))` is always true (an object). Write `close.sub(open)`, `a.gt(b)`, `cond.iff(x, y)`,
60
+ 1. **No operators on Series.** JavaScript has no operator overloading: `close - open`, `rsi > 50` and
61
+ `` `${rsi}` `` throw a TypeError, and `if (ta.crossover(a, b))` is always true (an object, no error). Write `close.sub(open)`, `a.gt(b)`, `cond.iff(x, y)`,
53
62
  `x.offset(1)` (Pine `x[1]`), `a.and(b)`, `a.not()`. Conditions are Series of 1 / 0.
54
63
  2. **Plain numbers inside the bar loops.** In `eachBar` / `strategy.eachBar`, `c.close`, `c.get(series)`,
55
64
  `c.get(series, 1)` are numbers: JS operators, `if`, `for` work. A condition reads `c.get(cond) === 1`.
56
- 3. **Compute `ta.*` outside the loops.** A `ta.*` call inside a bar callback returns a Series (not a number) and
57
- has no per-bar history: compute the Series before the loop and read it with `c.get()`.
58
- 4. **Pine constants are strings**: `shape.triangleup` is `"triangleup"`, `location.belowbar` `"belowbar"`,
59
- `size.small` `"small"`, `label.style_label_down` `"label_down"`, `xloc.bar_index` `"bar_index"`,
60
- `extend.right` `"right"`, `line.style_dashed` `"dashed"`. These namespaces do exist: `color.*`,
61
- `plot.style_*`, `plot.linestyle_*`, `hline.style_*`, `strategy.*`, `barmerge.*`, `position.*`, `text.*`,
62
- `alert.freq_*`, `session.*`, `barstate.*`.
63
- 5. **Arguments**: declarations, inputs, plots and orders take named options in an object after the leading
64
- arguments (`plot(series, title, { color, linewidth, style })`, `strategy.exit(id, { from_entry, stop })`).
65
- Drawing functions (`label.new`, `line.new`, `box.new`, `table.cell`...) are positional only, in the
66
- Pine order: pass `undefined` to skip one.
65
+ 3. **Compute `ta.*` outside the loops.** A `ta.*` call inside a bar callback throws: compute the Series before
66
+ the loop and read it with `c.get()`.
67
+ 4. **Pine constants exist** as in Pine: `shape.*`, `location.*`, `size.*`, `xloc.*`, `yloc.*`, `extend.*`,
68
+ `display.*`, `format.*`, `font.*`, `scale.*`, `order.*`, `currency.*`, `label.style_*`, `line.style_*`,
69
+ `dayofweek.*`, `color.*`, `plot.style_*`, `plot.linestyle_*`, `hline.style_*`, `strategy.*`, `barmerge.*`,
70
+ `position.*`, `text.*`, `alert.freq_*`, `session.*`, `barstate.*`. Their values are strings
71
+ (`shape.triangleup` is `"triangleup"`), which also work.
72
+ 5. **Arguments**: Pine's named arguments are an object after the leading arguments, with Pine's names:
73
+ `plot(series, title, { color, linewidth, style })`, `input.int(14, { title: "Length", minval: 1 })`,
74
+ `request.security(sym, "W", () => open, { lookahead: barmerge.lookahead_on })`, `strategy.exit(id, { from_entry, stop })`,
75
+ `label.new(c.i, c.high, "A", { style: label.style_label_down, textcolor: color.white })`. Drawing functions
76
+ also take all their arguments by name (`line.new({ x1, y1, x2, y2, extend: extend.right })`); an unknown name
77
+ throws with the closest names. In a bar loop a Series argument of a drawing is its value on the current bar
78
+ (`label.new(bar_index, high, "A")`).
67
79
  6. **na is NaN.** There is no `na` constant: use `NaN` (`undefined` for a colour). `na(x)` and `nz(x, y)` take
68
80
  numbers (use them in a bar loop); on a Series use `x.iff(x, 0)` for `nz(x)`, `fixnan(x)`, or a bar loop.
69
81
  Plots skip NaN bars. JS comparisons with NaN are false; for the Pine rules (1e-10 tolerance) use
@@ -86,7 +98,7 @@ plotshape(ta.crossover(close, sma), "Cross", { style: "triangleup", location: "b
86
98
  | `a + b`, `a > b`, `c ? x : y` (series) | `a.add(b)`, `a.gt(b)`, `c.iff(x, y)` |
87
99
  | `close[1]` | `close.offset(1)`; in a loop `c.get(close, 1)` |
88
100
  | `var x = 0` / `x := ...` | `let x = 0` before `eachBar`, assigned in the callback |
89
- | `bar_index`, `last_bar_index` | `c.i`, `c.n - 1` in a bar loop |
101
+ | `bar_index`, `last_bar_index` | the Series `bar_index`, `last_bar_index`; in a bar loop `c.i`, `c.n - 1` |
90
102
  | `plot(x, "T", color=c, linewidth=2)` | `plot(x, "T", { color: c, linewidth: 2 })` |
91
103
  | `[a, b, c] = ta.macd(...)` | `const [a, b, c] = ta.macd(...)` |
92
104
  | `if cond` + `strategy.entry(...)` | `strategy.eachBar((c) => { if (c.get(cond) === 1) strategy.entry(...) })` |
@@ -95,22 +107,25 @@ Full table, the deviations and the unsupported parts: [reference/pine-difference
95
107
 
96
108
  ## Common mistakes
97
109
 
98
- - `close - open`, `ma > 50`, `if (series)` at the top level: use Series methods (rule 1).
99
- - `ta.sma(...)` inside `eachBar`: compute it before the loop (rule 3).
100
- - `ta.vwma(close, 20)` throws: pass the volume, `ta.vwma(close, 20, volume)`. `ta.stoch(close, high, low, 14)`
101
- takes all four arguments, as in Pine.
102
- - A per-bar colour from a JS ternary on a Series (`fast > slow ? green : red`): use `color.when()`.
110
+ - `if (series)`, `series ? a : b` at the top level: always true, with no error; use Series methods (rule 1).
111
+ - `close - open`, `ma > 50`: a TypeError; use Series methods (rule 1).
112
+ - `ta.sma(...)` inside `eachBar`: an error; compute it before the loop (rule 3).
113
+ - `ta.stoch(close, high, low, 14)` takes all four arguments, as in Pine.
114
+ - A per-bar colour from a JS ternary on a Series (`cond ? green : red`): one colour; use `color.when()`.
103
115
  - `strategy.position_size` at the top level: read it inside `strategy.eachBar()`.
104
116
  - Two `indicator()` calls, or `indicator()` and `strategy()` in one script: one declaration only.
105
- - Pine named arguments in drawings (`label.new(x, y, text = "A", style = ...)`): positional, with strings.
117
+ - Pine named arguments with `=` (`label.new(x, y, text = "A", style = ...)`): an object, `{ style: ... }`.
118
+ - `strategy.opentrades.entry_price(0)`: `strategy.opentrades` is the count (a number); use
119
+ `strategy.opentrade(0)?.entry_price` (same for `strategy.closedtrades.*` with `strategy.closedtrade(i)`).
106
120
 
107
121
  ## Reading errors
108
122
 
109
123
  - **Syntax errors** come with the line and column of your source (the app editor maps them to your lines).
110
124
  - **Runtime errors** stop the run: the message names the call and the fix, e.g. `strategy.entry() must be
111
- called inside strategy.eachBar().` A host that runs a declaration pass first (zero bars) reports declaration
125
+ called inside strategy.eachBar().`, `ta.smaa does not exist. Did you mean ta.sma?`, `JavaScript operators
126
+ (+ - * / ...) do not work on a Series: use its methods...` A host that runs a declaration pass first (zero bars) reports declaration
112
127
  errors when the script is saved.
113
- - **No error, wrong output**: an empty plot (NaN everywhere: `ta.*` inside a loop, a NaN input to the math),
128
+ - **No error, wrong output**: an empty plot (NaN everywhere: a NaN input to the math, a division by zero),
114
129
  a branch taken on every bar (a Series used as a JS boolean). Check the plot values on the last bars.
115
130
 
116
131
  The messages and their fixes: [reference/errors.md](reference/errors.md).
@@ -141,6 +156,27 @@ Complete scripts, run by the package's CI on synthetic bars:
141
156
  - [reference/pine-differences.md](reference/pine-differences.md): Pine Script v6 to OakScript, what is not
142
157
  supported.
143
158
  - [reference/errors.md](reference/errors.md): compiler and runtime errors, silent mistakes.
159
+ - [reference/check.md](reference/check.md): `oakscript check`, its warnings, the spec and reference files.
160
+
161
+ ## Type-checking
162
+
163
+ `oakscript check` runs this type check itself. On its own: `oakscriptjs/script/globals` types the script globals; a
164
+ `tsconfig.json` next to the scripts, then `npx tsc -p .` (one error per mistake, with its line; no output means no
165
+ type error):
166
+
167
+ ```json
168
+ {
169
+ "compilerOptions": {
170
+ "allowJs": true, "checkJs": true, "noEmit": true, "strict": true, "noImplicitAny": false,
171
+ "target": "ES2022", "module": "ESNext", "moduleResolution": "bundler", "moduleDetection": "force",
172
+ "lib": ["ES2022"], "types": ["oakscriptjs/script/globals"]
173
+ },
174
+ "include": ["*.js"]
175
+ }
176
+ ```
177
+
178
+ It needs `oakscriptjs` and `typescript` installed in the project. The checker does not see a Series used as a
179
+ JavaScript boolean (`if (cond)`, `cond ? a : b` with a Series `cond`): check those by hand (rule 1).
144
180
 
145
181
  ## Running a script
146
182