@quantform/core 0.7.0-beta.8 → 0.7.9

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 (396) hide show
  1. package/jest.config.ts +1 -1
  2. package/{dist → lib}/asset/asset.d.ts +3 -0
  3. package/lib/asset/asset.d.ts.map +1 -0
  4. package/{dist → lib}/asset/asset.js +8 -2
  5. package/{dist → lib}/cli/index.js +9 -6
  6. package/lib/cli/internal/script.d.ts +8 -0
  7. package/lib/cli/internal/script.d.ts.map +1 -0
  8. package/lib/cli/internal/script.js +75 -0
  9. package/{dist → lib}/cli/internal/workspace.js +1 -2
  10. package/lib/cli/live.d.ts +5 -0
  11. package/lib/cli/live.d.ts.map +1 -0
  12. package/lib/cli/live.js +33 -0
  13. package/lib/cli/paper.d.ts +5 -0
  14. package/lib/cli/paper.d.ts.map +1 -0
  15. package/lib/cli/paper.js +33 -0
  16. package/lib/cli/pull.d.ts.map +1 -0
  17. package/lib/cli/pull.js +28 -0
  18. package/lib/cli/replay.d.ts +6 -0
  19. package/lib/cli/replay.d.ts.map +1 -0
  20. package/lib/cli/replay.js +37 -0
  21. package/{dist → lib}/component/distinct-until-timesamp-changed.d.ts.map +1 -1
  22. package/{dist → lib}/component/distinct-until-timesamp-changed.js +1 -2
  23. package/lib/component/ohlc-operator.d.ts.map +1 -0
  24. package/{dist → lib}/component/ohlc-operator.js +3 -4
  25. package/{dist → lib}/component/ohlc.d.ts.map +1 -1
  26. package/{dist → lib}/component/timeframe.js +3 -3
  27. package/{dist → lib}/core.js +4 -5
  28. package/lib/index.d.ts +21 -0
  29. package/lib/index.d.ts.map +1 -0
  30. package/{dist → lib}/index.js +6 -13
  31. package/{dist → lib}/instrument/commission/commission.js +3 -3
  32. package/{dist → lib}/instrument/instrument.d.ts +3 -0
  33. package/lib/instrument/instrument.d.ts.map +1 -0
  34. package/{dist → lib}/instrument/instrument.js +8 -2
  35. package/lib/make-test-module.d.ts +13 -0
  36. package/lib/make-test-module.d.ts.map +1 -0
  37. package/{dist → lib}/make-test-module.js +13 -4
  38. package/lib/module.d.ts.map +1 -0
  39. package/lib/operators.d.ts +5 -0
  40. package/lib/operators.d.ts.map +1 -0
  41. package/lib/operators.js +15 -0
  42. package/lib/replay/index.d.ts +10 -0
  43. package/lib/replay/index.d.ts.map +1 -0
  44. package/{dist → lib}/replay/index.js +7 -4
  45. package/lib/replay/replay-guard.d.ts +10 -0
  46. package/lib/replay/replay-guard.d.ts.map +1 -0
  47. package/lib/replay/replay-guard.js +7 -0
  48. package/lib/replay/replay.d.ts +10 -0
  49. package/lib/replay/replay.d.ts.map +1 -0
  50. package/lib/replay/replay.js +8 -0
  51. package/lib/replay/storage/use-replay-storage-buffer.d.ts +15 -0
  52. package/lib/replay/storage/use-replay-storage-buffer.d.ts.map +1 -0
  53. package/lib/replay/storage/use-replay-storage-buffer.js +57 -0
  54. package/lib/replay/storage/use-replay-storage-cursor.d.ts +30 -0
  55. package/lib/replay/storage/use-replay-storage-cursor.d.ts.map +1 -0
  56. package/lib/replay/storage/use-replay-storage-cursor.js +49 -0
  57. package/lib/replay/storage/use-replay-storage.d.ts +13 -0
  58. package/lib/replay/storage/use-replay-storage.d.ts.map +1 -0
  59. package/lib/replay/storage/use-replay-storage.js +38 -0
  60. package/lib/replay/storage/use-replay-storage.spec.d.ts +2 -0
  61. package/lib/replay/storage/use-replay-storage.spec.d.ts.map +1 -0
  62. package/lib/replay/storage/use-replay-storage.spec.js +74 -0
  63. package/lib/replay/use-replay-lock.d.ts +3 -0
  64. package/lib/replay/use-replay-lock.d.ts.map +1 -0
  65. package/lib/replay/use-replay-lock.js +21 -0
  66. package/lib/replay/use-replay-manager.d.ts +28 -0
  67. package/lib/replay/use-replay-manager.d.ts.map +1 -0
  68. package/lib/replay/use-replay-manager.js +68 -0
  69. package/{dist → lib}/replay/use-replay-options.js +2 -2
  70. package/{dist → lib}/replay/use-replay.d.ts +2 -2
  71. package/lib/replay/use-replay.d.ts.map +1 -0
  72. package/lib/replay/use-replay.js +19 -0
  73. package/lib/replay/use-replay.spec.js +130 -0
  74. package/lib/replay/when-replay-finished.d.ts +2 -0
  75. package/lib/replay/when-replay-finished.d.ts.map +1 -0
  76. package/lib/replay/when-replay-finished.js +14 -0
  77. package/lib/session/use-session-object.d.ts +9 -0
  78. package/lib/session/use-session-object.d.ts.map +1 -0
  79. package/{dist → lib}/session/use-session-storage.js +2 -2
  80. package/lib/session/use-session.d.ts +13 -0
  81. package/lib/session/use-session.d.ts.map +1 -0
  82. package/lib/session/use-session.js +14 -0
  83. package/{dist → lib}/shared/datetime.js +1 -2
  84. package/lib/shared/decimals.d.ts +14 -0
  85. package/lib/shared/decimals.d.ts.map +1 -0
  86. package/lib/shared/decimals.js +18 -0
  87. package/{dist → lib}/shared/environment.js +2 -3
  88. package/{dist → lib}/simulator/use-simulator.js +1 -2
  89. package/{dist → lib}/simulator/use-simulator.spec.js +12 -18
  90. package/{dist → lib}/storage/in-memory/in-memory-storage.factory.js +2 -2
  91. package/{dist → lib}/storage/index.d.ts +1 -0
  92. package/{dist → lib}/storage/index.d.ts.map +1 -1
  93. package/{dist → lib}/storage/index.js +1 -0
  94. package/lib/storage/storage.d.ts.map +1 -0
  95. package/{dist → lib}/storage/use-cache.d.ts.map +1 -1
  96. package/lib/storage/use-storage-factory.d.ts +10 -0
  97. package/lib/storage/use-storage-factory.d.ts.map +1 -0
  98. package/lib/storage/use-storage-factory.js +12 -0
  99. package/lib/storage/use-storage.d.ts.map +1 -0
  100. package/{dist → lib}/storage/use-storage.js +2 -2
  101. package/lib/strategy.d.ts +15 -0
  102. package/lib/strategy.d.ts.map +1 -0
  103. package/lib/strategy.js +26 -0
  104. package/lib/strategy.spec.d.ts +2 -0
  105. package/lib/strategy.spec.d.ts.map +1 -0
  106. package/lib/strategy.spec.js +34 -0
  107. package/lib/use-execution-mode.d.ts +20 -0
  108. package/lib/use-execution-mode.d.ts.map +1 -0
  109. package/lib/use-execution-mode.js +32 -0
  110. package/{dist → lib}/use-hash.js +1 -2
  111. package/{dist → lib}/use-logger.js +5 -5
  112. package/lib/use-memo.d.ts +8 -0
  113. package/lib/use-memo.d.ts.map +1 -0
  114. package/lib/use-memo.js +19 -0
  115. package/lib/use-socket.d.ts +20 -0
  116. package/lib/use-socket.d.ts.map +1 -0
  117. package/lib/use-socket.js +82 -0
  118. package/{dist → lib}/use-timestamp.js +3 -4
  119. package/lib/when-socket.d.ts +8 -0
  120. package/lib/when-socket.d.ts.map +1 -0
  121. package/{dist/use-socket.js → lib/when-socket.js} +5 -5
  122. package/lib/with-memo.d.ts +5 -0
  123. package/lib/with-memo.d.ts.map +1 -0
  124. package/{dist/use.js → lib/with-memo.js} +4 -5
  125. package/lib/with-memo.spec.d.ts +2 -0
  126. package/lib/with-memo.spec.d.ts.map +1 -0
  127. package/{dist/use.spec.js → lib/with-memo.spec.js} +3 -3
  128. package/{dist/use-request.d.ts → lib/with-request.d.ts} +6 -6
  129. package/lib/with-request.d.ts.map +1 -0
  130. package/lib/with-request.js +68 -0
  131. package/package.json +5 -5
  132. package/src/asset/asset.ts +6 -0
  133. package/src/cli/index.ts +11 -8
  134. package/src/cli/internal/script.ts +70 -0
  135. package/src/cli/live.ts +22 -0
  136. package/src/cli/paper.ts +22 -0
  137. package/src/cli/pull.ts +6 -66
  138. package/src/cli/replay.ts +15 -19
  139. package/src/core.ts +6 -6
  140. package/src/index.ts +6 -13
  141. package/src/instrument/instrument.ts +6 -0
  142. package/src/make-test-module.ts +20 -4
  143. package/src/operators.ts +18 -0
  144. package/src/replay/index.ts +7 -4
  145. package/src/replay/replay-guard.ts +11 -0
  146. package/src/replay/replay.ts +13 -0
  147. package/src/replay/storage/use-replay-storage-buffer.ts +52 -0
  148. package/src/replay/storage/use-replay-storage-cursor.ts +44 -0
  149. package/src/replay/storage/use-replay-storage.spec.ts +84 -0
  150. package/src/replay/storage/use-replay-storage.ts +29 -0
  151. package/src/replay/use-replay-lock.ts +29 -0
  152. package/src/replay/use-replay-manager.ts +83 -0
  153. package/src/replay/use-replay.spec.ts +10 -4
  154. package/src/replay/use-replay.ts +11 -17
  155. package/src/replay/when-replay-finished.ts +20 -0
  156. package/src/session/use-session-storage.ts +2 -2
  157. package/src/session/use-session.ts +16 -4
  158. package/src/shared/decimals.ts +0 -45
  159. package/src/simulator/use-simulator.spec.ts +10 -26
  160. package/src/storage/index.ts +1 -0
  161. package/src/storage/use-storage-factory.ts +7 -7
  162. package/src/storage/use-storage.ts +2 -2
  163. package/src/strategy.spec.ts +42 -0
  164. package/src/strategy.ts +36 -0
  165. package/src/use-execution-mode.ts +27 -27
  166. package/src/use-logger.ts +7 -7
  167. package/src/use-memo.ts +6 -21
  168. package/src/use-socket.ts +82 -44
  169. package/src/use-timestamp.ts +2 -2
  170. package/src/when-socket.ts +61 -0
  171. package/src/{use.spec.ts → with-memo.spec.ts} +3 -3
  172. package/src/{use.ts → with-memo.ts} +4 -4
  173. package/src/with-request.ts +83 -0
  174. package/tsconfig.json +2 -2
  175. package/dist/as-readonly.d.ts +0 -3
  176. package/dist/as-readonly.d.ts.map +0 -1
  177. package/dist/as-readonly.js +0 -8
  178. package/dist/asset/asset.d.ts.map +0 -1
  179. package/dist/cli/dev.d.ts +0 -2
  180. package/dist/cli/dev.d.ts.map +0 -1
  181. package/dist/cli/dev.js +0 -61
  182. package/dist/cli/pull.d.ts.map +0 -1
  183. package/dist/cli/pull.js +0 -107
  184. package/dist/cli/replay.d.ts +0 -2
  185. package/dist/cli/replay.d.ts.map +0 -1
  186. package/dist/cli/replay.js +0 -64
  187. package/dist/cli/run.d.ts +0 -2
  188. package/dist/cli/run.d.ts.map +0 -1
  189. package/dist/cli/run.js +0 -62
  190. package/dist/component/ohlc-operator.d.ts.map +0 -1
  191. package/dist/defined.d.ts +0 -3
  192. package/dist/defined.d.ts.map +0 -1
  193. package/dist/defined.js +0 -8
  194. package/dist/exclude.d.ts +0 -3
  195. package/dist/exclude.d.ts.map +0 -1
  196. package/dist/exclude.js +0 -8
  197. package/dist/index.d.ts +0 -28
  198. package/dist/index.d.ts.map +0 -1
  199. package/dist/instrument/instrument.d.ts.map +0 -1
  200. package/dist/make-test-module.d.ts +0 -13
  201. package/dist/make-test-module.d.ts.map +0 -1
  202. package/dist/missed.d.ts +0 -2
  203. package/dist/missed.d.ts.map +0 -1
  204. package/dist/missed.js +0 -4
  205. package/dist/module.d.ts.map +0 -1
  206. package/dist/replay/index.d.ts +0 -7
  207. package/dist/replay/index.d.ts.map +0 -1
  208. package/dist/replay/use-replay-coordinator.d.ts +0 -10
  209. package/dist/replay/use-replay-coordinator.d.ts.map +0 -1
  210. package/dist/replay/use-replay-coordinator.js +0 -119
  211. package/dist/replay/use-replay-reader.d.ts +0 -7
  212. package/dist/replay/use-replay-reader.d.ts.map +0 -1
  213. package/dist/replay/use-replay-reader.js +0 -32
  214. package/dist/replay/use-replay-reader.spec.d.ts +0 -2
  215. package/dist/replay/use-replay-reader.spec.d.ts.map +0 -1
  216. package/dist/replay/use-replay-reader.spec.js +0 -58
  217. package/dist/replay/use-replay-storage.d.ts +0 -10
  218. package/dist/replay/use-replay-storage.d.ts.map +0 -1
  219. package/dist/replay/use-replay-storage.js +0 -10
  220. package/dist/replay/use-replay-writer.d.ts +0 -6
  221. package/dist/replay/use-replay-writer.d.ts.map +0 -1
  222. package/dist/replay/use-replay-writer.js +0 -14
  223. package/dist/replay/use-replay-writer.spec.d.ts +0 -2
  224. package/dist/replay/use-replay-writer.spec.d.ts.map +0 -1
  225. package/dist/replay/use-replay-writer.spec.js +0 -53
  226. package/dist/replay/use-replay.d.ts.map +0 -1
  227. package/dist/replay/use-replay.js +0 -32
  228. package/dist/replay/use-replay.spec.js +0 -106
  229. package/dist/replay/with-replay.d.ts +0 -4
  230. package/dist/replay/with-replay.d.ts.map +0 -1
  231. package/dist/replay/with-replay.js +0 -8
  232. package/dist/session/use-session-object.d.ts +0 -18
  233. package/dist/session/use-session-object.d.ts.map +0 -1
  234. package/dist/session/use-session.d.ts +0 -4
  235. package/dist/session/use-session.d.ts.map +0 -1
  236. package/dist/session/use-session.js +0 -7
  237. package/dist/shared/decimals.d.ts +0 -30
  238. package/dist/shared/decimals.d.ts.map +0 -1
  239. package/dist/shared/decimals.js +0 -61
  240. package/dist/storage/storage.d.ts.map +0 -1
  241. package/dist/storage/use-storage-factory.d.ts +0 -10
  242. package/dist/storage/use-storage-factory.d.ts.map +0 -1
  243. package/dist/storage/use-storage-factory.js +0 -14
  244. package/dist/storage/use-storage.d.ts.map +0 -1
  245. package/dist/strat.d.ts +0 -7
  246. package/dist/strat.d.ts.map +0 -1
  247. package/dist/strat.js +0 -7
  248. package/dist/use-execution-mode.d.ts +0 -29
  249. package/dist/use-execution-mode.d.ts.map +0 -1
  250. package/dist/use-execution-mode.js +0 -37
  251. package/dist/use-lock.d.ts +0 -9
  252. package/dist/use-lock.d.ts.map +0 -1
  253. package/dist/use-lock.js +0 -40
  254. package/dist/use-memo.d.ts +0 -21
  255. package/dist/use-memo.d.ts.map +0 -1
  256. package/dist/use-memo.js +0 -35
  257. package/dist/use-request.d.ts.map +0 -1
  258. package/dist/use-request.js +0 -27
  259. package/dist/use-socket.d.ts +0 -6
  260. package/dist/use-socket.d.ts.map +0 -1
  261. package/dist/use-state.d.ts +0 -4
  262. package/dist/use-state.d.ts.map +0 -1
  263. package/dist/use-state.js +0 -24
  264. package/dist/use-state.spec.d.ts +0 -2
  265. package/dist/use-state.spec.d.ts.map +0 -1
  266. package/dist/use-state.spec.js +0 -36
  267. package/dist/use.d.ts +0 -5
  268. package/dist/use.d.ts.map +0 -1
  269. package/dist/use.spec.d.ts +0 -2
  270. package/dist/use.spec.d.ts.map +0 -1
  271. package/src/as-readonly.ts +0 -5
  272. package/src/cli/dev.ts +0 -31
  273. package/src/cli/run.ts +0 -29
  274. package/src/defined.ts +0 -6
  275. package/src/exclude.ts +0 -9
  276. package/src/missed.ts +0 -1
  277. package/src/replay/use-replay-coordinator.ts +0 -142
  278. package/src/replay/use-replay-reader.spec.ts +0 -64
  279. package/src/replay/use-replay-reader.ts +0 -23
  280. package/src/replay/use-replay-storage.ts +0 -8
  281. package/src/replay/use-replay-writer.spec.ts +0 -56
  282. package/src/replay/use-replay-writer.ts +0 -17
  283. package/src/replay/with-replay.ts +0 -10
  284. package/src/strat.ts +0 -7
  285. package/src/use-lock.ts +0 -52
  286. package/src/use-request.ts +0 -47
  287. package/src/use-state.spec.ts +0 -31
  288. package/src/use-state.ts +0 -30
  289. package/{dist → lib}/asset/asset.spec.d.ts +0 -0
  290. package/{dist → lib}/asset/asset.spec.d.ts.map +0 -0
  291. package/{dist → lib}/asset/asset.spec.js +0 -0
  292. package/{dist → lib}/asset/index.d.ts +0 -0
  293. package/{dist → lib}/asset/index.d.ts.map +0 -0
  294. package/{dist → lib}/asset/index.js +0 -0
  295. package/{dist → lib}/cli/build.d.ts +0 -0
  296. package/{dist → lib}/cli/build.d.ts.map +0 -0
  297. package/{dist → lib}/cli/build.js +1 -1
  298. /package/{dist → lib}/cli/index.d.ts +0 -0
  299. /package/{dist → lib}/cli/index.d.ts.map +0 -0
  300. /package/{dist → lib}/cli/internal/workspace.d.ts +0 -0
  301. /package/{dist → lib}/cli/internal/workspace.d.ts.map +0 -0
  302. /package/{dist → lib}/cli/pull.d.ts +0 -0
  303. /package/{dist → lib}/component/distinct-until-timesamp-changed.d.ts +0 -0
  304. /package/{dist → lib}/component/error.d.ts +0 -0
  305. /package/{dist → lib}/component/error.d.ts.map +0 -0
  306. /package/{dist → lib}/component/error.js +0 -0
  307. /package/{dist → lib}/component/index.d.ts +0 -0
  308. /package/{dist → lib}/component/index.d.ts.map +0 -0
  309. /package/{dist → lib}/component/index.js +0 -0
  310. /package/{dist → lib}/component/ohlc-operator.d.ts +0 -0
  311. /package/{dist → lib}/component/ohlc-operator.spec.d.ts +0 -0
  312. /package/{dist → lib}/component/ohlc-operator.spec.d.ts.map +0 -0
  313. /package/{dist → lib}/component/ohlc-operator.spec.js +0 -0
  314. /package/{dist → lib}/component/ohlc.d.ts +0 -0
  315. /package/{dist → lib}/component/ohlc.js +0 -0
  316. /package/{dist → lib}/component/ohlc.spec.d.ts +0 -0
  317. /package/{dist → lib}/component/ohlc.spec.d.ts.map +0 -0
  318. /package/{dist → lib}/component/ohlc.spec.js +0 -0
  319. /package/{dist → lib}/component/timeframe.d.ts +0 -0
  320. /package/{dist → lib}/component/timeframe.d.ts.map +0 -0
  321. /package/{dist → lib}/core.d.ts +0 -0
  322. /package/{dist → lib}/core.d.ts.map +0 -0
  323. /package/{dist → lib}/instrument/commission/commission.d.ts +0 -0
  324. /package/{dist → lib}/instrument/commission/commission.d.ts.map +0 -0
  325. /package/{dist → lib}/instrument/commission/commission.spec.d.ts +0 -0
  326. /package/{dist → lib}/instrument/commission/commission.spec.d.ts.map +0 -0
  327. /package/{dist → lib}/instrument/commission/commission.spec.js +0 -0
  328. /package/{dist → lib}/instrument/index.d.ts +0 -0
  329. /package/{dist → lib}/instrument/index.d.ts.map +0 -0
  330. /package/{dist → lib}/instrument/index.js +0 -0
  331. /package/{dist → lib}/instrument/instrument.spec.d.ts +0 -0
  332. /package/{dist → lib}/instrument/instrument.spec.d.ts.map +0 -0
  333. /package/{dist → lib}/instrument/instrument.spec.js +0 -0
  334. /package/{dist → lib}/module.d.ts +0 -0
  335. /package/{dist → lib}/module.js +0 -0
  336. /package/{dist → lib}/module.spec.d.ts +0 -0
  337. /package/{dist → lib}/module.spec.d.ts.map +0 -0
  338. /package/{dist → lib}/module.spec.js +0 -0
  339. /package/{dist → lib}/replay/use-replay-options.d.ts +0 -0
  340. /package/{dist → lib}/replay/use-replay-options.d.ts.map +0 -0
  341. /package/{dist → lib}/replay/use-replay.spec.d.ts +0 -0
  342. /package/{dist → lib}/replay/use-replay.spec.d.ts.map +0 -0
  343. /package/{dist → lib}/session/index.d.ts +0 -0
  344. /package/{dist → lib}/session/index.d.ts.map +0 -0
  345. /package/{dist → lib}/session/index.js +0 -0
  346. /package/{dist → lib}/session/use-session-object.js +0 -0
  347. /package/{dist → lib}/session/use-session-storage.d.ts +0 -0
  348. /package/{dist → lib}/session/use-session-storage.d.ts.map +0 -0
  349. /package/{dist → lib}/shared/datetime.d.ts +0 -0
  350. /package/{dist → lib}/shared/datetime.d.ts.map +0 -0
  351. /package/{dist → lib}/shared/decimals.spec.d.ts +0 -0
  352. /package/{dist → lib}/shared/decimals.spec.d.ts.map +0 -0
  353. /package/{dist → lib}/shared/decimals.spec.js +0 -0
  354. /package/{dist → lib}/shared/environment.d.ts +0 -0
  355. /package/{dist → lib}/shared/environment.d.ts.map +0 -0
  356. /package/{dist → lib}/shared/index.d.ts +0 -0
  357. /package/{dist → lib}/shared/index.d.ts.map +0 -0
  358. /package/{dist → lib}/shared/index.js +0 -0
  359. /package/{dist → lib}/simulator/index.d.ts +0 -0
  360. /package/{dist → lib}/simulator/index.d.ts.map +0 -0
  361. /package/{dist → lib}/simulator/index.js +0 -0
  362. /package/{dist → lib}/simulator/use-simulator.d.ts +0 -0
  363. /package/{dist → lib}/simulator/use-simulator.d.ts.map +0 -0
  364. /package/{dist → lib}/simulator/use-simulator.spec.d.ts +0 -0
  365. /package/{dist → lib}/simulator/use-simulator.spec.d.ts.map +0 -0
  366. /package/{dist → lib}/storage/in-memory/in-memory-storage.d.ts +0 -0
  367. /package/{dist → lib}/storage/in-memory/in-memory-storage.d.ts.map +0 -0
  368. /package/{dist → lib}/storage/in-memory/in-memory-storage.factory.d.ts +0 -0
  369. /package/{dist → lib}/storage/in-memory/in-memory-storage.factory.d.ts.map +0 -0
  370. /package/{dist → lib}/storage/in-memory/in-memory-storage.js +0 -0
  371. /package/{dist → lib}/storage/in-memory/in-memory-storage.spec.d.ts +0 -0
  372. /package/{dist → lib}/storage/in-memory/in-memory-storage.spec.d.ts.map +0 -0
  373. /package/{dist → lib}/storage/in-memory/in-memory-storage.spec.js +0 -0
  374. /package/{dist → lib}/storage/in-memory/index.d.ts +0 -0
  375. /package/{dist → lib}/storage/in-memory/index.d.ts.map +0 -0
  376. /package/{dist → lib}/storage/in-memory/index.js +0 -0
  377. /package/{dist → lib}/storage/storage.d.ts +0 -0
  378. /package/{dist → lib}/storage/storage.js +0 -0
  379. /package/{dist → lib}/storage/use-cache.d.ts +0 -0
  380. /package/{dist → lib}/storage/use-cache.js +0 -0
  381. /package/{dist → lib}/storage/use-cache.spec.d.ts +0 -0
  382. /package/{dist → lib}/storage/use-cache.spec.d.ts.map +0 -0
  383. /package/{dist → lib}/storage/use-cache.spec.js +0 -0
  384. /package/{dist → lib}/storage/use-storage.d.ts +0 -0
  385. /package/{dist → lib}/use-hash.d.ts +0 -0
  386. /package/{dist → lib}/use-hash.d.ts.map +0 -0
  387. /package/{dist → lib}/use-hash.spec.d.ts +0 -0
  388. /package/{dist → lib}/use-hash.spec.d.ts.map +0 -0
  389. /package/{dist → lib}/use-hash.spec.js +0 -0
  390. /package/{dist → lib}/use-logger.d.ts +0 -0
  391. /package/{dist → lib}/use-logger.d.ts.map +0 -0
  392. /package/{dist → lib}/use-memo.spec.d.ts +0 -0
  393. /package/{dist → lib}/use-memo.spec.d.ts.map +0 -0
  394. /package/{dist → lib}/use-memo.spec.js +0 -0
  395. /package/{dist → lib}/use-timestamp.d.ts +0 -0
  396. /package/{dist → lib}/use-timestamp.d.ts.map +0 -0
