@newyorkcompute/kalshi-core 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/config.d.ts.map +1 -1
  2. package/dist/config.js +5 -1
  3. package/dist/config.js.map +1 -1
  4. package/dist/index.d.ts +1 -0
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +2 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/mm/index.d.ts +11 -0
  9. package/dist/mm/index.d.ts.map +1 -0
  10. package/dist/mm/index.js +14 -0
  11. package/dist/mm/index.js.map +1 -0
  12. package/dist/mm/inventory.d.ts +70 -0
  13. package/dist/mm/inventory.d.ts.map +1 -0
  14. package/dist/mm/inventory.js +171 -0
  15. package/dist/mm/inventory.js.map +1 -0
  16. package/dist/mm/inventory.test.d.ts +2 -0
  17. package/dist/mm/inventory.test.d.ts.map +1 -0
  18. package/dist/mm/inventory.test.js +358 -0
  19. package/dist/mm/inventory.test.js.map +1 -0
  20. package/dist/mm/order-manager.d.ts +93 -0
  21. package/dist/mm/order-manager.d.ts.map +1 -0
  22. package/dist/mm/order-manager.js +262 -0
  23. package/dist/mm/order-manager.js.map +1 -0
  24. package/dist/mm/order-manager.test.d.ts +2 -0
  25. package/dist/mm/order-manager.test.d.ts.map +1 -0
  26. package/dist/mm/order-manager.test.js +333 -0
  27. package/dist/mm/order-manager.test.js.map +1 -0
  28. package/dist/mm/orderbook.d.ts +162 -0
  29. package/dist/mm/orderbook.d.ts.map +1 -0
  30. package/dist/mm/orderbook.js +271 -0
  31. package/dist/mm/orderbook.js.map +1 -0
  32. package/dist/mm/orderbook.test.d.ts +2 -0
  33. package/dist/mm/orderbook.test.d.ts.map +1 -0
  34. package/dist/mm/orderbook.test.js +264 -0
  35. package/dist/mm/orderbook.test.js.map +1 -0
  36. package/dist/mm/risk.d.ts +77 -0
  37. package/dist/mm/risk.d.ts.map +1 -0
  38. package/dist/mm/risk.js +179 -0
  39. package/dist/mm/risk.js.map +1 -0
  40. package/dist/mm/risk.test.d.ts +2 -0
  41. package/dist/mm/risk.test.d.ts.map +1 -0
  42. package/dist/mm/risk.test.js +297 -0
  43. package/dist/mm/risk.test.js.map +1 -0
  44. package/dist/mm/types.d.ts +128 -0
  45. package/dist/mm/types.d.ts.map +1 -0
  46. package/dist/mm/types.js +7 -0
  47. package/dist/mm/types.js.map +1 -0
  48. package/dist/websocket/auth.d.ts +9 -2
  49. package/dist/websocket/auth.d.ts.map +1 -1
  50. package/dist/websocket/auth.js +18 -13
  51. package/dist/websocket/auth.js.map +1 -1
  52. package/dist/websocket/auth.test.js +15 -6
  53. package/dist/websocket/auth.test.js.map +1 -1
  54. package/dist/websocket/client.d.ts.map +1 -1
  55. package/dist/websocket/client.js +6 -0
  56. package/dist/websocket/client.js.map +1 -1
  57. package/dist/websocket/types.d.ts +13 -1
  58. package/dist/websocket/types.d.ts.map +1 -1
  59. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,aAAa,EACb,SAAS,EACT,YAAY,EACZ,SAAS,EACT,SAAS,EACV,MAAM,mBAAmB,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,kDAAkD,CAAC;AAEjF;;GAEG;AACH,eAAO,MAAM,cAAc,4CAA4C,CAAC;AAExE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAc9C;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,aAAa,CAMnE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAG/D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAGrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAG/D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAG/D"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,aAAa,EACb,SAAS,EACT,YAAY,EACZ,SAAS,EACT,SAAS,EACV,MAAM,mBAAmB,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,kDAAkD,CAAC;AAEjF;;GAEG;AACH,eAAO,MAAM,cAAc,4CAA4C,CAAC;AAExE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAmB9C;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,aAAa,CAMnE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAG/D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAGrE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAG/D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAG/D"}
