@vuu-ui/vuu-data-test 2.1.17 → 2.1.19-beta.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 (218) hide show
  1. package/package.json +9 -11
  2. package/types/TickingArrayDataSource.d.ts +1 -1
  3. package/types/basket/BasketModule.d.ts +9 -9
  4. package/types/basket/reference-data/prices.d.ts +1 -1
  5. package/types/core/module/VuuModule.d.ts +1 -1
  6. package/types/simul/reference-data/instruments-extended.d.ts +1 -1
  7. package/types/simul/reference-data/instruments.d.ts +1 -1
  8. package/types/simul/reference-data/orders.d.ts +1 -1
  9. package/types/simul/reference-data/parent-child-orders.d.ts +2 -2
  10. package/types/simul/reference-data/prices.d.ts +1 -1
  11. package/cjs/ArrayProxy.js +0 -72
  12. package/cjs/ArrayProxy.js.map +0 -1
  13. package/cjs/RuntimeVisualLink.js +0 -73
  14. package/cjs/RuntimeVisualLink.js.map +0 -1
  15. package/cjs/SessionTable.js +0 -68
  16. package/cjs/SessionTable.js.map +0 -1
  17. package/cjs/Table.js +0 -128
  18. package/cjs/Table.js.map +0 -1
  19. package/cjs/TickingArrayDataSource.js +0 -316
  20. package/cjs/TickingArrayDataSource.js.map +0 -1
  21. package/cjs/UpdateGenerator.js +0 -94
  22. package/cjs/UpdateGenerator.js.map +0 -1
  23. package/cjs/basket/BasketModule.js +0 -282
  24. package/cjs/basket/BasketModule.js.map +0 -1
  25. package/cjs/basket/basket-schemas.js +0 -123
  26. package/cjs/basket/basket-schemas.js.map +0 -1
  27. package/cjs/basket/reference-data/constituents.js +0 -40
  28. package/cjs/basket/reference-data/constituents.js.map +0 -1
  29. package/cjs/basket/reference-data/ftse100.js +0 -105
  30. package/cjs/basket/reference-data/ftse100.js.map +0 -1
  31. package/cjs/basket/reference-data/hsi.js +0 -87
  32. package/cjs/basket/reference-data/hsi.js.map +0 -1
  33. package/cjs/basket/reference-data/nasdaq100.js +0 -108
  34. package/cjs/basket/reference-data/nasdaq100.js.map +0 -1
  35. package/cjs/basket/reference-data/sp500.js +0 -46
  36. package/cjs/basket/reference-data/sp500.js.map +0 -1
  37. package/cjs/core/module/ModuleContainer.js +0 -43
  38. package/cjs/core/module/ModuleContainer.js.map +0 -1
  39. package/cjs/core/module/VuuModule.js +0 -649
  40. package/cjs/core/module/VuuModule.js.map +0 -1
  41. package/cjs/core/table/TableContainer.js +0 -139
  42. package/cjs/core/table/TableContainer.js.map +0 -1
  43. package/cjs/data-utils.js +0 -47
  44. package/cjs/data-utils.js.map +0 -1
  45. package/cjs/index.js +0 -46
  46. package/cjs/index.js.map +0 -1
  47. package/cjs/local-datasource-provider/LocalDatasourceProvider.js +0 -70
  48. package/cjs/local-datasource-provider/LocalDatasourceProvider.js.map +0 -1
  49. package/cjs/makeSuggestions.js +0 -26
  50. package/cjs/makeSuggestions.js.map +0 -1
  51. package/cjs/schemas.js +0 -28
  52. package/cjs/schemas.js.map +0 -1
  53. package/cjs/session-table-utils.js +0 -12
  54. package/cjs/session-table-utils.js.map +0 -1
  55. package/cjs/simul/SimulModule.js +0 -187
  56. package/cjs/simul/SimulModule.js.map +0 -1
  57. package/cjs/simul/reference-data/accounts.js +0 -27
  58. package/cjs/simul/reference-data/accounts.js.map +0 -1
  59. package/cjs/simul/reference-data/algos.js +0 -6
  60. package/cjs/simul/reference-data/algos.js.map +0 -1
  61. package/cjs/simul/reference-data/currencies.js +0 -6
  62. package/cjs/simul/reference-data/currencies.js.map +0 -1
  63. package/cjs/simul/reference-data/instruments-extended.js +0 -19
  64. package/cjs/simul/reference-data/instruments-extended.js.map +0 -1
  65. package/cjs/simul/reference-data/instruments.js +0 -85
  66. package/cjs/simul/reference-data/instruments.js.map +0 -1
  67. package/cjs/simul/reference-data/isin-generator/convert-string-to-base-ten-number.js +0 -6
  68. package/cjs/simul/reference-data/isin-generator/convert-string-to-base-ten-number.js.map +0 -1
  69. package/cjs/simul/reference-data/isin-generator/fixtures/alphabet.js +0 -31
  70. package/cjs/simul/reference-data/isin-generator/fixtures/alphabet.js.map +0 -1
  71. package/cjs/simul/reference-data/isin-generator/fixtures/alphanumeric-values.js +0 -9
  72. package/cjs/simul/reference-data/isin-generator/fixtures/alphanumeric-values.js.map +0 -1
  73. package/cjs/simul/reference-data/isin-generator/fixtures/base-ten-numbers.js +0 -17
  74. package/cjs/simul/reference-data/isin-generator/fixtures/base-ten-numbers.js.map +0 -1
  75. package/cjs/simul/reference-data/isin-generator/generate-cusip-check-code.js +0 -24
  76. package/cjs/simul/reference-data/isin-generator/generate-cusip-check-code.js.map +0 -1
  77. package/cjs/simul/reference-data/isin-generator/generate-cusip-without-check-code.js +0 -13
  78. package/cjs/simul/reference-data/isin-generator/generate-cusip-without-check-code.js.map +0 -1
  79. package/cjs/simul/reference-data/isin-generator/generate-cusip.js +0 -13
  80. package/cjs/simul/reference-data/isin-generator/generate-cusip.js.map +0 -1
  81. package/cjs/simul/reference-data/isin-generator/generate-random-alphanumeric.js +0 -8
  82. package/cjs/simul/reference-data/isin-generator/generate-random-alphanumeric.js.map +0 -1
  83. package/cjs/simul/reference-data/isin-generator/generate-random-base-ten-number.js +0 -6
  84. package/cjs/simul/reference-data/isin-generator/generate-random-base-ten-number.js.map +0 -1
  85. package/cjs/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.js +0 -14
  86. package/cjs/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.js.map +0 -1
  87. package/cjs/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.js +0 -14
  88. package/cjs/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.js.map +0 -1
  89. package/cjs/simul/reference-data/isin-generator/index.js +0 -295
  90. package/cjs/simul/reference-data/isin-generator/index.js.map +0 -1
  91. package/cjs/simul/reference-data/isin-generator/is-odd.js +0 -6
  92. package/cjs/simul/reference-data/isin-generator/is-odd.js.map +0 -1
  93. package/cjs/simul/reference-data/locations.js +0 -17
  94. package/cjs/simul/reference-data/locations.js.map +0 -1
  95. package/cjs/simul/reference-data/lotsizes.js +0 -28
  96. package/cjs/simul/reference-data/lotsizes.js.map +0 -1
  97. package/cjs/simul/reference-data/orderStatus.js +0 -6
  98. package/cjs/simul/reference-data/orderStatus.js.map +0 -1
  99. package/cjs/simul/reference-data/orders.js +0 -55
  100. package/cjs/simul/reference-data/orders.js.map +0 -1
  101. package/cjs/simul/reference-data/parent-child-orders.js +0 -144
  102. package/cjs/simul/reference-data/parent-child-orders.js.map +0 -1
  103. package/cjs/simul/reference-data/prices.js +0 -89
  104. package/cjs/simul/reference-data/prices.js.map +0 -1
  105. package/cjs/simul/reference-data/sides.js +0 -6
  106. package/cjs/simul/reference-data/sides.js.map +0 -1
  107. package/cjs/simul/simul-schemas.js +0 -150
  108. package/cjs/simul/simul-schemas.js.map +0 -1
  109. package/cjs/test/TestModule.js +0 -86
  110. package/cjs/test/TestModule.js.map +0 -1
  111. package/cjs/test/test-schemas.js +0 -52
  112. package/cjs/test/test-schemas.js.map +0 -1
  113. package/cjs/vuu-row-generator.js +0 -74
  114. package/cjs/vuu-row-generator.js.map +0 -1
  115. package/esm/ArrayProxy.js +0 -70
  116. package/esm/ArrayProxy.js.map +0 -1
  117. package/esm/RuntimeVisualLink.js +0 -71
  118. package/esm/RuntimeVisualLink.js.map +0 -1
  119. package/esm/SessionTable.js +0 -65
  120. package/esm/SessionTable.js.map +0 -1
  121. package/esm/Table.js +0 -124
  122. package/esm/Table.js.map +0 -1
  123. package/esm/TickingArrayDataSource.js +0 -314
  124. package/esm/TickingArrayDataSource.js.map +0 -1
  125. package/esm/UpdateGenerator.js +0 -92
  126. package/esm/UpdateGenerator.js.map +0 -1
  127. package/esm/basket/BasketModule.js +0 -278
  128. package/esm/basket/BasketModule.js.map +0 -1
  129. package/esm/basket/basket-schemas.js +0 -120
  130. package/esm/basket/basket-schemas.js.map +0 -1
  131. package/esm/basket/reference-data/constituents.js +0 -38
  132. package/esm/basket/reference-data/constituents.js.map +0 -1
  133. package/esm/basket/reference-data/ftse100.js +0 -103
  134. package/esm/basket/reference-data/ftse100.js.map +0 -1
  135. package/esm/basket/reference-data/hsi.js +0 -85
  136. package/esm/basket/reference-data/hsi.js.map +0 -1
  137. package/esm/basket/reference-data/nasdaq100.js +0 -106
  138. package/esm/basket/reference-data/nasdaq100.js.map +0 -1
  139. package/esm/basket/reference-data/sp500.js +0 -44
  140. package/esm/basket/reference-data/sp500.js.map +0 -1
  141. package/esm/core/module/ModuleContainer.js +0 -41
  142. package/esm/core/module/ModuleContainer.js.map +0 -1
  143. package/esm/core/module/VuuModule.js +0 -647
  144. package/esm/core/module/VuuModule.js.map +0 -1
  145. package/esm/core/table/TableContainer.js +0 -137
  146. package/esm/core/table/TableContainer.js.map +0 -1
  147. package/esm/data-utils.js +0 -43
  148. package/esm/data-utils.js.map +0 -1
  149. package/esm/index.js +0 -16
  150. package/esm/index.js.map +0 -1
  151. package/esm/local-datasource-provider/LocalDatasourceProvider.js +0 -68
  152. package/esm/local-datasource-provider/LocalDatasourceProvider.js.map +0 -1
  153. package/esm/makeSuggestions.js +0 -24
  154. package/esm/makeSuggestions.js.map +0 -1
  155. package/esm/schemas.js +0 -24
  156. package/esm/schemas.js.map +0 -1
  157. package/esm/session-table-utils.js +0 -10
  158. package/esm/session-table-utils.js.map +0 -1
  159. package/esm/simul/SimulModule.js +0 -184
  160. package/esm/simul/SimulModule.js.map +0 -1
  161. package/esm/simul/reference-data/accounts.js +0 -25
  162. package/esm/simul/reference-data/accounts.js.map +0 -1
  163. package/esm/simul/reference-data/algos.js +0 -4
  164. package/esm/simul/reference-data/algos.js.map +0 -1
  165. package/esm/simul/reference-data/currencies.js +0 -4
  166. package/esm/simul/reference-data/currencies.js.map +0 -1
  167. package/esm/simul/reference-data/instruments-extended.js +0 -17
  168. package/esm/simul/reference-data/instruments-extended.js.map +0 -1
  169. package/esm/simul/reference-data/instruments.js +0 -80
  170. package/esm/simul/reference-data/instruments.js.map +0 -1
  171. package/esm/simul/reference-data/isin-generator/convert-string-to-base-ten-number.js +0 -4
  172. package/esm/simul/reference-data/isin-generator/convert-string-to-base-ten-number.js.map +0 -1
  173. package/esm/simul/reference-data/isin-generator/fixtures/alphabet.js +0 -29
  174. package/esm/simul/reference-data/isin-generator/fixtures/alphabet.js.map +0 -1
  175. package/esm/simul/reference-data/isin-generator/fixtures/alphanumeric-values.js +0 -7
  176. package/esm/simul/reference-data/isin-generator/fixtures/alphanumeric-values.js.map +0 -1
  177. package/esm/simul/reference-data/isin-generator/fixtures/base-ten-numbers.js +0 -15
  178. package/esm/simul/reference-data/isin-generator/fixtures/base-ten-numbers.js.map +0 -1
  179. package/esm/simul/reference-data/isin-generator/generate-cusip-check-code.js +0 -22
  180. package/esm/simul/reference-data/isin-generator/generate-cusip-check-code.js.map +0 -1
  181. package/esm/simul/reference-data/isin-generator/generate-cusip-without-check-code.js +0 -11
  182. package/esm/simul/reference-data/isin-generator/generate-cusip-without-check-code.js.map +0 -1
  183. package/esm/simul/reference-data/isin-generator/generate-cusip.js +0 -11
  184. package/esm/simul/reference-data/isin-generator/generate-cusip.js.map +0 -1
  185. package/esm/simul/reference-data/isin-generator/generate-random-alphanumeric.js +0 -6
  186. package/esm/simul/reference-data/isin-generator/generate-random-alphanumeric.js.map +0 -1
  187. package/esm/simul/reference-data/isin-generator/generate-random-base-ten-number.js +0 -4
  188. package/esm/simul/reference-data/isin-generator/generate-random-base-ten-number.js.map +0 -1
  189. package/esm/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.js +0 -12
  190. package/esm/simul/reference-data/isin-generator/generate-random-string-of-alphanumeric-chars.js.map +0 -1
  191. package/esm/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.js +0 -12
  192. package/esm/simul/reference-data/isin-generator/generate-random-string-of-base-ten-chars.js.map +0 -1
  193. package/esm/simul/reference-data/isin-generator/index.js +0 -293
  194. package/esm/simul/reference-data/isin-generator/index.js.map +0 -1
  195. package/esm/simul/reference-data/isin-generator/is-odd.js +0 -4
  196. package/esm/simul/reference-data/isin-generator/is-odd.js.map +0 -1
  197. package/esm/simul/reference-data/locations.js +0 -14
  198. package/esm/simul/reference-data/locations.js.map +0 -1
  199. package/esm/simul/reference-data/lotsizes.js +0 -26
  200. package/esm/simul/reference-data/lotsizes.js.map +0 -1
  201. package/esm/simul/reference-data/orderStatus.js +0 -4
  202. package/esm/simul/reference-data/orderStatus.js.map +0 -1
  203. package/esm/simul/reference-data/orders.js +0 -52
  204. package/esm/simul/reference-data/orders.js.map +0 -1
  205. package/esm/simul/reference-data/parent-child-orders.js +0 -139
  206. package/esm/simul/reference-data/parent-child-orders.js.map +0 -1
  207. package/esm/simul/reference-data/prices.js +0 -86
  208. package/esm/simul/reference-data/prices.js.map +0 -1
  209. package/esm/simul/reference-data/sides.js +0 -4
  210. package/esm/simul/reference-data/sides.js.map +0 -1
  211. package/esm/simul/simul-schemas.js +0 -147
  212. package/esm/simul/simul-schemas.js.map +0 -1
  213. package/esm/test/TestModule.js +0 -84
  214. package/esm/test/TestModule.js.map +0 -1
  215. package/esm/test/test-schemas.js +0 -50
  216. package/esm/test/test-schemas.js.map +0 -1
  217. package/esm/vuu-row-generator.js +0 -68
  218. package/esm/vuu-row-generator.js.map +0 -1