package/jest.config.ts CHANGED
@@ -23,7 +23,7 @@ const config: Config = {
23
23
  }
24
24
  ]
25
25
  },
26
- testPathIgnorePatterns: ['<rootDir>/dist/', '<rootDir>/src/cli/test.ts'],
26
+ testPathIgnorePatterns: ['<rootDir>/lib/', '<rootDir>/src/cli/test.ts'],
27
27
  roots: ['<rootDir>'],
28
28
  modulePaths: [compilerOptions.baseUrl],
29
29
  moduleNameMapper: pathsToModuleNameMapper(compilerOptions.paths, {
@@ -1,5 +1,8 @@
1
1
  import { decimal } from '../shared';
2
2
  export declare const AssetSelectorSeparator = ":";
3
+ export declare class MissingAssetError extends Error {
4
+ constructor(asset: AssetSelector);
5
+ }
3
6
  /**
4
7
  * Supposed to query specific @see Asset based on string notation.
5
8
  */
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset.d.ts","sourceRoot":"","sources":["../../src/asset/asset.ts"],"names":[],"mappings":"AACA,OAAO,EAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAEzC,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,KAAK,EAAE,aAAa;CAGjC;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAEjB,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAc7C,QAAQ;CAGT;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAQvD;AAED;;;GAGG;AACH,qBAAa,KAAM,SAAQ,aAAa;aAGyB,KAAK,EAAE,MAAM;IAF5E,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;gBAEf,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAkB,KAAK,EAAE,MAAM;IAU5E;;OAEG;IACH,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM;IAI9B;;OAEG;IACH,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO;IAI/B;;OAEG;IACH,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO;CAG/B"}
@@ -1,9 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Asset = exports.assetOf = exports.AssetSelector = exports.AssetSelectorSeparator = void 0;
3
+ exports.Asset = exports.AssetSelector = exports.MissingAssetError = exports.AssetSelectorSeparator = void 0;
4
+ exports.assetOf = assetOf;
4
5
  const component_1 = require("../component");
5
6
  const shared_1 = require("../shared");
6
7
  exports.AssetSelectorSeparator = ':';
8
+ class MissingAssetError extends Error {
9
+ constructor(asset) {
10
+ super(`Missing asset: ${asset}`);
11
+ }
12
+ }
13
+ exports.MissingAssetError = MissingAssetError;
7
14
  /**
8
15
  * Supposed to query specific @see Asset based on string notation.
9
16
  */
@@ -34,7 +41,6 @@ function assetOf(selector) {
34
41
  }
35
42
  return new AssetSelector(name, adapterName);
36
43
  }
37
- exports.assetOf = assetOf;
38
44
  /**
39
45
  * Represents a security that you can trade or hold in your wallet.
40
46
  * For example, you can combine two trading assets to create a trading instrument.
@@ -17,10 +17,10 @@ const child_process_1 = require("child_process");
17
17
  const commander_1 = require("commander");
18
18
  const node_watch_1 = __importDefault(require("node-watch"));
19
19
  const build_1 = __importDefault(require("../cli/build"));
20
- const dev_1 = __importDefault(require("../cli/dev"));
20
+ const live_1 = __importDefault(require("../cli/live"));
21
+ const paper_1 = __importDefault(require("../cli/paper"));
21
22
  const pull_1 = __importDefault(require("../cli/pull"));
22
23
  const replay_1 = __importDefault(require("../cli/replay"));
23
- const run_1 = __importDefault(require("../cli/run"));
24
24
  commander_1.program
25
25
  .command('build')
26
26
  .description('builds a production version of the app')
@@ -28,23 +28,26 @@ commander_1.program
28
28
  yield (0, build_1.default)();
29
29
  }));
30
30
  commander_1.program
31
- .command('run')
31
+ .command('live')
32
32
  .argument('<name>', 'strategy to execute')
33
33
  .option('-i, --id <id>', 'session identifier')
34
+ .option('-r, --recording', 'recording mode for replay purposes')
34
35
  .option('-w', 'watch mode')
35
36
  .description('executes strategy in live trading mode')
36
- .action(run_1.default);
37
+ .action(live_1.default);
37
38
  commander_1.program
38
- .command('dev')
39
+ .command('paper')
39
40
  .argument('<name>', 'strategy to execute')
40
41
  .option('-i, --id <id>', 'session identifier')
42
+ .option('-r, --recording', 'recording mode for replay purposes')
41
43
  .option('-w', 'watch mode')
42
44
  .description('executes strategy in paper e.g. simulation mode')
43
- .action(dev_1.default);
45
+ .action(paper_1.default);
44
46
  commander_1.program
45
47
  .command('replay')
46
48
  .description('executes strategy in backtesting mode for specified period')
47
49
  .argument('<name>', 'strategy to execute')
50
+ .option('-i, --id <id>', 'session identifier')
48
51
  .option('-f, --from <from>', 'date from')
49
52
  .option('-t, --to <to>', 'date to')
50
53
  .option('-w', 'watch mode')
@@ -0,0 +1,8 @@
1
+ import { Dependency } from '../../module';
2
+ export declare class Script {
3
+ private readonly filename;
4
+ private readonly dependencies;
5
+ constructor(filename: string, dependencies: Dependency[]);
6
+ run(): Promise<unknown[]>;
7
+ }
8
+ //# sourceMappingURL=script.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../../src/cli/internal/script.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,UAAU,EAAU,MAAM,aAAa,CAAC;AAMjD,qBAAa,MAAM;IAEf,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,UAAU,EAAE;IAGvC,GAAG;CA0CV"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
+ return new (P || (P = Promise))(function (resolve, reject) {
38
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
42
+ });
43
+ };
44
+ Object.defineProperty(exports, "__esModule", { value: true });
45
+ exports.Script = void 0;
46
+ const path_1 = require("path");
47
+ const rxjs_1 = require("rxjs");
48
+ const core_1 = require("../../core");
49
+ const module_1 = require("../../module");
50
+ const replay_1 = require("../../replay");
51
+ const workspace_1 = require("./workspace");
52
+ class Script {
53
+ constructor(filename, dependencies) {
54
+ this.filename = filename;
55
+ this.dependencies = dependencies;
56
+ }
57
+ run() {
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ const script = yield Promise.resolve(`${(0, path_1.join)((0, workspace_1.buildDirectory)(), this.filename)}`).then(s => __importStar(require(s)));
60
+ const { dependencies, description } = script.default;
61
+ const module = new module_1.Module([...(0, core_1.core)(), ...dependencies, ...this.dependencies]);
62
+ const { act } = yield module.awake();
63
+ return yield act(() => {
64
+ process.stdin.resume();
65
+ return (0, rxjs_1.firstValueFrom)((0, rxjs_1.merge)((0, rxjs_1.forkJoin)(description.before.map(before => before()))
66
+ .pipe((0, rxjs_1.switchMap)(() => (0, rxjs_1.forkJoin)(description.behavior.map(behavior => behavior())).pipe((0, rxjs_1.last)())))
67
+ .pipe((0, rxjs_1.last)()), (0, replay_1.whenReplayFinished)().pipe((0, rxjs_1.last)()), (0, rxjs_1.fromEvent)(process, 'exit'), (0, rxjs_1.fromEvent)(process, 'SIGINT'), (0, rxjs_1.fromEvent)(process, 'SIGUSR1'), (0, rxjs_1.fromEvent)(process, 'SIGUSR2'), (0, rxjs_1.fromEvent)(process, 'uncaughtException')).pipe((0, rxjs_1.catchError)(e => {
68
+ console.error(e);
69
+ return (0, rxjs_1.of)(e);
70
+ }), (0, rxjs_1.take)(1), (0, rxjs_1.switchMap)(it => { var _a; return (_a = (0, rxjs_1.forkJoin)(description.after.map(after => after())).pipe((0, rxjs_1.last)())) !== null && _a !== void 0 ? _a : (0, rxjs_1.of)(it); }), (0, rxjs_1.finalize)(() => process.exit(0))));
71
+ });
72
+ });
73
+ }
74
+ }
75
+ exports.Script = Script;
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.buildDirectory = void 0;
3
+ exports.buildDirectory = buildDirectory;
4
4
  const path_1 = require("path");
5
5
  const shared_1 = require("../../shared");
6
6
  function buildDirectory() {
7
7
  return (0, path_1.join)(process.cwd(), (0, shared_1.workingDirectory)(), 'build');
8
8
  }
9
- exports.buildDirectory = buildDirectory;
@@ -0,0 +1,5 @@
1
+ export default function (name: string, options: {
2
+ id?: string;
3
+ recording?: boolean;
4
+ }): Promise<void>;
5
+ //# sourceMappingURL=live.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live.d.ts","sourceRoot":"","sources":["../../src/cli/live.ts"],"names":[],"mappings":"AAMA,yBACE,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,iBAa9C"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.default = default_1;
16
+ const build_1 = __importDefault(require("../cli/build"));
17
+ const session_1 = require("../session");
18
+ const use_execution_mode_1 = require("../use-execution-mode");
19
+ const script_1 = require("./internal/script");
20
+ function default_1(name, options) {
21
+ return __awaiter(this, void 0, void 0, function* () {
22
+ var _a, _b;
23
+ if (yield (0, build_1.default)()) {
24
+ return;
25
+ }
26
+ const script = new script_1.Script(name, [
27
+ session_1.useSession.options({ id: (_a = options.id) !== null && _a !== void 0 ? _a : Date.now().toString() }),
28
+ use_execution_mode_1.useExecutionMode.liveOptions({ recording: (_b = options.recording) !== null && _b !== void 0 ? _b : false })
29
+ ]);
30
+ const output = yield script.run();
31
+ console.log(output);
32
+ });
33
+ }
@@ -0,0 +1,5 @@
1
+ export default function (name: string, options: {
2
+ id?: string;
3
+ recording?: boolean;
4
+ }): Promise<void>;
5
+ //# sourceMappingURL=paper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paper.d.ts","sourceRoot":"","sources":["../../src/cli/paper.ts"],"names":[],"mappings":"AAMA,yBACE,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,iBAa9C"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.default = default_1;
16
+ const build_1 = __importDefault(require("../cli/build"));
17
+ const session_1 = require("../session");
18
+ const use_execution_mode_1 = require("../use-execution-mode");
19
+ const script_1 = require("./internal/script");
20
+ function default_1(name, options) {
21
+ return __awaiter(this, void 0, void 0, function* () {
22
+ var _a, _b;
23
+ if (yield (0, build_1.default)()) {
24
+ return;
25
+ }
26
+ const script = new script_1.Script(name, [
27
+ session_1.useSession.options({ id: (_a = options.id) !== null && _a !== void 0 ? _a : Date.now().toString() }),
28
+ use_execution_mode_1.useExecutionMode.paperOptions({ recording: (_b = options.recording) !== null && _b !== void 0 ? _b : false })
29
+ ]);
30
+ const output = yield script.run();
31
+ console.log(output);
32
+ });
33
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../src/cli/pull.ts"],"names":[],"mappings":"AAKA,yBAA+B,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAS5E"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.default = default_1;
16
+ const build_1 = __importDefault(require("../cli/build"));
17
+ const use_execution_mode_1 = require("../use-execution-mode");
18
+ const script_1 = require("./internal/script");
19
+ function default_1(name, instrument, options) {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ if (yield (0, build_1.default)()) {
22
+ return;
23
+ }
24
+ const script = new script_1.Script(name, [use_execution_mode_1.useExecutionMode.idleOptions()]);
25
+ //const output = await script.run();
26
+ //console.log(output);
27
+ });
28
+ }
@@ -0,0 +1,6 @@
1
+ export default function (name: string, options: {
2
+ id?: string;
3
+ from?: string;
4
+ to?: string;
5
+ }): Promise<void>;
6
+ //# sourceMappingURL=replay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replay.d.ts","sourceRoot":"","sources":["../../src/cli/replay.ts"],"names":[],"mappings":"AAOA,yBACE,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAE,iBAiBrD"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.default = default_1;
16
+ const build_1 = __importDefault(require("../cli/build"));
17
+ const replay_1 = require("../replay");
18
+ const session_1 = require("../session");
19
+ const use_execution_mode_1 = require("../use-execution-mode");
20
+ const script_1 = require("./internal/script");
21
+ function default_1(name, options) {
22
+ return __awaiter(this, void 0, void 0, function* () {
23
+ var _a;
24
+ if (yield (0, build_1.default)()) {
25
+ return;
26
+ }
27
+ const from = options.from ? new Date(options.from).getTime() : 0;
28
+ const to = options.to ? new Date(options.to).getTime() : Number.MAX_VALUE;
29
+ const script = new script_1.Script(name, [
30
+ session_1.useSession.options({ id: (_a = options.id) !== null && _a !== void 0 ? _a : Date.now().toString() }),
31
+ (0, replay_1.replayOptions)({ from, to }),
32
+ use_execution_mode_1.useExecutionMode.replayOptions()
33
+ ]);
34
+ const output = yield script.run();
35
+ console.log(output);
36
+ });
37
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"distinct-until-timesamp-changed.d.ts","sourceRoot":"","sources":["../../src/component/distinct-until-timesamp-changed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,UAAU,EAAO,MAAM,MAAM,CAAC;AAE/C,wBAAgB,6BAA6B,CAAC,CAAC,SAAS;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,cAG3D,WAAW,CAAC,CAAC,mBAK9B"}
1
+ {"version":3,"file":"distinct-until-timesamp-changed.d.ts","sourceRoot":"","sources":["../../src/component/distinct-until-timesamp-changed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,UAAU,EAAO,MAAM,MAAM,CAAC;AAE/C,wBAAgB,6BAA6B,CAAC,CAAC,SAAS;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,cAG3D,UAAU,CAAC,CAAC,CAAC,mBAK9B"}
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.distinctUntilTimestampChanged = void 0;
3
+ exports.distinctUntilTimestampChanged = distinctUntilTimestampChanged;
4
4
  const rxjs_1 = require("rxjs");
5
5
  function distinctUntilTimestampChanged() {
6
6
  let prevTimestamp;
7
7
  return (stream) => stream.pipe((0, rxjs_1.filter)(it => prevTimestamp === undefined || it.timestamp > prevTimestamp), (0, rxjs_1.tap)(it => (prevTimestamp = it.timestamp)));
8
8
  }
9
- exports.distinctUntilTimestampChanged = distinctUntilTimestampChanged;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ohlc-operator.d.ts","sourceRoot":"","sources":["../../src/component/ohlc-operator.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,UAAU,EAKX,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,IAAI,EAAM,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAsBtC,wBAAgB,IAAI,CAAC,CAAC,SAAS;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EAClD,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,EACrB,iBAAiB,CAAC,EAAE,IAAI,YAEC,UAAU,CAAC,CAAC,CAAC,KAAG,UAAU,CAAC,IAAI,CAAC,CAmC1D;AAED,wBAAgB,SAAS,CAAC,CAAC,SAAS;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,EACvD,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,EACrB,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,aAEA,UAAU,CAAC,CAAC,CAAC,KAAG,UAAU,CAAC,IAAI,CAAC,CAY3D;AAED,wBAAgB,aAAa,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,CAwB9E"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ohlcCompleted = exports.mergeOhlc = exports.ohlc = void 0;
3
+ exports.ohlc = ohlc;
4
+ exports.mergeOhlc = mergeOhlc;
5
+ exports.ohlcCompleted = ohlcCompleted;
4
6
  const rxjs_1 = require("rxjs");
5
7
  const component_1 = require("../component");
6
8
  function aggregate(candle, timeframe, value, timestamp) {
@@ -42,13 +44,11 @@ function ohlc(timeframe, fn, candleToStartWith) {
42
44
  }), (0, rxjs_1.mergeMap)(it => it), (0, rxjs_1.share)());
43
45
  };
44
46
  }
45
- exports.ohlc = ohlc;
46
47
  function mergeOhlc(timeframe, fn, history$) {
47
48
  return function (source$) {
48
49
  return (0, rxjs_1.concat)(history$.pipe((0, rxjs_1.skipLast)(1)), history$.pipe((0, rxjs_1.last)(), (0, rxjs_1.switchMap)(lastHistoricalCandle => source$.pipe(ohlc(timeframe, fn, lastHistoricalCandle))), (0, rxjs_1.share)()));
49
50
  };
50
51
  }
51
- exports.mergeOhlc = mergeOhlc;
52
52
  function ohlcCompleted() {
53
53
  let currCandle;
54
54
  return (source) => source.pipe((0, rxjs_1.map)(it => {
@@ -66,4 +66,3 @@ function ohlcCompleted() {
66
66
  }
67
67
  }), (0, rxjs_1.filter)(it => it !== undefined), (0, rxjs_1.share)());
68
68
  }
69
- exports.ohlcCompleted = ohlcCompleted;
@@ -1 +1 @@
1
- {"version":3,"file":"ohlc.d.ts","sourceRoot":"","sources":["../../src/component/ohlc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEjD,qBAAa,IAAI;IAEN,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,GAAG,EAAE,OAAO;IACZ,KAAK,EAAE,OAAO;IACd,MAAM,CAAC;gBALP,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,OAAO,EACd,MAAM,CAAC,qBAAS;IAGzB,KAAK,CAAC,KAAK,EAAE,OAAO;CAKrB"}
1
+ {"version":3,"file":"ohlc.d.ts","sourceRoot":"","sources":["../../src/component/ohlc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEjD,qBAAa,IAAI;IAEN,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,GAAG,EAAE,OAAO;IACZ,KAAK,EAAE,OAAO;IACd,MAAM,CAAC,EAAE,OAAO;gBALhB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,OAAO,EACb,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,OAAO,EACd,MAAM,CAAC,EAAE,OAAO,YAAA;IAGzB,KAAK,CAAC,KAAK,EAAE,OAAO;CAKrB"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.tf = exports.Timeframe = void 0;
3
+ exports.Timeframe = void 0;
4
+ exports.tf = tf;
4
5
  class Timeframe {
5
6
  }
7
+ exports.Timeframe = Timeframe;
6
8
  Timeframe.S1 = 1000;
7
9
  Timeframe.M1 = Timeframe.S1 * 60;
8
10
  Timeframe.M5 = Timeframe.M1 * 5;
@@ -14,8 +16,6 @@ Timeframe.H6 = Timeframe.H1 * 6;
14
16
  Timeframe.H12 = Timeframe.H6 * 2;
15
17
  Timeframe.D1 = Timeframe.H12 * 2;
16
18
  Timeframe.W1 = Timeframe.D1 * 7;
17
- exports.Timeframe = Timeframe;
18
19
  function tf(timestamp, timeframe) {
19
20
  return timestamp - (timestamp % timeframe);
20
21
  }
21
- exports.tf = tf;
@@ -1,15 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.core = void 0;
3
+ exports.core = core;
4
4
  const use_memo_1 = require("./use-memo");
5
5
  const storage_1 = require("./storage");
6
6
  const use_storage_factory_1 = require("./storage/use-storage-factory");
7
7
  const use_execution_mode_1 = require("./use-execution-mode");
8
8
  function core() {
9
9
  return [
10
- (0, use_memo_1.memo)(),
11
- (0, use_execution_mode_1.paperExecutionMode)({ recording: false }),
12
- (0, use_storage_factory_1.storage)(new storage_1.InMemoryStorageFactory())
10
+ use_memo_1.useMemo.options(),
11
+ use_execution_mode_1.useExecutionMode.paperOptions({ recording: false }),
12
+ use_storage_factory_1.useStorageFactory.options(new storage_1.InMemoryStorageFactory())
13
13
  ];
14
14
  }
15
- exports.core = core;
package/lib/index.d.ts ADDED
@@ -0,0 +1,21 @@
1
+ export * from './component';
2
+ export * from './shared';
3
+ export * from './storage';
4
+ export * from './module';
5
+ export * from './use-memo';
6
+ export * from './use-timestamp';
7
+ export * from './simulator';
8
+ export * from './make-test-module';
9
+ export * from './core';
10
+ export * from './use-execution-mode';
11
+ export * from './storage';
12
+ export * from './use-logger';
13
+ export * from './replay';
14
+ export * from './use-socket';
15
+ export * from './when-socket';
16
+ export * from './with-request';
17
+ export * from './with-memo';
18
+ export * from './session';
19
+ export * from './strategy';
20
+ export * from './operators';
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,WAAW,CAAC;AAC1B,cAAc,yBAAyB,CAAC;AACxC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC"}
@@ -23,21 +23,14 @@ __exportStar(require("./use-timestamp"), exports);
23
23
  __exportStar(require("./simulator"), exports);
24
24
  __exportStar(require("./make-test-module"), exports);
25
25
  __exportStar(require("./core"), exports);
26
- __exportStar(require("./use-state"), exports);
27
- __exportStar(require("./replay/use-replay-coordinator"), exports);
28
26
  __exportStar(require("./use-execution-mode"), exports);
29
- __exportStar(require("./storage/use-storage"), exports);
30
- __exportStar(require("./storage/use-cache"), exports);
27
+ __exportStar(require("./storage"), exports);
31
28
  __exportStar(require("./use-logger"), exports);
32
29
  __exportStar(require("./replay"), exports);
33
- __exportStar(require("./replay/use-replay-coordinator"), exports);
34
30
  __exportStar(require("./use-socket"), exports);
35
- __exportStar(require("./use-request"), exports);
36
- __exportStar(require("./defined"), exports);
37
- __exportStar(require("./as-readonly"), exports);
38
- __exportStar(require("./use"), exports);
31
+ __exportStar(require("./when-socket"), exports);
32
+ __exportStar(require("./with-request"), exports);
33
+ __exportStar(require("./with-memo"), exports);
39
34
  __exportStar(require("./session"), exports);
40
- __exportStar(require("./exclude"), exports);
41
- __exportStar(require("./use-lock"), exports);
42
- __exportStar(require("./strat"), exports);
43
- __exportStar(require("./missed"), exports);
35
+ __exportStar(require("./strategy"), exports);
36
+ __exportStar(require("./operators"), exports);
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.commissionPercentOf = exports.Commission = void 0;
3
+ exports.Commission = void 0;
4
+ exports.commissionPercentOf = commissionPercentOf;
4
5
  const shared_1 = require("../../shared");
5
6
  class Commission {
6
7
  constructor(makerRate, takerRate) {
@@ -20,9 +21,8 @@ class Commission {
20
21
  return value.minus(this.calculateTakerFee(value));
21
22
  }
22
23
  }
23
- Commission.Zero = commissionPercentOf({ maker: shared_1.d.Zero, taker: shared_1.d.Zero });
24
24
  exports.Commission = Commission;
25
+ Commission.Zero = commissionPercentOf({ maker: shared_1.d.Zero, taker: shared_1.d.Zero });
25
26
  function commissionPercentOf(fees) {
26
27
  return new Commission(fees.maker.div(100.0), fees.taker.div(100.0));
27
28
  }
28
- exports.commissionPercentOf = commissionPercentOf;
@@ -1,6 +1,9 @@
1
1
  import { Asset, AssetSelector } from '../asset';
2
2
  import { Commission } from './commission/commission';
3
3
  export declare const InstrumentSelectorSeparator = "-";
4
+ export declare class MissingInstrumentError extends Error {
5
+ constructor(instrument: InstrumentSelector);
6
+ }
4
7
  export declare class InstrumentSelector {
5
8
  readonly id: string;
6
9
  readonly base: AssetSelector;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instrument.d.ts","sourceRoot":"","sources":["../../src/instrument/instrument.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAA0B,MAAM,YAAY,CAAC;AAG1E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAE/C,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,UAAU,EAAE,kBAAkB;CAG3C;AAED,qBAAa,kBAAkB;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;gBAElB,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAOxD,QAAQ;CAGT;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,kBAAkB;IAKvC,SAAS,EAAE,MAAM;aACN,IAAI,EAAE,KAAK;aACX,KAAK,EAAE,KAAK;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM;IACb,UAAU,EAAE,UAAU;IAR/B,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;IACvC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAa;gBAGhC,SAAS,EAAE,MAAM,EACN,IAAI,EAAE,KAAK,EACX,KAAK,EAAE,KAAK,EACrB,GAAG,EAAE,MAAM,EACb,UAAU,EAAE,UAAU;CAQhC;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CAYjE"}
@@ -1,9 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.instrumentOf = exports.Instrument = exports.InstrumentSelector = exports.InstrumentSelectorSeparator = void 0;
3
+ exports.Instrument = exports.InstrumentSelector = exports.MissingInstrumentError = exports.InstrumentSelectorSeparator = void 0;
4
+ exports.instrumentOf = instrumentOf;
4
5
  const asset_1 = require("../asset");
5
6
  const component_1 = require("../component");
6
7
  exports.InstrumentSelectorSeparator = '-';
8
+ class MissingInstrumentError extends Error {
9
+ constructor(instrument) {
10
+ super(`Missing instrument: ${instrument}`);
11
+ }
12
+ }
13
+ exports.MissingInstrumentError = MissingInstrumentError;
7
14
  class InstrumentSelector {
8
15
  constructor(base, quote, adapter) {
9
16
  this.base = new asset_1.AssetSelector(base.toLowerCase(), adapter.toLowerCase());
@@ -44,4 +51,3 @@ function instrumentOf(selector) {
44
51
  }
45
52
  return new InstrumentSelector(baseAssetName, quoteAssetName, adapterName);
46
53
  }
47
- exports.instrumentOf = instrumentOf;
@@ -0,0 +1,13 @@
1
+ import { Observable, Subject } from 'rxjs';
2
+ import { Dependency } from './module';
3
+ export declare function makeTestModule(dependencies: Dependency[]): Promise<{
4
+ act: <T>(func: () => T) => T;
5
+ get: <T>(token: import("tsyringe").InjectionToken<T>) => T;
6
+ }>;
7
+ type MockableFunction = (...args: any[]) => any;
8
+ export declare const mockedFunc: <Func extends MockableFunction>(mockedFunc: Func) => jest.MockedFunction<typeof mockedFunc>;
9
+ export declare function toArray<T>(observable: Observable<T>): (Error | T)[];
10
+ export type InferObservableType<T> = T extends Observable<infer U> ? U : never;
11
+ export declare function mockSubject<T extends jest.FunctionProperties<Required<T>>, M extends keyof jest.FunctionProperties<Required<T>>>(object: T, method: M): Subject<InferObservableType<ReturnType<jest.FunctionProperties<Required<T>>[M]>>>;
12
+ export {};
13
+ //# sourceMappingURL=make-test-module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"make-test-module.d.ts","sourceRoot":"","sources":["../src/make-test-module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG3C,OAAO,EAAE,UAAU,EAAU,MAAM,aAAa,CAAC;AAEjD,wBAAsB,cAAc,CAAC,YAAY,EAAE,UAAU,EAAE;;;GAS9D;AAED,KAAK,gBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;AAEhD,eAAO,MAAM,UAAU,GAAI,IAAI,SAAS,gBAAgB,cAAc,IAAI,KAC1D,IAAI,CAAC,cAAc,CAAC,OAAO,UAAU,CAAC,CAAC;AAEvD,wBAAgB,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,iBAyBnD;AAED,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAE/E,wBAAgB,WAAW,CACzB,CAAC,SAAS,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAC9C,CAAC,SAAS,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACpD,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,qFAQrB"}