@livefolio/sdk 0.2.12 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/README.md +277 -84
  2. package/dist/index.d.ts +397 -23
  3. package/dist/index.js +1375 -51
  4. package/dist/index.js.map +1 -1
  5. package/package.json +36 -35
  6. package/dist/auth/client.d.ts +0 -4
  7. package/dist/auth/client.d.ts.map +0 -1
  8. package/dist/auth/client.js +0 -37
  9. package/dist/auth/client.js.map +0 -1
  10. package/dist/auth/index.d.ts +0 -3
  11. package/dist/auth/index.d.ts.map +0 -1
  12. package/dist/auth/index.js +0 -6
  13. package/dist/auth/index.js.map +0 -1
  14. package/dist/auth/types.d.ts +0 -9
  15. package/dist/auth/types.d.ts.map +0 -1
  16. package/dist/auth/types.js +0 -3
  17. package/dist/auth/types.js.map +0 -1
  18. package/dist/index.d.ts.map +0 -1
  19. package/dist/market/client.d.ts +0 -4
  20. package/dist/market/client.d.ts.map +0 -1
  21. package/dist/market/client.js +0 -137
  22. package/dist/market/client.js.map +0 -1
  23. package/dist/market/index.d.ts +0 -5
  24. package/dist/market/index.d.ts.map +0 -1
  25. package/dist/market/index.js +0 -9
  26. package/dist/market/index.js.map +0 -1
  27. package/dist/market/trackedTickers.d.ts +0 -4
  28. package/dist/market/trackedTickers.d.ts.map +0 -1
  29. package/dist/market/trackedTickers.js +0 -256
  30. package/dist/market/trackedTickers.js.map +0 -1
  31. package/dist/market/types.d.ts +0 -29
  32. package/dist/market/types.d.ts.map +0 -1
  33. package/dist/market/types.js +0 -3
  34. package/dist/market/types.js.map +0 -1
  35. package/dist/portfolio/client.d.ts +0 -4
  36. package/dist/portfolio/client.d.ts.map +0 -1
  37. package/dist/portfolio/client.js +0 -13
  38. package/dist/portfolio/client.js.map +0 -1
  39. package/dist/portfolio/index.d.ts +0 -5
  40. package/dist/portfolio/index.d.ts.map +0 -1
  41. package/dist/portfolio/index.js +0 -26
  42. package/dist/portfolio/index.js.map +0 -1
  43. package/dist/portfolio/rebalance.d.ts +0 -62
  44. package/dist/portfolio/rebalance.d.ts.map +0 -1
  45. package/dist/portfolio/rebalance.js +0 -205
  46. package/dist/portfolio/rebalance.js.map +0 -1
  47. package/dist/portfolio/symbols.d.ts +0 -13
  48. package/dist/portfolio/symbols.d.ts.map +0 -1
  49. package/dist/portfolio/symbols.js +0 -112
  50. package/dist/portfolio/symbols.js.map +0 -1
  51. package/dist/portfolio/types.d.ts +0 -13
  52. package/dist/portfolio/types.d.ts.map +0 -1
  53. package/dist/portfolio/types.js +0 -3
  54. package/dist/portfolio/types.js.map +0 -1
  55. package/dist/strategy/backtest.d.ts +0 -6
  56. package/dist/strategy/backtest.d.ts.map +0 -1
  57. package/dist/strategy/backtest.js +0 -698
  58. package/dist/strategy/backtest.js.map +0 -1
  59. package/dist/strategy/cache.d.ts +0 -8
  60. package/dist/strategy/cache.d.ts.map +0 -1
  61. package/dist/strategy/cache.js +0 -314
  62. package/dist/strategy/cache.js.map +0 -1
  63. package/dist/strategy/client.d.ts +0 -4
  64. package/dist/strategy/client.d.ts.map +0 -1
  65. package/dist/strategy/client.js +0 -29
  66. package/dist/strategy/client.js.map +0 -1
  67. package/dist/strategy/evaluate.d.ts +0 -10
  68. package/dist/strategy/evaluate.d.ts.map +0 -1
  69. package/dist/strategy/evaluate.js +0 -528
  70. package/dist/strategy/evaluate.js.map +0 -1
  71. package/dist/strategy/get.d.ts +0 -5
  72. package/dist/strategy/get.d.ts.map +0 -1
  73. package/dist/strategy/get.js +0 -25
  74. package/dist/strategy/get.js.map +0 -1
  75. package/dist/strategy/index.d.ts +0 -14
  76. package/dist/strategy/index.d.ts.map +0 -1
  77. package/dist/strategy/index.js +0 -42
  78. package/dist/strategy/index.js.map +0 -1
  79. package/dist/strategy/livefolio.d.ts +0 -25
  80. package/dist/strategy/livefolio.d.ts.map +0 -1
  81. package/dist/strategy/livefolio.js +0 -67
  82. package/dist/strategy/livefolio.js.map +0 -1
  83. package/dist/strategy/performance.d.ts +0 -17
  84. package/dist/strategy/performance.d.ts.map +0 -1
  85. package/dist/strategy/performance.js +0 -57
  86. package/dist/strategy/performance.js.map +0 -1
  87. package/dist/strategy/rules.d.ts +0 -3
  88. package/dist/strategy/rules.d.ts.map +0 -1
  89. package/dist/strategy/rules.js +0 -95
  90. package/dist/strategy/rules.js.map +0 -1
  91. package/dist/strategy/stream.d.ts +0 -5
  92. package/dist/strategy/stream.d.ts.map +0 -1
  93. package/dist/strategy/stream.js +0 -58
  94. package/dist/strategy/stream.js.map +0 -1
  95. package/dist/strategy/symbols.d.ts +0 -4
  96. package/dist/strategy/symbols.d.ts.map +0 -1
  97. package/dist/strategy/symbols.js +0 -41
  98. package/dist/strategy/symbols.js.map +0 -1
  99. package/dist/strategy/time.d.ts +0 -9
  100. package/dist/strategy/time.d.ts.map +0 -1
  101. package/dist/strategy/time.js +0 -28
  102. package/dist/strategy/time.js.map +0 -1
  103. package/dist/strategy/types.d.ts +0 -200
  104. package/dist/strategy/types.d.ts.map +0 -1
  105. package/dist/strategy/types.js +0 -3
  106. package/dist/strategy/types.js.map +0 -1
  107. package/dist/types.d.ts +0 -4
  108. package/dist/types.d.ts.map +0 -1
  109. package/dist/types.js +0 -3
  110. package/dist/types.js.map +0 -1