package/dist/config.js CHANGED
@@ -31,7 +31,7 @@ export const DEMO_BASE_PATH = "https://demo-api.kalshi.co/trade-api/v2";
31
31
  */
32
32
  export function getKalshiConfig() {
33
33
  const apiKey = process.env.KALSHI_API_KEY;
34
- const privateKey = process.env.KALSHI_PRIVATE_KEY;
34
+ let privateKey = process.env.KALSHI_PRIVATE_KEY;
35
35
  const basePath = process.env.KALSHI_BASE_PATH || DEFAULT_BASE_PATH;
36
36
  if (!apiKey) {
37
37
  throw new Error("KALSHI_API_KEY environment variable is required");
@@ -39,6 +39,10 @@ export function getKalshiConfig() {
39
39
  if (!privateKey) {
40
40
  throw new Error("KALSHI_PRIVATE_KEY environment variable is required");
41
41
  }
42
+ // Handle escaped newlines from .env files
43
+ if (privateKey.includes("\\n")) {
44
+ privateKey = privateKey.replace(/\\n/g, "\n");
45
+ }
42
46
  return { apiKey, privateKey, basePath };
43
47
  }
44
48
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,aAAa,EACb,SAAS,EACT,YAAY,EACZ,SAAS,EACT,SAAS,GACV,MAAM,mBAAmB,CAAC;AAe3B;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,+CAA+C,CAAC;AAEjF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,yCAAyC,CAAC;AAExE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAC1C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,iBAAiB,CAAC;IAEnE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,OAAO,IAAI,aAAa,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,aAAa,EAAE,MAAM,CAAC,UAAU;QAChC,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAoB;IACrD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,aAAa,EACb,SAAS,EACT,YAAY,EACZ,SAAS,EACT,SAAS,GACV,MAAM,mBAAmB,CAAC;AAe3B;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,+CAA+C,CAAC;AAEjF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,yCAAyC,CAAC;AAExE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAC1C,IAAI,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAChD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,iBAAiB,CAAC;IAEnE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,0CAA0C;IAC1C,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,OAAO,IAAI,aAAa,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,aAAa,EAAE,MAAM,CAAC,UAAU;QAChC,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAoB;IACrD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,YAAY,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,MAAoB;IAClD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -11,4 +11,5 @@ export * from "./types.js";
11
11
  export { withTimeout, TimeoutError } from "./with-timeout.js";
12
12
  export { validateOrder, type OrderValidationInput, type OrderValidationResult, } from "./validate-order.js";
13
13
  export { KalshiWsClient, generateWsAuthHeaders, generateSignedWsUrl, type KalshiWsConfig, type KalshiWsEventHandlers, type SubscriptionChannel, type ConnectionState, type ActiveSubscriptions, type OrderbookDeltaMessage, type TickerMessage, type TradeMessage, type FillMessage, type WsMessage, WS_ENDPOINTS, } from "./websocket/index.js";
14
+ export { OrderManager, InventoryTracker, RiskManager, LocalOrderbook, OrderbookManager, DEFAULT_RISK_LIMITS, type Side, type Action, type OrderStatus, type ManagedOrder, type Quote, type Position, type RiskLimits, type RiskCheckResult, type Fill, type PnLSummary, type CreateOrderInput, type PlaceOrderResult, type PriceLevel, type OrderbookSnapshot, type OrderbookDelta, type BBO, } from "./mm/index.js";
14
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,KAAK,YAAY,EACjB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,SAAS,GACV,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,aAAa,EACb,SAAS,GACV,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,mBAAmB,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAG9D,OAAO,EACL,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,YAAY,GACb,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,KAAK,YAAY,EACjB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,SAAS,GACV,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,aAAa,EACb,SAAS,GACV,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,mBAAmB,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAG9D,OAAO,EACL,aAAa,EACb,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,YAAY,GACb,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,IAAI,EACT,KAAK,MAAM,EACX,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,IAAI,EACT,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,GAAG,GACT,MAAM,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -19,4 +19,6 @@ export { withTimeout, TimeoutError } from "./with-timeout.js";
19
19
  export { validateOrder, } from "./validate-order.js";
20
20
  // WebSocket (real-time data)
21
21
  export { KalshiWsClient, generateWsAuthHeaders, generateSignedWsUrl, WS_ENDPOINTS, } from "./websocket/index.js";
22
+ // Market Making primitives
23
+ export { OrderManager, InventoryTracker, RiskManager, LocalOrderbook, OrderbookManager, DEFAULT_RISK_LIMITS, } from "./mm/index.js";
22
24
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,gBAAgB;AAChB,OAAO,EAEL,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,uBAAuB;AACvB,OAAO,EACL,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,SAAS,GACV,MAAM,aAAa,CAAC;AAErB,kBAAkB;AAClB,OAAO,EACL,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,aAAa,EACb,SAAS,GACV,MAAM,YAAY,CAAC;AAEpB,gBAAgB;AAChB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GAIjB,MAAM,mBAAmB,CAAC;AAE3B,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,YAAY;AACZ,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE9D,aAAa;AACb,OAAO,EACL,aAAa,GAGd,MAAM,qBAAqB,CAAC;AAE7B,6BAA6B;AAC7B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EAWnB,YAAY,GACb,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,gBAAgB;AAChB,OAAO,EAEL,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,uBAAuB;AACvB,OAAO,EACL,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,YAAY,EACZ,eAAe,EACf,QAAQ,EACR,SAAS,GACV,MAAM,aAAa,CAAC;AAErB,kBAAkB;AAClB,OAAO,EACL,SAAS,EACT,QAAQ,EACR,UAAU,EACV,aAAa,EACb,aAAa,EACb,SAAS,GACV,MAAM,YAAY,CAAC;AAEpB,gBAAgB;AAChB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,GAIjB,MAAM,mBAAmB,CAAC;AAE3B,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,YAAY;AACZ,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE9D,aAAa;AACb,OAAO,EACL,aAAa,GAGd,MAAM,qBAAqB,CAAC;AAE7B,6BAA6B;AAC7B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EAWnB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAE9B,2BAA2B;AAC3B,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,mBAAmB,GAiBpB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Market Maker Module
3
+ *
4
+ * Core primitives for building market making systems.
5
+ */
6
+ export type { Side, Action, OrderStatus, ManagedOrder, Quote, Position, RiskLimits, RiskCheckResult, Fill, PnLSummary, } from "./types.js";
7
+ export { OrderManager, type CreateOrderInput, type PlaceOrderResult, } from "./order-manager.js";
8
+ export { InventoryTracker } from "./inventory.js";
9
+ export { RiskManager, DEFAULT_RISK_LIMITS } from "./risk.js";
10
+ export { LocalOrderbook, OrderbookManager, type PriceLevel, type OrderbookSnapshot, type OrderbookDelta, type BBO, } from "./orderbook.js";
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,IAAI,EACJ,MAAM,EACN,WAAW,EACX,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,UAAU,EACV,eAAe,EACf,IAAI,EACJ,UAAU,GACX,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,YAAY,EACZ,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAG7D,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,GAAG,GACT,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Market Maker Module
3
+ *
4
+ * Core primitives for building market making systems.
5
+ */
6
+ // Order Manager
7
+ export { OrderManager, } from "./order-manager.js";
8
+ // Inventory Tracker
9
+ export { InventoryTracker } from "./inventory.js";
10
+ // Risk Manager
11
+ export { RiskManager, DEFAULT_RISK_LIMITS } from "./risk.js";
12
+ // Local Orderbook
13
+ export { LocalOrderbook, OrderbookManager, } from "./orderbook.js";
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mm/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgBH,gBAAgB;AAChB,OAAO,EACL,YAAY,GAGb,MAAM,oBAAoB,CAAC;AAE5B,oBAAoB;AACpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,eAAe;AACf,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAE7D,kBAAkB;AAClB,OAAO,EACL,cAAc,EACd,gBAAgB,GAKjB,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Inventory Tracker
3
+ *
4
+ * Tracks positions and PnL for market making.
5
+ */
6
+ import type { Position, Fill, PnLSummary } from "./types.js";
7
+ /**
8
+ * InventoryTracker maintains position state for all markets
9
+ */
10
+ export declare class InventoryTracker {
11
+ private positions;
12
+ private realizedPnL;
13
+ private fillsToday;
14
+ private volumeToday;
15
+ /**
16
+ * Update position when a fill occurs
17
+ */
18
+ onFill(fill: Fill): void;
19
+ /**
20
+ * Get position for a specific ticker
21
+ */
22
+ getPosition(ticker: string): Position | undefined;
23
+ /**
24
+ * Get all positions
25
+ */
26
+ getAllPositions(): Position[];
27
+ /**
28
+ * Get total exposure across all positions
29
+ */
30
+ getTotalExposure(): number;
31
+ /**
32
+ * Get net exposure for a specific ticker
33
+ */
34
+ getNetExposure(ticker: string): number;
35
+ /**
36
+ * Get PnL summary
37
+ */
38
+ getPnLSummary(currentPrices?: Map<string, number>): PnLSummary;
39
+ /**
40
+ * Reset daily stats (call at start of trading day)
41
+ */
42
+ resetDaily(): void;
43
+ /**
44
+ * Clear all positions (use with caution!)
45
+ */
46
+ clear(): void;
47
+ /**
48
+ * Initialize positions from existing portfolio
49
+ */
50
+ initializeFromPortfolio(portfolioPositions: Array<{
51
+ ticker: string;
52
+ yesContracts: number;
53
+ noContracts: number;
54
+ costBasis: number;
55
+ }>): void;
56
+ /**
57
+ * Get or create position for a ticker
58
+ */
59
+ private getOrCreatePosition;
60
+ /**
61
+ * Calculate contract change from a fill
62
+ * Positive = adding to position, Negative = reducing position
63
+ */
64
+ private calculateContractChange;
65
+ /**
66
+ * Calculate cost basis change and realized PnL from a fill
67
+ */
68
+ private calculateCostImpact;
69
+ }
70
+ //# sourceMappingURL=inventory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventory.d.ts","sourceRoot":"","sources":["../../src/mm/inventory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7D;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,SAAS,CAAoC;IACrD,OAAO,CAAC,WAAW,CAAa;IAChC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,WAAW,CAAa;IAEhC;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IA0BxB;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAIjD;;OAEG;IACH,eAAe,IAAI,QAAQ,EAAE;IAI7B;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAQ1B;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAItC;;OAEG;IACH,aAAa,CAAC,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,UAAU;IA4B9D;;OAEG;IACH,UAAU,IAAI,IAAI;IAMlB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,uBAAuB,CACrB,kBAAkB,EAAE,KAAK,CAAC;QACxB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC,GACD,IAAI;IAaP;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgB3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAK/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAwB5B"}
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Inventory Tracker
3
+ *
4
+ * Tracks positions and PnL for market making.
5
+ */
6
+ /**
7
+ * InventoryTracker maintains position state for all markets
8
+ */
9
+ export class InventoryTracker {
10
+ positions = new Map();
11
+ realizedPnL = 0;
12
+ fillsToday = 0;
13
+ volumeToday = 0;
14
+ /**
15
+ * Update position when a fill occurs
16
+ */
17
+ onFill(fill) {
18
+ const position = this.getOrCreatePosition(fill.ticker);
19
+ // Calculate position change
20
+ const contractChange = this.calculateContractChange(fill);
21
+ // Update contracts
22
+ if (fill.side === "yes") {
23
+ position.yesContracts += contractChange;
24
+ }
25
+ else {
26
+ position.noContracts += contractChange;
27
+ }
28
+ // Update net exposure
29
+ position.netExposure = position.yesContracts - position.noContracts;
30
+ // Update cost basis and realized PnL
31
+ const costImpact = this.calculateCostImpact(fill, position);
32
+ position.costBasis += costImpact.costBasisChange;
33
+ this.realizedPnL += costImpact.realizedPnL;
34
+ // Update daily stats
35
+ this.fillsToday++;
36
+ this.volumeToday += fill.count;
37
+ }
38
+ /**
39
+ * Get position for a specific ticker
40
+ */
41
+ getPosition(ticker) {
42
+ return this.positions.get(ticker);
43
+ }
44
+ /**
45
+ * Get all positions
46
+ */
47
+ getAllPositions() {
48
+ return Array.from(this.positions.values());
49
+ }
50
+ /**
51
+ * Get total exposure across all positions
52
+ */
53
+ getTotalExposure() {
54
+ let total = 0;
55
+ for (const position of this.positions.values()) {
56
+ total += Math.abs(position.netExposure);
57
+ }
58
+ return total;
59
+ }
60
+ /**
61
+ * Get net exposure for a specific ticker
62
+ */
63
+ getNetExposure(ticker) {
64
+ return this.positions.get(ticker)?.netExposure ?? 0;
65
+ }
66
+ /**
67
+ * Get PnL summary
68
+ */
69
+ getPnLSummary(currentPrices) {
70
+ let unrealized = 0;
71
+ // Calculate unrealized PnL if current prices provided
72
+ if (currentPrices) {
73
+ for (const position of this.positions.values()) {
74
+ const price = currentPrices.get(position.ticker);
75
+ if (price !== undefined && position.netExposure !== 0) {
76
+ // Unrealized = (current value) - (cost basis)
77
+ // For YES contracts: value = contracts * price
78
+ // For NO contracts: value = contracts * (100 - price)
79
+ const currentValue = position.yesContracts * price +
80
+ position.noContracts * (100 - price);
81
+ unrealized += currentValue - position.costBasis;
82
+ }
83
+ }
84
+ }
85
+ return {
86
+ realizedToday: this.realizedPnL,
87
+ unrealized,
88
+ total: this.realizedPnL + unrealized,
89
+ fillsToday: this.fillsToday,
90
+ volumeToday: this.volumeToday,
91
+ };
92
+ }
93
+ /**
94
+ * Reset daily stats (call at start of trading day)
95
+ */
96
+ resetDaily() {
97
+ this.realizedPnL = 0;
98
+ this.fillsToday = 0;
99
+ this.volumeToday = 0;
100
+ }
101
+ /**
102
+ * Clear all positions (use with caution!)
103
+ */
104
+ clear() {
105
+ this.positions.clear();
106
+ this.resetDaily();
107
+ }
108
+ /**
109
+ * Initialize positions from existing portfolio
110
+ */
111
+ initializeFromPortfolio(portfolioPositions) {
112
+ for (const p of portfolioPositions) {
113
+ this.positions.set(p.ticker, {
114
+ ticker: p.ticker,
115
+ yesContracts: p.yesContracts,
116
+ noContracts: p.noContracts,
117
+ netExposure: p.yesContracts - p.noContracts,
118
+ costBasis: p.costBasis,
119
+ unrealizedPnL: 0,
120
+ });
121
+ }
122
+ }
123
+ /**
124
+ * Get or create position for a ticker
125
+ */
126
+ getOrCreatePosition(ticker) {
127
+ let position = this.positions.get(ticker);
128
+ if (!position) {
129
+ position = {
130
+ ticker,
131
+ yesContracts: 0,
132
+ noContracts: 0,
133
+ netExposure: 0,
134
+ costBasis: 0,
135
+ unrealizedPnL: 0,
136
+ };
137
+ this.positions.set(ticker, position);
138
+ }
139
+ return position;
140
+ }
141
+ /**
142
+ * Calculate contract change from a fill
143
+ * Positive = adding to position, Negative = reducing position
144
+ */
145
+ calculateContractChange(fill) {
146
+ // Buy = add contracts, Sell = remove contracts
147
+ return fill.action === "buy" ? fill.count : -fill.count;
148
+ }
149
+ /**
150
+ * Calculate cost basis change and realized PnL from a fill
151
+ */
152
+ calculateCostImpact(fill, position) {
153
+ const fillCost = fill.count * fill.price;
154
+ if (fill.action === "buy") {
155
+ // Buying increases cost basis
156
+ return { costBasisChange: fillCost, realizedPnL: 0 };
157
+ }
158
+ else {
159
+ // Selling realizes PnL
160
+ // Average cost = costBasis / total contracts
161
+ const contracts = fill.side === "yes" ? position.yesContracts : position.noContracts;
162
+ const avgCost = contracts > 0 ? position.costBasis / (contracts + fill.count) : 0;
163
+ const realizedPnL = fill.count * (fill.price - avgCost);
164
+ return {
165
+ costBasisChange: -fill.count * avgCost,
166
+ realizedPnL,
167
+ };
168
+ }
169
+ }
170
+ }
171
+ //# sourceMappingURL=inventory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventory.js","sourceRoot":"","sources":["../../src/mm/inventory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=inventory.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inventory.test.d.ts","sourceRoot":"","sources":["../../src/mm/inventory.test.ts"],"names":[],"mappings":""}