@@ -1,295 +0,0 @@
1
- 'use strict';
2
-
3
- var generateCusip = require('./generate-cusip.js');
4
-
5
- const countryCodes = [
6
- "AD",
7
- "AE",
8
- "AF",
9
- "AG",
10
- "AI",
11
- "AL",
12
- "AM",
13
- "AO",
14
- "AQ",
15
- "AR",
16
- "AS",
17
- "AT",
18
- "AU",
19
- "AW",
20
- "AX",
21
- "AZ",
22
- "BA",
23
- "BB",
24
- "BD",
25
- "BE",
26
- "BF",
27
- "BG",
28
- "BH",
29
- "BI",
30
- "BJ",
31
- "BL",
32
- "BM",
33
- "BN",
34
- "BO",
35
- "BQ",
36
- "BR",
37
- "BS",
38
- "BT",
39
- "BV",
40
- "BW",
41
- "BY",
42
- "BZ",
43
- "CA",
44
- "CC",
45
- "CD",
46
- "CF",
47
- "CG",
48
- "CH",
49
- "CI",
50
- "CK",
51
- "CL",
52
- "CM",
53
- "CN",
54
- "CO",
55
- "CR",
56
- "CU",
57
- "CV",
58
- "CW",
59
- "CX",
60
- "CY",
61
- "CZ",
62
- "DE",
63
- "DJ",
64
- "DK",
65
- "DM",
66
- "DO",
67
- "DZ",
68
- "EC",
69
- "EE",
70
- "EG",
71
- "EH",
72
- "ER",
73
- "ES",
74
- "ET",
75
- "FI",
76
- "FJ",
77
- "FK",
78
- "FM",
79
- "FO",
80
- "FR",
81
- "GA",
82
- "GB",
83
- "GD",
84
- "GE",
85
- "GF",
86
- "GG",
87
- "GH",
88
- "GI",
89
- "GL",
90
- "GM",
91
- "GN",
92
- "GP",
93
- "GQ",
94
- "GR",
95
- "GS",
96
- "GT",
97
- "GU",
98
- "GW",
99
- "GY",
100
- "HK",
101
- "HM",
102
- "HN",
103
- "HR",
104
- "HT",
105
- "HU",
106
- "ID",
107
- "IE",
108
- "IL",
109
- "IM",
110
- "IN",
111
- "IO",
112
- "IQ",
113
- "IR",
114
- "IS",
115
- "IT",
116
- "JE",
117
- "JM",
118
- "JO",
119
- "JP",
120
- "KE",
121
- "KG",
122
- "KH",
123
- "KI",
124
- "KM",
125
- "KN",
126
- "KP",
127
- "KR",
128
- "KW",
129
- "KY",
130
- "KZ",
131
- "LA",
132
- "LB",
133
- "LC",
134
- "LI",
135
- "LK",
136
- "LR",
137
- "LS",
138
- "LT",
139
- "LU",
140
- "LV",
141
- "LY",
142
- "MA",
143
- "MC",
144
- "MD",
145
- "ME",
146
- "MF",
147
- "MG",
148
- "MH",
149
- "MK",
150
- "ML",
151
- "MM",
152
- "MN",
153
- "MO",
154
- "MP",
155
- "MQ",
156
- "MR",
157
- "MS",
158
- "MT",
159
- "MU",
160
- "MV",
161
- "MW",
162
- "MX",
163
- "MY",
164
- "MZ",
165
- "NA",
166
- "NC",
167
- "NE",
168
- "NF",
169
- "NG",
170
- "NI",
171
- "NL",
172
- "NO",
173
- "NP",
174
- "NR",
175
- "NU",
176
- "NZ",
177
- "OM",
178
- "PA",
179
- "PE",
180
- "PF",
181
- "PG",
182
- "PH",
183
- "PK",
184
- "PL",
185
- "PM",
186
- "PN",
187
- "PR",
188
- "PS",
189
- "PT",
190
- "PW",
191
- "PY",
192
- "QA",
193
- "RE",
194
- "RO",
195
- "RS",
196
- "RU",
197
- "RW",
198
- "SA",
199
- "SB",
200
- "SC",
201
- "SD",
202
- "SE",
203
- "SG",
204
- "SH",
205
- "SI",
206
- "SJ",
207
- "SK",
208
- "SL",
209
- "SM",
210
- "SN",
211
- "SO",
212
- "SR",
213
- "SS",
214
- "ST",
215
- "SV",
216
- "SX",
217
- "SY",
218
- "SZ",
219
- "TC",
220
- "TD",
221
- "TF",
222
- "TG",
223
- "TH",
224
- "TJ",
225
- "TK",
226
- "TL",
227
- "TM",
228
- "TN",
229
- "TO",
230
- "TR",
231
- "TT",
232
- "TV",
233
- "TW",
234
- "TZ",
235
- "UA",
236
- "UG",
237
- "UM",
238
- "US",
239
- "UY",
240
- "UZ",
241
- "VA",
242
- "VC",
243
- "VE",
244
- "VG",
245
- "VI",
246
- "VN",
247
- "VU",
248
- "WF",
249
- "WS",
250
- "YE",
251
- "YT",
252
- "ZA",
253
- "ZM",
254
- "ZW"
255
- ];
256
- const cusip = generateCusip.generateCusip();
257
- const generateIsin = (cusip2) => {
258
- const code = countryCodes[Math.floor(Math.random() * countryCodes.length)];
259
- const isin = code + cusip2 + generateIsinCheckDigit(code + cusip2 + "0");
260
- return isin;
261
- };
262
- const generateIsinCheckDigit = (isin) => {
263
- if (isin.length != 12) return false;
264
- const v = [];
265
- for (let i = isin.length - 2; i >= 0; i--) {
266
- const c = isin.charAt(i);
267
- if (isNaN(parseInt(c))) {
268
- const letterCode = isin.charCodeAt(i) - 55;
269
- v.push(letterCode % 10);
270
- if (letterCode > 9) {
271
- v.push(Math.floor(letterCode / 10));
272
- }
273
- } else {
274
- v.push(Number(c));
275
- }
276
- }
277
- let sum = 0;
278
- const l = v.length;
279
- for (let i = 0; i < l; i++) {
280
- if (i % 2 == 0) {
281
- const d = v[i] * 2;
282
- sum += Math.floor(d / 10);
283
- sum += d % 10;
284
- } else {
285
- sum += v[i];
286
- }
287
- }
288
- return (10 - sum % 10) % 10;
289
- };
290
- const isinGenerator = () => {
291
- return generateIsin(cusip);
292
- };
293
-
294
- exports.isinGenerator = isinGenerator;
295
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../packages/vuu-data-test/src/simul/reference-data/isin-generator/index.ts"],"sourcesContent":["/**\n * all code in here taken from @thomaschaplin\n * https://github.com/thomaschaplin/isin-generator\n * https://github.com/thomaschaplin/cusip-generator\n */\nimport { generateCusip } from \"./generate-cusip\";\nconst countryCodes = [\n \"AD\",\n \"AE\",\n \"AF\",\n \"AG\",\n \"AI\",\n \"AL\",\n \"AM\",\n \"AO\",\n \"AQ\",\n \"AR\",\n \"AS\",\n \"AT\",\n \"AU\",\n \"AW\",\n \"AX\",\n \"AZ\",\n \"BA\",\n \"BB\",\n \"BD\",\n \"BE\",\n \"BF\",\n \"BG\",\n \"BH\",\n \"BI\",\n \"BJ\",\n \"BL\",\n \"BM\",\n \"BN\",\n \"BO\",\n \"BQ\",\n \"BR\",\n \"BS\",\n \"BT\",\n \"BV\",\n \"BW\",\n \"BY\",\n \"BZ\",\n \"CA\",\n \"CC\",\n \"CD\",\n \"CF\",\n \"CG\",\n \"CH\",\n \"CI\",\n \"CK\",\n \"CL\",\n \"CM\",\n \"CN\",\n \"CO\",\n \"CR\",\n \"CU\",\n \"CV\",\n \"CW\",\n \"CX\",\n \"CY\",\n \"CZ\",\n \"DE\",\n \"DJ\",\n \"DK\",\n \"DM\",\n \"DO\",\n \"DZ\",\n \"EC\",\n \"EE\",\n \"EG\",\n \"EH\",\n \"ER\",\n \"ES\",\n \"ET\",\n \"FI\",\n \"FJ\",\n \"FK\",\n \"FM\",\n \"FO\",\n \"FR\",\n \"GA\",\n \"GB\",\n \"GD\",\n \"GE\",\n \"GF\",\n \"GG\",\n \"GH\",\n \"GI\",\n \"GL\",\n \"GM\",\n \"GN\",\n \"GP\",\n \"GQ\",\n \"GR\",\n \"GS\",\n \"GT\",\n \"GU\",\n \"GW\",\n \"GY\",\n \"HK\",\n \"HM\",\n \"HN\",\n \"HR\",\n \"HT\",\n \"HU\",\n \"ID\",\n \"IE\",\n \"IL\",\n \"IM\",\n \"IN\",\n \"IO\",\n \"IQ\",\n \"IR\",\n \"IS\",\n \"IT\",\n \"JE\",\n \"JM\",\n \"JO\",\n \"JP\",\n \"KE\",\n \"KG\",\n \"KH\",\n \"KI\",\n \"KM\",\n \"KN\",\n \"KP\",\n \"KR\",\n \"KW\",\n \"KY\",\n \"KZ\",\n \"LA\",\n \"LB\",\n \"LC\",\n \"LI\",\n \"LK\",\n \"LR\",\n \"LS\",\n \"LT\",\n \"LU\",\n \"LV\",\n \"LY\",\n \"MA\",\n \"MC\",\n \"MD\",\n \"ME\",\n \"MF\",\n \"MG\",\n \"MH\",\n \"MK\",\n \"ML\",\n \"MM\",\n \"MN\",\n \"MO\",\n \"MP\",\n \"MQ\",\n \"MR\",\n \"MS\",\n \"MT\",\n \"MU\",\n \"MV\",\n \"MW\",\n \"MX\",\n \"MY\",\n \"MZ\",\n \"NA\",\n \"NC\",\n \"NE\",\n \"NF\",\n \"NG\",\n \"NI\",\n \"NL\",\n \"NO\",\n \"NP\",\n \"NR\",\n \"NU\",\n \"NZ\",\n \"OM\",\n \"PA\",\n \"PE\",\n \"PF\",\n \"PG\",\n \"PH\",\n \"PK\",\n \"PL\",\n \"PM\",\n \"PN\",\n \"PR\",\n \"PS\",\n \"PT\",\n \"PW\",\n \"PY\",\n \"QA\",\n \"RE\",\n \"RO\",\n \"RS\",\n \"RU\",\n \"RW\",\n \"SA\",\n \"SB\",\n \"SC\",\n \"SD\",\n \"SE\",\n \"SG\",\n \"SH\",\n \"SI\",\n \"SJ\",\n \"SK\",\n \"SL\",\n \"SM\",\n \"SN\",\n \"SO\",\n \"SR\",\n \"SS\",\n \"ST\",\n \"SV\",\n \"SX\",\n \"SY\",\n \"SZ\",\n \"TC\",\n \"TD\",\n \"TF\",\n \"TG\",\n \"TH\",\n \"TJ\",\n \"TK\",\n \"TL\",\n \"TM\",\n \"TN\",\n \"TO\",\n \"TR\",\n \"TT\",\n \"TV\",\n \"TW\",\n \"TZ\",\n \"UA\",\n \"UG\",\n \"UM\",\n \"US\",\n \"UY\",\n \"UZ\",\n \"VA\",\n \"VC\",\n \"VE\",\n \"VG\",\n \"VI\",\n \"VN\",\n \"VU\",\n \"WF\",\n \"WS\",\n \"YE\",\n \"YT\",\n \"ZA\",\n \"ZM\",\n \"ZW\",\n];\n\nconst cusip = generateCusip();\n\nconst generateIsin = (cusip: string) => {\n const code = countryCodes[Math.floor(Math.random() * countryCodes.length)];\n const isin = code + cusip + generateIsinCheckDigit(code + cusip + \"0\");\n return isin;\n};\n\nconst generateIsinCheckDigit = (isin: string) => {\n if (isin.length != 12) return false;\n const v = [];\n for (let i = isin.length - 2; i >= 0; i--) {\n const c = isin.charAt(i);\n if (isNaN(parseInt(c))) {\n const letterCode = isin.charCodeAt(i) - 55;\n v.push(letterCode % 10);\n if (letterCode > 9) {\n v.push(Math.floor(letterCode / 10));\n }\n } else {\n v.push(Number(c));\n }\n }\n let sum = 0;\n const l = v.length;\n for (let i = 0; i < l; i++) {\n if (i % 2 == 0) {\n const d = v[i] * 2;\n sum += Math.floor(d / 10);\n sum += d % 10;\n } else {\n sum += v[i];\n }\n }\n return (10 - (sum % 10)) % 10;\n};\n\nexport const isinGenerator = () => {\n return generateIsin(cusip);\n};\n"],"names":["generateCusip","cusip"],"mappings":";;;;AAMA,MAAM,YAAe,GAAA;AAAA,EACnB,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA,IAAA;AAAA,EACA;AACF,CAAA;AAEA,MAAM,QAAQA,2BAAc,EAAA;AAE5B,MAAM,YAAA,GAAe,CAACC,MAAkB,KAAA;AACtC,EAAM,MAAA,IAAA,GAAO,aAAa,IAAK,CAAA,KAAA,CAAM,KAAK,MAAO,EAAA,GAAI,YAAa,CAAA,MAAM,CAAC,CAAA;AACzE,EAAA,MAAM,OAAO,IAAOA,GAAAA,MAAAA,GAAQ,sBAAuB,CAAA,IAAA,GAAOA,SAAQ,GAAG,CAAA;AACrE,EAAO,OAAA,IAAA;AACT,CAAA;AAEA,MAAM,sBAAA,GAAyB,CAAC,IAAiB,KAAA;AAC/C,EAAI,IAAA,IAAA,CAAK,MAAU,IAAA,EAAA,EAAW,OAAA,KAAA;AAC9B,EAAA,MAAM,IAAI,EAAC;AACX,EAAA,KAAA,IAAS,IAAI,IAAK,CAAA,MAAA,GAAS,CAAG,EAAA,CAAA,IAAK,GAAG,CAAK,EAAA,EAAA;AACzC,IAAM,MAAA,CAAA,GAAI,IAAK,CAAA,MAAA,CAAO,CAAC,CAAA;AACvB,IAAA,IAAI,KAAM,CAAA,QAAA,CAAS,CAAC,CAAC,CAAG,EAAA;AACtB,MAAA,MAAM,UAAa,GAAA,IAAA,CAAK,UAAW,CAAA,CAAC,CAAI,GAAA,EAAA;AACxC,MAAE,CAAA,CAAA,IAAA,CAAK,aAAa,EAAE,CAAA;AACtB,MAAA,IAAI,aAAa,CAAG,EAAA;AAClB,QAAA,CAAA,CAAE,IAAK,CAAA,IAAA,CAAK,KAAM,CAAA,UAAA,GAAa,EAAE,CAAC,CAAA;AAAA;AACpC,KACK,MAAA;AACL,MAAE,CAAA,CAAA,IAAA,CAAK,MAAO,CAAA,CAAC,CAAC,CAAA;AAAA;AAClB;AAEF,EAAA,IAAI,GAAM,GAAA,CAAA;AACV,EAAA,MAAM,IAAI,CAAE,CAAA,MAAA;AACZ,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,CAAA,EAAG,CAAK,EAAA,EAAA;AAC1B,IAAI,IAAA,CAAA,GAAI,KAAK,CAAG,EAAA;AACd,MAAM,MAAA,CAAA,GAAI,CAAE,CAAA,CAAC,CAAI,GAAA,CAAA;AACjB,MAAO,GAAA,IAAA,IAAA,CAAK,KAAM,CAAA,CAAA,GAAI,EAAE,CAAA;AACxB,MAAA,GAAA,IAAO,CAAI,GAAA,EAAA;AAAA,KACN,MAAA;AACL,MAAA,GAAA,IAAO,EAAE,CAAC,CAAA;AAAA;AACZ;AAEF,EAAQ,OAAA,CAAA,EAAA,GAAM,MAAM,EAAO,IAAA,EAAA;AAC7B,CAAA;AAEO,MAAM,gBAAgB,MAAM;AACjC,EAAA,OAAO,aAAa,KAAK,CAAA;AAC3B;;;;"}
@@ -1,6 +0,0 @@
1
- 'use strict';
2
-
3
- const isOdd = (value) => value % 2 === 1;
4
-
5
- exports.isOdd = isOdd;
6
- //# sourceMappingURL=is-odd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"is-odd.js","sources":["../../../../../../packages/vuu-data-test/src/simul/reference-data/isin-generator/is-odd.ts"],"sourcesContent":["export const isOdd = (value: number): boolean => value % 2 === 1;\n"],"names":[],"mappings":";;AAAO,MAAM,KAAQ,GAAA,CAAC,KAA2B,KAAA,KAAA,GAAQ,CAAM,KAAA;;;;"}
@@ -1,17 +0,0 @@
1
- 'use strict';
2
-
3
- const locations = {
4
- L: ["London PLC", "XLON/LSE-SETS"],
5
- N: ["Corporation", "XNGS/NAS-GSM"],
6
- AS: ["B.V.", "XAMS/ENA-MAIN"],
7
- OQ: ["Co.", "XNYS/NYS-MAIN"],
8
- PA: ["Paris", "PAR/EUR_FR"],
9
- MI: ["Milan", "MIL/EUR_IT"],
10
- FR: ["Frankfurt", "FR/EUR_DE"],
11
- AT: ["Athens", "AT/EUR_GR"]
12
- };
13
- const suffixes = ["L", "N", "OQ", "AS", "PA", "MI", "FR", "AT"];
14
-
15
- exports.locations = locations;
16
- exports.suffixes = suffixes;
17
- //# sourceMappingURL=locations.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"locations.js","sources":["../../../../../packages/vuu-data-test/src/simul/reference-data/locations.ts"],"sourcesContent":["export const locations: { [key: string]: string[] } = {\n L: [\"London PLC\", \"XLON/LSE-SETS\"],\n N: [\"Corporation\", \"XNGS/NAS-GSM\"],\n AS: [\"B.V.\", \"XAMS/ENA-MAIN\"],\n OQ: [\"Co.\", \"XNYS/NYS-MAIN\"],\n PA: [\"Paris\", \"PAR/EUR_FR\"],\n MI: [\"Milan\", \"MIL/EUR_IT\"],\n FR: [\"Frankfurt\", \"FR/EUR_DE\"],\n AT: [\"Athens\", \"AT/EUR_GR\"],\n};\nexport const suffixes = [\"L\", \"N\", \"OQ\", \"AS\", \"PA\", \"MI\", \"FR\", \"AT\"];\n"],"names":[],"mappings":";;AAAO,MAAM,SAAyC,GAAA;AAAA,EACpD,CAAA,EAAG,CAAC,YAAA,EAAc,eAAe,CAAA;AAAA,EACjC,CAAA,EAAG,CAAC,aAAA,EAAe,cAAc,CAAA;AAAA,EACjC,EAAA,EAAI,CAAC,MAAA,EAAQ,eAAe,CAAA;AAAA,EAC5B,EAAA,EAAI,CAAC,KAAA,EAAO,eAAe,CAAA;AAAA,EAC3B,EAAA,EAAI,CAAC,OAAA,EAAS,YAAY,CAAA;AAAA,EAC1B,EAAA,EAAI,CAAC,OAAA,EAAS,YAAY,CAAA;AAAA,EAC1B,EAAA,EAAI,CAAC,WAAA,EAAa,WAAW,CAAA;AAAA,EAC7B,EAAA,EAAI,CAAC,QAAA,EAAU,WAAW;AAC5B;AACa,MAAA,QAAA,GAAW,CAAC,GAAK,EAAA,GAAA,EAAK,MAAM,IAAM,EAAA,IAAA,EAAM,IAAM,EAAA,IAAA,EAAM,IAAI;;;;;"}
@@ -1,28 +0,0 @@
1
- 'use strict';
2
-
3
- const lotsizes = [
4
- 1,
5
- 2,
6
- 5,
7
- 10,
8
- 50,
9
- 50,
10
- 70,
11
- 100,
12
- 100,
13
- 100,
14
- 120,
15
- 150,
16
- 150,
17
- 200,
18
- 500,
19
- 700,
20
- 1e3,
21
- 2e3,
22
- 2500,
23
- 5e3,
24
- 1e4
25
- ];
26
-
27
- exports.lotsizes = lotsizes;
28
- //# sourceMappingURL=lotsizes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lotsizes.js","sources":["../../../../../packages/vuu-data-test/src/simul/reference-data/lotsizes.ts"],"sourcesContent":["export const lotsizes = [\n 1, 2, 5, 10, 50, 50, 70, 100, 100, 100, 120, 150, 150, 200, 500, 700, 1000,\n 2000, 2500, 5000, 10000,\n];\n"],"names":[],"mappings":";;AAAO,MAAM,QAAW,GAAA;AAAA,EACtB,CAAA;AAAA,EAAG,CAAA;AAAA,EAAG,CAAA;AAAA,EAAG,EAAA;AAAA,EAAI,EAAA;AAAA,EAAI,EAAA;AAAA,EAAI,EAAA;AAAA,EAAI,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EAAK,GAAA;AAAA,EACtE,GAAA;AAAA,EAAM,IAAA;AAAA,EAAM,GAAA;AAAA,EAAM;AACpB;;;;"}
@@ -1,6 +0,0 @@
1
- 'use strict';
2
-
3
- const orderStatus = ["NEW", "CANCELLED", "FILLED"];
4
-
5
- exports.orderStatus = orderStatus;
6
- //# sourceMappingURL=orderStatus.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orderStatus.js","sources":["../../../../../packages/vuu-data-test/src/simul/reference-data/orderStatus.ts"],"sourcesContent":["export const orderStatus = [\"NEW\", \"CANCELLED\", \"FILLED\"];\n"],"names":[],"mappings":";;AAAO,MAAM,WAAc,GAAA,CAAC,KAAO,EAAA,WAAA,EAAa,QAAQ;;;;"}
@@ -1,55 +0,0 @@
1
- 'use strict';
2
-
3
- var currencies = require('./currencies.js');
4
- var instruments = require('./instruments.js');
5
- var dataUtils = require('../../data-utils.js');
6
- var Table = require('../../Table.js');
7
- var simulSchemas = require('../simul-schemas.js');
8
- var sides = require('./sides.js');
9
- var TableContainer = require('../../core/table/TableContainer.js');
10
-
11
- const traders = ["Trader A", "Trader B", "Trader C"];
12
- const orderStatus = [
13
- "Filled",
14
- "Cancelled",
15
- "New",
16
- "Partial Exec",
17
- "Booked",
18
- "All Done"
19
- ];
20
- const isComplete = (status) => ["Filled", "All Done", "Booked"].includes(status);
21
- const ordersData = [];
22
- const now = +/* @__PURE__ */ new Date();
23
- for (let i = 0; i < 100; i++) {
24
- const status = orderStatus[dataUtils.random(0, orderStatus.length - 1)];
25
- const ccy = currencies.currencies[dataUtils.random(0, currencies.currencies.length - 1)];
26
- const created = now;
27
- const lastUpdate = now;
28
- const orderId = `ORD${("0000" + i).slice(-4)}`;
29
- const quantity = dataUtils.random(1e3, 1e4);
30
- const filledQuantity = isComplete(status) ? quantity : status === "New" ? 0 : dataUtils.random(0, quantity);
31
- const ric = instruments.getRic("AAP.L");
32
- const side = sides.sides[dataUtils.random(0, sides.sides.length - 1)];
33
- const trader = traders[dataUtils.random(0, traders.length - 1)];
34
- ordersData.push([
35
- status,
36
- ccy,
37
- created,
38
- filledQuantity,
39
- lastUpdate,
40
- orderId,
41
- quantity,
42
- ric,
43
- side,
44
- trader
45
- ]);
46
- }
47
- const ordersTable = TableContainer.createTable(
48
- simulSchemas.schemas.orders,
49
- ordersData,
50
- Table.buildDataColumnMap(simulSchemas.schemas, "orders")
51
- );
52
-
53
- exports.ordersData = ordersData;
54
- exports.ordersTable = ordersTable;
55
- //# sourceMappingURL=orders.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"orders.js","sources":["../../../../../packages/vuu-data-test/src/simul/reference-data/orders.ts"],"sourcesContent":["import { currencies } from \"./currencies\";\nimport { getRic } from \"./instruments\";\nimport { random } from \"../../data-utils\";\nimport { buildDataColumnMap } from \"../../Table\";\nimport { schemas } from \"../simul-schemas\";\nimport { sides } from \"./sides\";\nimport tableContainer from \"../../core/table/TableContainer\";\n\nexport type status = string;\nexport type ccy = string;\nexport type created = number;\nexport type filledQuantity = number;\nexport type lastUpdate = number;\nexport type orderId = string;\nexport type quantity = number;\nexport type ric = string;\nexport type side = string;\nexport type trader = string;\n\nconst traders = [\"Trader A\", \"Trader B\", \"Trader C\"];\nconst orderStatus = [\n \"Filled\",\n \"Cancelled\",\n \"New\",\n \"Partial Exec\",\n \"Booked\",\n \"All Done\",\n];\n\nconst isComplete = (status: string) =>\n [\"Filled\", \"All Done\", \"Booked\"].includes(status);\n\nexport type OrdersDataRow = [\n status,\n ccy,\n created,\n filledQuantity,\n lastUpdate,\n orderId,\n quantity,\n ric,\n side,\n trader,\n];\n\nexport const OrderColumnMap = {\n ccy: 0,\n created: 1,\n filledQuantity: 2,\n lastUpdate: 3,\n orderId: 4,\n quantity: 5,\n ric: 6,\n side: 7,\n trader: 8,\n} as const;\n\nconst ordersData: OrdersDataRow[] = [];\n\n// const start = performance.now();\n// Create 10_000 Instruments\n\nconst now = +new Date();\nfor (let i = 0; i < 100; i++) {\n const status = orderStatus[random(0, orderStatus.length - 1)];\n const ccy = currencies[random(0, currencies.length - 1)];\n const created = now;\n const lastUpdate = now;\n const orderId = `ORD${(\"0000\" + i).slice(-4)}`;\n const quantity = random(1000, 10000);\n const filledQuantity = isComplete(status)\n ? quantity\n : status === \"New\"\n ? 0\n : random(0, quantity);\n const ric = getRic(\"AAP.L\");\n const side = sides[random(0, sides.length - 1)];\n const trader = traders[random(0, traders.length - 1)];\n\n ordersData.push([\n status,\n ccy,\n created,\n filledQuantity,\n lastUpdate,\n orderId,\n quantity,\n ric,\n side,\n trader,\n ]);\n}\n// const end = performance.now();\n// console.log(`generating 10,000 instruments took ${end - start} ms`);\n\nexport const ordersTable = tableContainer.createTable(\n schemas.orders,\n ordersData,\n buildDataColumnMap(schemas, \"orders\"),\n);\n\nexport { ordersData };\n"],"names":["random","currencies","getRic","sides","tableContainer","schemas","buildDataColumnMap"],"mappings":";;;;;;;;;;AAmBA,MAAM,OAAU,GAAA,CAAC,UAAY,EAAA,UAAA,EAAY,UAAU,CAAA;AACnD,MAAM,WAAc,GAAA;AAAA,EAClB,QAAA;AAAA,EACA,WAAA;AAAA,EACA,KAAA;AAAA,EACA,cAAA;AAAA,EACA,QAAA;AAAA,EACA;AACF,CAAA;AAEA,MAAM,UAAA,GAAa,CAAC,MAClB,KAAA,CAAC,UAAU,UAAY,EAAA,QAAQ,CAAE,CAAA,QAAA,CAAS,MAAM,CAAA;AA2BlD,MAAM,aAA8B;AAKpC,MAAM,GAAA,GAAM,iBAAC,IAAI,IAAK,EAAA;AACtB,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,GAAA,EAAK,CAAK,EAAA,EAAA;AAC5B,EAAA,MAAM,SAAS,WAAY,CAAAA,gBAAA,CAAO,GAAG,WAAY,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAC5D,EAAA,MAAM,MAAMC,qBAAW,CAAAD,gBAAA,CAAO,GAAGC,qBAAW,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AACvD,EAAA,MAAM,OAAU,GAAA,GAAA;AAChB,EAAA,MAAM,UAAa,GAAA,GAAA;AACnB,EAAA,MAAM,UAAU,CAAO,GAAA,EAAA,CAAA,MAAA,GAAS,CAAG,EAAA,KAAA,CAAM,EAAE,CAAC,CAAA,CAAA;AAC5C,EAAM,MAAA,QAAA,GAAWD,gBAAO,CAAA,GAAA,EAAM,GAAK,CAAA;AACnC,EAAM,MAAA,cAAA,GAAiB,UAAW,CAAA,MAAM,CACpC,GAAA,QAAA,GACA,WAAW,KACT,GAAA,CAAA,GACAA,gBAAO,CAAA,CAAA,EAAG,QAAQ,CAAA;AACxB,EAAM,MAAA,GAAA,GAAME,mBAAO,OAAO,CAAA;AAC1B,EAAA,MAAM,OAAOC,WAAM,CAAAH,gBAAA,CAAO,GAAGG,WAAM,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAC9C,EAAA,MAAM,SAAS,OAAQ,CAAAH,gBAAA,CAAO,GAAG,OAAQ,CAAA,MAAA,GAAS,CAAC,CAAC,CAAA;AAEpD,EAAA,UAAA,CAAW,IAAK,CAAA;AAAA,IACd,MAAA;AAAA,IACA,GAAA;AAAA,IACA,OAAA;AAAA,IACA,cAAA;AAAA,IACA,UAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA;AAAA,IACA,GAAA;AAAA,IACA,IAAA;AAAA,IACA;AAAA,GACD,CAAA;AACH;AAIO,MAAM,cAAcI,cAAe,CAAA,WAAA;AAAA,EACxCC,oBAAQ,CAAA,MAAA;AAAA,EACR,UAAA;AAAA,EACAC,wBAAA,CAAmBD,sBAAS,QAAQ;AACtC;;;;;"}
@@ -1,144 +0,0 @@
1
- 'use strict';
2
-
3
- var vuuUtils = require('@vuu-ui/vuu-utils');
4
- var TableContainer = require('../../core/table/TableContainer.js');
5
- var dataUtils = require('../../data-utils.js');
6
- var Table = require('../../Table.js');
7
- var simulSchemas = require('../simul-schemas.js');
8
- var accounts = require('./accounts.js');
9
- var algos = require('./algos.js');
10
- var instruments = require('./instruments.js');
11
- var orderStatus = require('./orderStatus.js');
12
- var sides = require('./sides.js');
13
-
14
- const instrumentMap = Table.buildDataColumnMap(simulSchemas.schemas, "instruments");
15
- const PARENT_ORDER_COUNT = 5e3;
16
- const CHILD_ORDER_COUNT = 2e4;
17
- const avgChildOrderPerOrder = Math.round(
18
- CHILD_ORDER_COUNT / PARENT_ORDER_COUNT
19
- );
20
- const childMaxMultiple = 10;
21
- const clock = new vuuUtils.Clock().goBack(120, "minutes");
22
- const parentOrdersTable = TableContainer.createTable(
23
- simulSchemas.schemas.parentOrders,
24
- [],
25
- Table.buildDataColumnMap(simulSchemas.schemas, "parentOrders")
26
- );
27
- const childOrdersTable = TableContainer.createTable(
28
- simulSchemas.schemas.childOrders,
29
- [],
30
- Table.buildDataColumnMap(simulSchemas.schemas, "childOrders")
31
- );
32
- let parentOrderCount = 0;
33
- let childOrderCount = 0;
34
- let notifyNewOrders = false;
35
- function createParentAndChildOrders() {
36
- parentOrderCount += 1;
37
- const instrument = instruments.instrumentsData[dataUtils.random(0, instruments.instrumentsData.length - 1)];
38
- const orderQuantity = 1e3 * dataUtils.random(1, 100);
39
- const orderStatus$1 = orderStatus.orderStatus[dataUtils.random(0, orderStatus.orderStatus.length - 1)];
40
- const filledQty = orderStatus$1 === "FILLED" ? orderQuantity : orderStatus$1 === "NEW" ? 0 : orderQuantity - dataUtils.random(100, orderQuantity);
41
- const openQty = orderQuantity - filledQty;
42
- const account = accounts.accounts[dataUtils.random(0, accounts.accounts.length - 1)];
43
- const algo = algos.algos[dataUtils.random(0, algos.algos.length - 1)];
44
- const averagePrice = 0;
45
- const ccy = "GBP";
46
- const exchange = instrument[instrumentMap.exchange];
47
- const parentOrderIdAsInt = parentOrderCount;
48
- const parentOrderId = parentOrderCount.toString().padStart(10, "0");
49
- const price = 100;
50
- const quantity = orderQuantity;
51
- const ric = instrument[instrumentMap.ric];
52
- const side = sides.sides[dataUtils.random(0, sides.sides.length - 1)];
53
- const status = orderStatus$1;
54
- const volLimit = 100;
55
- const lastUpdate = clock.now;
56
- const created = clock.now;
57
- const numberOfChildOrders = dataUtils.random(
58
- 0,
59
- avgChildOrderPerOrder * dataUtils.random(1, childMaxMultiple)
60
- );
61
- let remainingQty = orderQuantity;
62
- for (let j = 0; j < numberOfChildOrders; j++) {
63
- childOrderCount += 1;
64
- const childOrderQuantity = Math.round(remainingQty / (childOrderCount - j));
65
- remainingQty -= childOrderQuantity;
66
- const childOrderStatus = orderStatus.orderStatus[dataUtils.random(0, orderStatus.orderStatus.length - 1)];
67
- const childFilledQty = orderStatus$1 === "FILLED" ? childOrderQuantity : childOrderStatus === "NEW" ? 0 : childOrderQuantity - dataUtils.random(100, childOrderQuantity);
68
- const childOpenQty = childOrderQuantity - childFilledQty;
69
- const averagePrice2 = 0;
70
- const childIdAsInt = childOrderCount;
71
- const childId = childOrderCount.toString().padStart(10, "0");
72
- const lastUpdate2 = 0;
73
- const price2 = 100;
74
- const strategy = 0;
75
- childOrdersTable.insert(
76
- [
77
- account,
78
- averagePrice2,
79
- ccy,
80
- exchange,
81
- childFilledQty,
82
- childId,
83
- childIdAsInt,
84
- childOpenQty,
85
- parentOrderId,
86
- price2,
87
- childOrderQuantity,
88
- ric,
89
- side,
90
- childOrderStatus,
91
- strategy,
92
- volLimit,
93
- lastUpdate2,
94
- created
95
- ],
96
- notifyNewOrders
97
- );
98
- }
99
- parentOrdersTable.insert(
100
- [
101
- account,
102
- algo,
103
- averagePrice,
104
- ccy,
105
- childOrderCount,
106
- exchange,
107
- filledQty,
108
- parentOrderId,
109
- parentOrderIdAsInt,
110
- openQty,
111
- price,
112
- quantity,
113
- ric,
114
- side,
115
- status,
116
- volLimit,
117
- lastUpdate,
118
- created
119
- ],
120
- notifyNewOrders
121
- );
122
- }
123
- function createInitialOrders() {
124
- for (let i = 0; i < PARENT_ORDER_COUNT; i++) {
125
- clock.advance(dataUtils.random(0, 100));
126
- createParentAndChildOrders();
127
- }
128
- }
129
- let newOrderInterval = void 0;
130
- function startGeneratingNewOrders() {
131
- newOrderInterval = setInterval(createParentAndChildOrders, 100);
132
- }
133
- function stopGeneratingNewOrders() {
134
- clearInterval(newOrderInterval);
135
- }
136
- createInitialOrders();
137
- clock.showCurrentTime = true;
138
- notifyNewOrders = true;
139
-
140
- exports.childOrdersTable = childOrdersTable;
141
- exports.parentOrdersTable = parentOrdersTable;
142
- exports.startGeneratingNewOrders = startGeneratingNewOrders;
143
- exports.stopGeneratingNewOrders = stopGeneratingNewOrders;
144
- //# sourceMappingURL=parent-child-orders.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parent-child-orders.js","sources":["../../../../../packages/vuu-data-test/src/simul/reference-data/parent-child-orders.ts"],"sourcesContent":["import { Clock } from \"@vuu-ui/vuu-utils\";\nimport tableContainer from \"../../core/table/TableContainer\";\nimport { random } from \"../../data-utils\";\nimport { buildDataColumnMap } from \"../../Table\";\nimport { schemas } from \"../simul-schemas\";\nimport { accounts } from \"./accounts\";\nimport { algos } from \"./algos\";\nimport { instrumentsData } from \"./instruments\";\nimport { orderStatus as statusValues } from \"./orderStatus\";\nimport { sides } from \"./sides\";\n\nconst instrumentMap = buildDataColumnMap(schemas, \"instruments\");\n\n// const PARENT_ORDER_COUNT = 75_000;\nconst PARENT_ORDER_COUNT = 5_000;\nconst CHILD_ORDER_COUNT = 20_000;\n// const CHILD_ORDER_COUNT = 200_000;\n\nconst avgChildOrderPerOrder = Math.round(\n CHILD_ORDER_COUNT / PARENT_ORDER_COUNT,\n);\nconst childMaxMultiple = 10;\n\nconst clock = new Clock().goBack(120, \"minutes\");\n// console.log(`starting order generation at ${clock}`);\n\nexport const parentOrdersTable = tableContainer.createTable(\n schemas.parentOrders,\n [],\n buildDataColumnMap(schemas, \"parentOrders\"),\n);\n\nexport const childOrdersTable = tableContainer.createTable(\n schemas.childOrders,\n [],\n buildDataColumnMap(schemas, \"childOrders\"),\n);\n\nlet parentOrderCount = 0;\nlet childOrderCount = 0;\nlet notifyNewOrders = false;\n\nfunction createParentAndChildOrders() {\n parentOrderCount += 1;\n const instrument = instrumentsData[random(0, instrumentsData.length - 1)];\n const orderQuantity = 1000 * random(1, 100);\n const orderStatus = statusValues[random(0, statusValues.length - 1)];\n const filledQty =\n orderStatus === \"FILLED\"\n ? orderQuantity\n : orderStatus === \"NEW\"\n ? 0\n : orderQuantity - random(100, orderQuantity);\n const openQty = orderQuantity - filledQty;\n const account = accounts[random(0, accounts.length - 1)];\n const algo = algos[random(0, algos.length - 1)];\n const averagePrice = 0;\n const ccy = \"GBP\";\n const exchange = instrument[instrumentMap.exchange];\n const parentOrderIdAsInt = parentOrderCount;\n const parentOrderId = parentOrderCount.toString().padStart(10, \"0\");\n const price = 100;\n const quantity = orderQuantity;\n const ric = instrument[instrumentMap.ric];\n const side = sides[random(0, sides.length - 1)];\n const status = orderStatus;\n const volLimit = 100;\n const lastUpdate = clock.now;\n const created = clock.now;\n\n const numberOfChildOrders = random(\n 0,\n avgChildOrderPerOrder * random(1, childMaxMultiple),\n );\n\n let remainingQty = orderQuantity;\n for (let j = 0; j < numberOfChildOrders; j++) {\n childOrderCount += 1;\n\n const childOrderQuantity = Math.round(remainingQty / (childOrderCount - j));\n remainingQty -= childOrderQuantity;\n const childOrderStatus = statusValues[random(0, statusValues.length - 1)];\n const childFilledQty =\n orderStatus === \"FILLED\"\n ? childOrderQuantity\n : childOrderStatus === \"NEW\"\n ? 0\n : childOrderQuantity - random(100, childOrderQuantity);\n const childOpenQty = childOrderQuantity - childFilledQty;\n const averagePrice = 0;\n const childIdAsInt = childOrderCount;\n const childId = childOrderCount.toString().padStart(10, \"0\");\n const lastUpdate = 0;\n const price = 100;\n const strategy = 0;\n\n childOrdersTable.insert(\n [\n account,\n averagePrice,\n ccy,\n exchange,\n childFilledQty,\n childId,\n childIdAsInt,\n childOpenQty,\n parentOrderId,\n price,\n childOrderQuantity,\n ric,\n side,\n childOrderStatus,\n strategy,\n volLimit,\n lastUpdate,\n created,\n ],\n notifyNewOrders,\n );\n }\n\n parentOrdersTable.insert(\n [\n account,\n algo,\n averagePrice,\n ccy,\n childOrderCount,\n exchange,\n filledQty,\n parentOrderId,\n parentOrderIdAsInt,\n openQty,\n price,\n quantity,\n ric,\n side,\n status,\n volLimit,\n lastUpdate,\n created,\n ],\n notifyNewOrders,\n );\n}\n\nfunction createInitialOrders() {\n // const start = performance.now();\n for (let i = 0; i < PARENT_ORDER_COUNT; i++) {\n clock.advance(random(0, 100));\n createParentAndChildOrders();\n }\n // const end = performance.now();\n // console.log(\n // `took ${end - start} to create ${parentOrdersTable.data.length} orders and ${childOrdersTable.data.length} child orders, last order created at ${clock}`,\n // );\n}\n\nlet newOrderInterval: undefined | ReturnType<typeof setInterval> = undefined;\n\nexport function startGeneratingNewOrders() {\n newOrderInterval = setInterval(createParentAndChildOrders, 100);\n}\n\nexport function stopGeneratingNewOrders() {\n clearInterval(newOrderInterval);\n}\n\ncreateInitialOrders();\n\nclock.showCurrentTime = true;\nnotifyNewOrders = true;\n\n// startGeneratingNewOrders();\n"],"names":["buildDataColumnMap","schemas","Clock","tableContainer","instrumentsData","random","orderStatus","statusValues","accounts","algos","sides","averagePrice","lastUpdate","price"],"mappings":"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"}