@@ -1,4 +0,0 @@
1
- export declare const TRACKED_TICKERS_DESCRIPTION = "Curated default backtest/ingestion universe in Yahoo Finance symbol format.";
2
- export declare const TRACKED_TICKERS_YFINANCE: readonly ["SPY", "QQQ", "IWM", "DIA", "TLT", "IEF", "SHY", "BIL", "GLD", "SLV", "USO", "UUP", "VNQ", "HYG", "LQD", "XLE", "XLF", "XLK", "XLV", "XLI", "XLP", "XLY", "XLU", "XLB", "XLRE", "^GSPC", "^NDX", "^DJI", "^RUT", "^VIX", "^VIX3M", "^IRX", "^FVX", "^TNX", "^TYX", "TQQQ", "SOXL", "QLD", "SSO", "SPXL", "TSLL", "UPRO", "NVDL", "TECL", "GDXU", "FAS", "BULZ", "USD", "FNGU", "TNA", "NUGT", "KORU", "GGLL", "UDOW", "ROM", "JNUG", "YINN", "UYG", "MSFU", "CONL", "NVDU", "DFEN", "AMDL", "NVDX", "LABU", "FNGO", "DDM", "DPST", "NAIL", "MSTU", "SPYU", "AMZU", "GUSH", "URTY", "MSTX", "ERX", "UWM", "FBL", "CWEB", "AVGX", "SPUU", "SHNY", "IONX", "EDC", "SMCX", "XDEC", "CURE", "MVV", "AAPU", "OKLL", "XJUN", "BRZU", "CHAU", "FNGG", "ROBN", "BABX", "XSEP", "DIG", "WEBL", "XBJA", "RXL", "BIB", "MIDU", "XDSQ", "HIMZ", "XBOC", "INDL", "EURL", "GOOX", "DUSL", "HIBL", "UTSL", "EET", "NRGU", "NFLU", "AMZZ", "UYM", "MSOX", "UXI", "EFO", "UMDD", "TSL", "RETL", "UBOT", "BNKU", "MEXX", "SAA", "TARK", "GMEU", "SMHB", "RIOX", "MSFX", "UPW", "WANT", "XTJL", "EZJ", "XTAP", "XTOC", "AVGU", "AAPB", "TPOR", "QTOC", "XTJA", "KPDD", "PILL", "QTJA", "UGE", "UPV", "HOOX", "XPP", "UCC", "DJTU", "RBLU", "MLPR", "LTL", "AAPX", "SCDL", "FLYU", "BDCX", "HDLB", "QULL", "MTUL", "IWDL", "IWML", "IWFL", "UCYB", "USML", "UBR", "CARU", "ARMU", "KBAB", "SKYU", "KBDU", "GDE", "RSSB", "RSST", "ZROZ", "AI", "TMF", "ALLW", "SIG", "UVXY", "VT", "ASGM", "BITX", "CTAP", "DBMF", "KMLM", "MA", "MSCI", "NTSX", "RSI", "RSSX", "SQQQ", "TFSA", "UGL", "UK", "AHLT", "ARQ", "AVDV", "BLNDX", "CAOS", "DAX", "DRIP", "EDV", "EMF", "ETHU", "EU", "FANG", "GDT", "GEM", "HFEQ", "HFGM", "HFMF", "IGV", "IMO", "LBRT", "LSE", "METU", "MIX", "MOOD", "NQ", "NTSE", "OIL", "ORR", "PLTU", "QDSIX", "QMNNX", "RKLX", "RKLZ", "RS", "RSBA", "RSBT", "RYTTX", "SARK", "SDMF", "SEC", "SIL", "SPLS", "TMV", "TSDD", "VOO", "VS", "VXUS", "WAY", "WTLS", "XQQI", "XSPI", "YEAR"];
3
- export type TrackedTicker = (typeof TRACKED_TICKERS_YFINANCE)[number];
4
- //# sourceMappingURL=trackedTickers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trackedTickers.d.ts","sourceRoot":"","sources":["../../src/market/trackedTickers.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,gFACuC,CAAC;AAEhF,eAAO,MAAM,wBAAwB,83DA0P3B,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -1,256 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TRACKED_TICKERS_YFINANCE = exports.TRACKED_TICKERS_DESCRIPTION = void 0;
4
- exports.TRACKED_TICKERS_DESCRIPTION = 'Curated default backtest/ingestion universe in Yahoo Finance symbol format.';
5
- exports.TRACKED_TICKERS_YFINANCE = [
6
- 'SPY',
7
- 'QQQ',
8
- 'IWM',
9
- 'DIA',
10
- 'TLT',
11
- 'IEF',
12
- 'SHY',
13
- 'BIL',
14
- 'GLD',
15
- 'SLV',
16
- 'USO',
17
- 'UUP',
18
- 'VNQ',
19
- 'HYG',
20
- 'LQD',
21
- 'XLE',
22
- 'XLF',
23
- 'XLK',
24
- 'XLV',
25
- 'XLI',
26
- 'XLP',
27
- 'XLY',
28
- 'XLU',
29
- 'XLB',
30
- 'XLRE',
31
- '^GSPC',
32
- '^NDX',
33
- '^DJI',
34
- '^RUT',
35
- '^VIX',
36
- '^VIX3M',
37
- '^IRX',
38
- '^FVX',
39
- '^TNX',
40
- '^TYX',
41
- 'TQQQ',
42
- 'SOXL',
43
- 'QLD',
44
- 'SSO',
45
- 'SPXL',
46
- 'TSLL',
47
- 'UPRO',
48
- 'NVDL',
49
- 'TECL',
50
- 'GDXU',
51
- 'FAS',
52
- 'BULZ',
53
- 'USD',
54
- 'FNGU',
55
- 'TNA',
56
- 'NUGT',
57
- 'KORU',
58
- 'GGLL',
59
- 'UDOW',
60
- 'ROM',
61
- 'JNUG',
62
- 'YINN',
63
- 'UYG',
64
- 'MSFU',
65
- 'CONL',
66
- 'NVDU',
67
- 'DFEN',
68
- 'AMDL',
69
- 'NVDX',
70
- 'LABU',
71
- 'FNGO',
72
- 'DDM',
73
- 'DPST',
74
- 'NAIL',
75
- 'MSTU',
76
- 'SPYU',
77
- 'AMZU',
78
- 'GUSH',
79
- 'URTY',
80
- 'MSTX',
81
- 'ERX',
82
- 'UWM',
83
- 'FBL',
84
- 'CWEB',
85
- 'AVGX',
86
- 'SPUU',
87
- 'SHNY',
88
- 'IONX',
89
- 'EDC',
90
- 'SMCX',
91
- 'XDEC',
92
- 'CURE',
93
- 'MVV',
94
- 'AAPU',
95
- 'OKLL',
96
- 'XJUN',
97
- 'BRZU',
98
- 'CHAU',
99
- 'FNGG',
100
- 'ROBN',
101
- 'BABX',
102
- 'XSEP',
103
- 'DIG',
104
- 'WEBL',
105
- 'XBJA',
106
- 'RXL',
107
- 'BIB',
108
- 'MIDU',
109
- 'XDSQ',
110
- 'HIMZ',
111
- 'XBOC',
112
- 'INDL',
113
- 'EURL',
114
- 'GOOX',
115
- 'DUSL',
116
- 'HIBL',
117
- 'UTSL',
118
- 'EET',
119
- 'NRGU',
120
- 'NFLU',
121
- 'AMZZ',
122
- 'UYM',
123
- 'MSOX',
124
- 'UXI',
125
- 'EFO',
126
- 'UMDD',
127
- 'TSL',
128
- 'RETL',
129
- 'UBOT',
130
- 'BNKU',
131
- 'MEXX',
132
- 'SAA',
133
- 'TARK',
134
- 'GMEU',
135
- 'SMHB',
136
- 'RIOX',
137
- 'MSFX',
138
- 'UPW',
139
- 'WANT',
140
- 'XTJL',
141
- 'EZJ',
142
- 'XTAP',
143
- 'XTOC',
144
- 'AVGU',
145
- 'AAPB',
146
- 'TPOR',
147
- 'QTOC',
148
- 'XTJA',
149
- 'KPDD',
150
- 'PILL',
151
- 'QTJA',
152
- 'UGE',
153
- 'UPV',
154
- 'HOOX',
155
- 'XPP',
156
- 'UCC',
157
- 'DJTU',
158
- 'RBLU',
159
- 'MLPR',
160
- 'LTL',
161
- 'AAPX',
162
- 'SCDL',
163
- 'FLYU',
164
- 'BDCX',
165
- 'HDLB',
166
- 'QULL',
167
- 'MTUL',
168
- 'IWDL',
169
- 'IWML',
170
- 'IWFL',
171
- 'UCYB',
172
- 'USML',
173
- 'UBR',
174
- 'CARU',
175
- 'ARMU',
176
- 'KBAB',
177
- 'SKYU',
178
- 'KBDU',
179
- 'GDE',
180
- 'RSSB',
181
- 'RSST',
182
- 'ZROZ',
183
- 'AI',
184
- 'TMF',
185
- 'ALLW',
186
- 'SIG',
187
- 'UVXY',
188
- 'VT',
189
- 'ASGM',
190
- 'BITX',
191
- 'CTAP',
192
- 'DBMF',
193
- 'KMLM',
194
- 'MA',
195
- 'MSCI',
196
- 'NTSX',
197
- 'RSI',
198
- 'RSSX',
199
- 'SQQQ',
200
- 'TFSA',
201
- 'UGL',
202
- 'UK',
203
- 'AHLT',
204
- 'ARQ',
205
- 'AVDV',
206
- 'BLNDX',
207
- 'CAOS',
208
- 'DAX',
209
- 'DRIP',
210
- 'EDV',
211
- 'EMF',
212
- 'ETHU',
213
- 'EU',
214
- 'FANG',
215
- 'GDT',
216
- 'GEM',
217
- 'HFEQ',
218
- 'HFGM',
219
- 'HFMF',
220
- 'IGV',
221
- 'IMO',
222
- 'LBRT',
223
- 'LSE',
224
- 'METU',
225
- 'MIX',
226
- 'MOOD',
227
- 'NQ',
228
- 'NTSE',
229
- 'OIL',
230
- 'ORR',
231
- 'PLTU',
232
- 'QDSIX',
233
- 'QMNNX',
234
- 'RKLX',
235
- 'RKLZ',
236
- 'RS',
237
- 'RSBA',
238
- 'RSBT',
239
- 'RYTTX',
240
- 'SARK',
241
- 'SDMF',
242
- 'SEC',
243
- 'SIL',
244
- 'SPLS',
245
- 'TMV',
246
- 'TSDD',
247
- 'VOO',
248
- 'VS',
249
- 'VXUS',
250
- 'WAY',
251
- 'WTLS',
252
- 'XQQI',
253
- 'XSPI',
254
- 'YEAR',
255
- ];
256
- //# sourceMappingURL=trackedTickers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"trackedTickers.js","sourceRoot":"","sources":["../../src/market/trackedTickers.ts"],"names":[],"mappings":";;;AAAa,QAAA,2BAA2B,GACtC,6EAA6E,CAAC;AAEnE,QAAA,wBAAwB,GAAG;IACtC,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,IAAI;IACJ,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,IAAI;IACJ,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,IAAI;IACJ,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,IAAI;IACJ,MAAM;IACN,KAAK;IACL,MAAM;IACN,OAAO;IACP,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,IAAI;IACJ,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,IAAI;IACJ,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,OAAO;IACP,OAAO;IACP,MAAM;IACN,MAAM;IACN,IAAI;IACJ,MAAM;IACN,MAAM;IACN,OAAO;IACP,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,IAAI;IACJ,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;CACE,CAAC"}
@@ -1,29 +0,0 @@
1
- export interface Observation {
2
- timestamp: string;
3
- value: number;
4
- signalValue?: number;
5
- }
6
- export interface DualPrice {
7
- signal: number;
8
- execution: number;
9
- }
10
- export interface TradingDay {
11
- date: string;
12
- open: string;
13
- close: string;
14
- extended_open: string;
15
- extended_close: string;
16
- }
17
- export interface MarketModule {
18
- getSeries(symbol: string): Promise<Observation[]>;
19
- getBatchSeries(symbols: string[]): Promise<Record<string, Observation[]>>;
20
- getSeriesFromDb(symbol: string, startDate: string, endDate: string): Promise<Observation[]>;
21
- getBatchSeriesFromDb(symbols: string[], startDate: string, endDate: string): Promise<Record<string, Observation[]>>;
22
- getQuote(symbol: string): Promise<Observation>;
23
- getBatchQuotes(symbols: string[]): Promise<Record<string, Observation>>;
24
- getSignalAndExecutionPrices(symbol: string, date: string): Promise<DualPrice | null>;
25
- getBatchSignalAndExecutionPrices(symbols: string[], date: string): Promise<Record<string, DualPrice>>;
26
- getTradingDays(startDate: string, endDate: string): Promise<TradingDay[]>;
27
- getTradingDay(date: string): Promise<TradingDay | null>;
28
- }
29
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/market/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAE3B,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAClD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAC1E,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5F,oBAAoB,CAClB,OAAO,EAAE,MAAM,EAAE,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAG1C,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/C,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IAGxE,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IACrF,gCAAgC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAGtG,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC1E,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;CACzD"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/market/types.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- import type { TypedSupabaseClient } from '../types';
2
- import type { PortfolioModule } from './types';
3
- export declare function createPortfolio(_client: TypedSupabaseClient): PortfolioModule;
4
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/portfolio/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAI/C,wBAAgB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,eAAe,CAM7E"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createPortfolio = createPortfolio;
4
- const rebalance_1 = require("./rebalance");
5
- const symbols_1 = require("./symbols");
6
- function createPortfolio(_client) {
7
- return {
8
- buildRebalancePlan: rebalance_1.buildRebalancePlan,
9
- computePortfolioDriftPercentPoints: rebalance_1.computePortfolioDriftPercentPoints,
10
- mapTickerToTradable: symbols_1.mapTickerToTradable,
11
- };
12
- }
13
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/portfolio/client.ts"],"names":[],"mappings":";;AAKA,0CAMC;AATD,2CAAqF;AACrF,uCAAgD;AAEhD,SAAgB,eAAe,CAAC,OAA4B;IAC1D,OAAO;QACL,kBAAkB,EAAlB,8BAAkB;QAClB,kCAAkC,EAAlC,8CAAkC;QAClC,mBAAmB,EAAnB,6BAAmB;KACpB,CAAC;AACJ,CAAC"}
@@ -1,5 +0,0 @@
1
- export type { PortfolioModule } from './types';
2
- export { createPortfolio } from './client';
3
- export { buildRebalancePlan, computePortfolioDriftPercentPoints, type TradeOrder, type RebalancePlanInput, type RebalancePlan, PORTFOLIO_DRIFT_THRESHOLD_PERCENT_POINTS, REBALANCE_MIN_TRADE_VALUE, REBALANCE_QUANTITY_PRECISION, REBALANCE_WHOLE_SHARE_QUANTITY_PRECISION, REBALANCE_EPSILON, REBALANCE_CASH_RESERVE_PERCENT, REBALANCE_MIN_CASH_RESERVE_VALUE, REBALANCE_BUY_SLIPPAGE_BPS, REBALANCE_SELL_SLIPPAGE_BPS, REBALANCE_PER_ORDER_FEE, REBALANCE_CASH_SYMBOL, REBALANCE_CASH_SOURCE_SYMBOL, } from './rebalance';
4
- export { mapTickerToTradable, FRED_TRADABLE_MAP, BASE_TICKER_ALIASES, ETF_LEVERAGE_MAP, } from './symbols';
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/portfolio/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EACL,kBAAkB,EAClB,kCAAkC,EAClC,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,wCAAwC,EACxC,yBAAyB,EACzB,4BAA4B,EAC5B,wCAAwC,EACxC,iBAAiB,EACjB,8BAA8B,EAC9B,gCAAgC,EAChC,0BAA0B,EAC1B,2BAA2B,EAC3B,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,WAAW,CAAC"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ETF_LEVERAGE_MAP = exports.BASE_TICKER_ALIASES = exports.FRED_TRADABLE_MAP = exports.mapTickerToTradable = exports.REBALANCE_CASH_SOURCE_SYMBOL = exports.REBALANCE_CASH_SYMBOL = exports.REBALANCE_PER_ORDER_FEE = exports.REBALANCE_SELL_SLIPPAGE_BPS = exports.REBALANCE_BUY_SLIPPAGE_BPS = exports.REBALANCE_MIN_CASH_RESERVE_VALUE = exports.REBALANCE_CASH_RESERVE_PERCENT = exports.REBALANCE_EPSILON = exports.REBALANCE_WHOLE_SHARE_QUANTITY_PRECISION = exports.REBALANCE_QUANTITY_PRECISION = exports.REBALANCE_MIN_TRADE_VALUE = exports.PORTFOLIO_DRIFT_THRESHOLD_PERCENT_POINTS = exports.computePortfolioDriftPercentPoints = exports.buildRebalancePlan = exports.createPortfolio = void 0;
4
- var client_1 = require("./client");
5
- Object.defineProperty(exports, "createPortfolio", { enumerable: true, get: function () { return client_1.createPortfolio; } });
6
- var rebalance_1 = require("./rebalance");
7
- Object.defineProperty(exports, "buildRebalancePlan", { enumerable: true, get: function () { return rebalance_1.buildRebalancePlan; } });
8
- Object.defineProperty(exports, "computePortfolioDriftPercentPoints", { enumerable: true, get: function () { return rebalance_1.computePortfolioDriftPercentPoints; } });
9
- Object.defineProperty(exports, "PORTFOLIO_DRIFT_THRESHOLD_PERCENT_POINTS", { enumerable: true, get: function () { return rebalance_1.PORTFOLIO_DRIFT_THRESHOLD_PERCENT_POINTS; } });
10
- Object.defineProperty(exports, "REBALANCE_MIN_TRADE_VALUE", { enumerable: true, get: function () { return rebalance_1.REBALANCE_MIN_TRADE_VALUE; } });
11
- Object.defineProperty(exports, "REBALANCE_QUANTITY_PRECISION", { enumerable: true, get: function () { return rebalance_1.REBALANCE_QUANTITY_PRECISION; } });
12
- Object.defineProperty(exports, "REBALANCE_WHOLE_SHARE_QUANTITY_PRECISION", { enumerable: true, get: function () { return rebalance_1.REBALANCE_WHOLE_SHARE_QUANTITY_PRECISION; } });
13
- Object.defineProperty(exports, "REBALANCE_EPSILON", { enumerable: true, get: function () { return rebalance_1.REBALANCE_EPSILON; } });
14
- Object.defineProperty(exports, "REBALANCE_CASH_RESERVE_PERCENT", { enumerable: true, get: function () { return rebalance_1.REBALANCE_CASH_RESERVE_PERCENT; } });
15
- Object.defineProperty(exports, "REBALANCE_MIN_CASH_RESERVE_VALUE", { enumerable: true, get: function () { return rebalance_1.REBALANCE_MIN_CASH_RESERVE_VALUE; } });
16
- Object.defineProperty(exports, "REBALANCE_BUY_SLIPPAGE_BPS", { enumerable: true, get: function () { return rebalance_1.REBALANCE_BUY_SLIPPAGE_BPS; } });
17
- Object.defineProperty(exports, "REBALANCE_SELL_SLIPPAGE_BPS", { enumerable: true, get: function () { return rebalance_1.REBALANCE_SELL_SLIPPAGE_BPS; } });
18
- Object.defineProperty(exports, "REBALANCE_PER_ORDER_FEE", { enumerable: true, get: function () { return rebalance_1.REBALANCE_PER_ORDER_FEE; } });
19
- Object.defineProperty(exports, "REBALANCE_CASH_SYMBOL", { enumerable: true, get: function () { return rebalance_1.REBALANCE_CASH_SYMBOL; } });
20
- Object.defineProperty(exports, "REBALANCE_CASH_SOURCE_SYMBOL", { enumerable: true, get: function () { return rebalance_1.REBALANCE_CASH_SOURCE_SYMBOL; } });
21
- var symbols_1 = require("./symbols");
22
- Object.defineProperty(exports, "mapTickerToTradable", { enumerable: true, get: function () { return symbols_1.mapTickerToTradable; } });
23
- Object.defineProperty(exports, "FRED_TRADABLE_MAP", { enumerable: true, get: function () { return symbols_1.FRED_TRADABLE_MAP; } });
24
- Object.defineProperty(exports, "BASE_TICKER_ALIASES", { enumerable: true, get: function () { return symbols_1.BASE_TICKER_ALIASES; } });
25
- Object.defineProperty(exports, "ETF_LEVERAGE_MAP", { enumerable: true, get: function () { return symbols_1.ETF_LEVERAGE_MAP; } });
26
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/portfolio/index.ts"],"names":[],"mappings":";;;AACA,mCAA2C;AAAlC,yGAAA,eAAe,OAAA;AACxB,yCAkBqB;AAjBnB,+GAAA,kBAAkB,OAAA;AAClB,+HAAA,kCAAkC,OAAA;AAIlC,qIAAA,wCAAwC,OAAA;AACxC,sHAAA,yBAAyB,OAAA;AACzB,yHAAA,4BAA4B,OAAA;AAC5B,qIAAA,wCAAwC,OAAA;AACxC,8GAAA,iBAAiB,OAAA;AACjB,2HAAA,8BAA8B,OAAA;AAC9B,6HAAA,gCAAgC,OAAA;AAChC,uHAAA,0BAA0B,OAAA;AAC1B,wHAAA,2BAA2B,OAAA;AAC3B,oHAAA,uBAAuB,OAAA;AACvB,kHAAA,qBAAqB,OAAA;AACrB,yHAAA,4BAA4B,OAAA;AAE9B,qCAKmB;AAJjB,8GAAA,mBAAmB,OAAA;AACnB,4GAAA,iBAAiB,OAAA;AACjB,8GAAA,mBAAmB,OAAA;AACnB,2GAAA,gBAAgB,OAAA"}
@@ -1,62 +0,0 @@
1
- export interface TradeOrder {
2
- action: 'BUY' | 'SELL';
3
- symbol: string;
4
- quantity: number;
5
- estimatedPrice: number;
6
- estimatedValue: number;
7
- }
8
- export interface RebalancePlanInput {
9
- targetWeights: Record<string, number>;
10
- currentValues: Record<string, number>;
11
- prices: Record<string, number>;
12
- quantityPrecisionBySymbol?: Record<string, number>;
13
- cashValue: number;
14
- totalValue: number;
15
- portfolioDriftThresholdPercentPoints?: number;
16
- minTradeValue?: number;
17
- cashReservePercent?: number;
18
- minCashReserveValue?: number;
19
- buySlippageBps?: number;
20
- sellSlippageBps?: number;
21
- perOrderFee?: number;
22
- /** When set, this symbol is treated as cash: no orders, no price required. */
23
- cashSymbol?: string;
24
- }
25
- export interface RebalancePlan {
26
- triggered: boolean;
27
- portfolioDriftPercentPoints: number;
28
- reason: 'below_threshold' | 'ok' | 'no_orders';
29
- orders: TradeOrder[];
30
- }
31
- /** Minimum portfolio drift (in percentage points) required before rebalancing is triggered. */
32
- export declare const PORTFOLIO_DRIFT_THRESHOLD_PERCENT_POINTS = 25;
33
- /** Ignore tiny deltas below this notional value to avoid dust trades. */
34
- export declare const REBALANCE_MIN_TRADE_VALUE = 1;
35
- /** Default quantity precision for fractionable symbols (100 = 2 decimal places). */
36
- export declare const REBALANCE_QUANTITY_PRECISION = 100;
37
- /** Quantity precision for whole-share-only symbols (1 = integer shares only). */
38
- export declare const REBALANCE_WHOLE_SHARE_QUANTITY_PRECISION = 1;
39
- /** Numeric tolerance for floating-point comparisons. */
40
- export declare const REBALANCE_EPSILON = 1e-9;
41
- /** Keep this % of cash unallocated as a safety reserve. */
42
- export declare const REBALANCE_CASH_RESERVE_PERCENT = 1;
43
- /** Absolute minimum dollar reserve kept as cash. */
44
- export declare const REBALANCE_MIN_CASH_RESERVE_VALUE = 10;
45
- /** Inflate buy pricing by this many basis points when sizing orders. */
46
- export declare const REBALANCE_BUY_SLIPPAGE_BPS = 30;
47
- /** Haircut expected sell proceeds by this many basis points when funding buys. */
48
- export declare const REBALANCE_SELL_SLIPPAGE_BPS = 20;
49
- /** Flat per-order fee assumption used in funding math. */
50
- export declare const REBALANCE_PER_ORDER_FEE = 0;
51
- /** Canonical symbol used in targetWeights when strategy holds cash. */
52
- export declare const REBALANCE_CASH_SYMBOL = "CASH";
53
- /** Strategy ticker that means "hold as cash". */
54
- export declare const REBALANCE_CASH_SOURCE_SYMBOL = "DTB3";
55
- export declare function computePortfolioDriftPercentPoints(input: {
56
- targetWeights: Record<string, number>;
57
- currentValues: Record<string, number>;
58
- cashValue: number;
59
- totalValue: number;
60
- }): number;
61
- export declare function buildRebalancePlan(input: RebalancePlanInput): RebalancePlan;
62
- //# sourceMappingURL=rebalance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rebalance.d.ts","sourceRoot":"","sources":["../../src/portfolio/rebalance.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,yBAAyB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC,CAAC,EAAE,MAAM,CAAC;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,2BAA2B,EAAE,MAAM,CAAC;IACpC,MAAM,EAAE,iBAAiB,GAAG,IAAI,GAAG,WAAW,CAAC;IAC/C,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB;AAMD,+FAA+F;AAC/F,eAAO,MAAM,wCAAwC,KAAK,CAAC;AAC3D,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,oFAAoF;AACpF,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAChD,iFAAiF;AACjF,eAAO,MAAM,wCAAwC,IAAI,CAAC;AAC1D,wDAAwD;AACxD,eAAO,MAAM,iBAAiB,OAAO,CAAC;AACtC,2DAA2D;AAC3D,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAChD,oDAAoD;AACpD,eAAO,MAAM,gCAAgC,KAAK,CAAC;AACnD,wEAAwE;AACxE,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAC7C,kFAAkF;AAClF,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,0DAA0D;AAC1D,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,SAAS,CAAC;AAC5C,iDAAiD;AACjD,eAAO,MAAM,4BAA4B,SAAS,CAAC;AAsCnD,wBAAgB,kCAAkC,CAAC,KAAK,EAAE;IACxD,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAiCT;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,aAAa,CAoI3E"}