@timmeck/brain-core 2.36.46 → 2.36.47

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.
@@ -455,6 +455,10 @@ canvas{display:block;width:100%;height:100%}
455
455
  <div class="card"><div class="card-title">Win Rate</div><div class="card-value" id="tradingWinRate" style="color:var(--green)">--</div><div class="card-sub" data-t="Gewinnrate aller Trades">Gewinnrate aller Trades</div></div>
456
456
  <div class="card"><div class="card-title" data-t="Offene Positionen">Offene Positionen</div><div class="card-value" id="tradingPositions" style="color:var(--green)">--</div><div class="card-sub" data-t="Aktive Trades gerade">Aktive Trades gerade</div></div>
457
457
  </div>
458
+ <div class="section" style="margin-top:16px">
459
+ <div class="section-title"><span class="icon">&#x1F4B0;</span> <span data-t="Offene Positionen">Offene Positionen</span></div>
460
+ <div id="openPositionsTable"><div class="empty" data-t="Keine offenen Positionen">Keine offenen Positionen</div></div>
461
+ </div>
458
462
  <div class="section" style="margin-top:16px">
459
463
  <div class="section-title"><span class="icon">&#x1F4DC;</span> <span data-t="Letzte Trades">Letzte Trades</span></div>
460
464
  <div id="tradeHistoryTable"><div class="empty" data-t="Keine Trades bisher">Keine Trades bisher</div></div>
@@ -759,7 +763,7 @@ const translations = { en: {
759
763
  'So tradet Trading-Brain':'How Trading Brain Trades',
760
764
  'Signale kommen rein, werden analysiert, als Paper Trade getestet und das Ergebnis fließt zurück ins Lernen.':'Signals come in, get analyzed, tested as paper trades, and results feed back into learning.',
761
765
  'Signale':'Signals','Analyse':'Analysis','Ergebnis':'Result','Lernen':'Learn',
762
- 'Paper Trading Guthaben':'Paper Trading Balance','Gewinnrate aller Trades':'Win Rate All Trades','Offene Positionen':'Open Positions','Aktive Trades gerade':'Active Trades Now',
766
+ 'Paper Trading Guthaben':'Paper Trading Balance','Gewinnrate aller Trades':'Win Rate All Trades','Offene Positionen':'Open Positions','Aktive Trades gerade':'Active Trades Now','Keine offenen Positionen':'No open positions','Aktuell':'Current','Betrag':'Amount','Ge\u00f6ffnet':'Opened','Letzte Trades':'Recent Trades','Keine Trades bisher':'No trades yet','Grund':'Reason','Datum':'Date',
763
767
  'So lernt Marketing-Brain':'How Marketing Brain Learns',
764
768
  'Posts werden veröffentlicht, das Engagement wird gemessen, Muster erkannt und die Strategie angepasst.':'Posts are published, engagement is measured, patterns detected, and strategy adjusted.',
765
769
  'Muster':'Patterns','Strategie':'Strategy','Bester Post':'Best Post','Kampagnen':'Campaigns','Aktive Kampagnen':'Active Campaigns','Zielgruppe':'Audience',
@@ -1422,6 +1426,32 @@ function renderAnalytics() {
1422
1426
  setText('tradingWinRate', t.winRate ? (Number(t.winRate)*100).toFixed(1)+'%' : '--');
1423
1427
  setText('tradingEquity', t.equity ? '$'+Number(t.equity).toLocaleString() : '--');
1424
1428
  setText('tradingPositions', num(t.positions));
1429
+ // Open Positions Table
1430
+ const opEl = document.getElementById('openPositionsTable');
1431
+ if (opEl && Array.isArray(t.openPositionsList) && t.openPositionsList.length > 0) {
1432
+ opEl.innerHTML = '<table style="width:100%;border-collapse:collapse;font-size:12px">'
1433
+ + '<tr style="color:var(--text-dim);text-align:left;border-bottom:1px solid var(--border)">'
1434
+ + '<th style="padding:6px 8px">Symbol</th><th style="padding:6px 8px">Side</th>'
1435
+ + '<th style="padding:6px 8px">Entry</th><th style="padding:6px 8px" data-t="Aktuell">Aktuell</th>'
1436
+ + '<th style="padding:6px 8px">PnL</th><th style="padding:6px 8px" data-t="Betrag">Betrag</th>'
1437
+ + '<th style="padding:6px 8px" data-t="Geöffnet">Ge\u00f6ffnet</th></tr>'
1438
+ + t.openPositionsList.map(pos => {
1439
+ const win = pos.pnlPct > 0;
1440
+ const pnlColor = win ? 'var(--green)' : 'var(--red)';
1441
+ const sign = win ? '+' : '';
1442
+ return '<tr style="border-bottom:1px solid var(--border)">'
1443
+ + `<td style="padding:6px 8px;font-weight:600;color:var(--cyan)">${pos.symbol}</td>`
1444
+ + `<td style="padding:6px 8px">${pos.side}</td>`
1445
+ + `<td style="padding:6px 8px">$${Number(pos.entryPrice).toFixed(4)}</td>`
1446
+ + `<td style="padding:6px 8px">$${Number(pos.currentPrice).toFixed(4)}</td>`
1447
+ + `<td style="padding:6px 8px;color:${pnlColor};font-weight:600">${sign}${Number(pos.pnlPct).toFixed(2)}%</td>`
1448
+ + `<td style="padding:6px 8px">$${Number(pos.usdtAmount).toFixed(2)}</td>`
1449
+ + `<td style="padding:6px 8px;color:var(--text-dim)">${pos.openedAt ? pos.openedAt.slice(0, 16).replace('T', ' ') : ''}</td>`
1450
+ + '</tr>';
1451
+ }).join('') + '</table>';
1452
+ } else if (opEl) {
1453
+ opEl.innerHTML = `<div class="empty" data-t="Keine offenen Positionen">${t('Keine offenen Positionen')}</div>`;
1454
+ }
1425
1455
  // Trade History Table
1426
1456
  const hEl = document.getElementById('tradeHistoryTable');
1427
1457
  if (hEl && Array.isArray(t.history) && t.history.length > 0) {
@@ -38,6 +38,15 @@ export interface AggregatedAnalytics {
38
38
  exitReason: string;
39
39
  closedAt: string;
40
40
  }>;
41
+ openPositionsList?: Array<{
42
+ symbol: string;
43
+ side: string;
44
+ entryPrice: number;
45
+ currentPrice: number;
46
+ pnlPct: number;
47
+ usdtAmount: number;
48
+ openedAt: string;
49
+ }>;
41
50
  };
42
51
  marketing?: {
43
52
  posts: number;
@@ -60,12 +60,13 @@ export class EcosystemService {
60
60
  */
61
61
  async getAggregatedAnalytics() {
62
62
  const analytics = {};
63
- const [brainResult, tradingResult, marketingResult, paperResult, historyResult] = await Promise.all([
63
+ const [brainResult, tradingResult, marketingResult, paperResult, historyResult, portfolioResult] = await Promise.all([
64
64
  this.crossBrain.query('brain', 'analytics.summary'),
65
65
  this.crossBrain.query('trading-brain', 'analytics.summary'),
66
66
  this.crossBrain.query('marketing-brain', 'analytics.summary'),
67
67
  this.crossBrain.query('trading-brain', 'paper.status'),
68
68
  this.crossBrain.query('trading-brain', 'paper.history', { limit: 10 }),
69
+ this.crossBrain.query('trading-brain', 'paper.portfolio'),
69
70
  ]);
70
71
  if (brainResult != null) {
71
72
  const data = brainResult;
@@ -82,14 +83,16 @@ export class EcosystemService {
82
83
  const network = data.network;
83
84
  const paper = paperResult;
84
85
  const historyArr = Array.isArray(historyResult) ? historyResult : [];
86
+ const portfolio = portfolioResult;
87
+ const positionsArr = Array.isArray(portfolio?.positions) ? portfolio.positions : [];
85
88
  analytics.trading = {
86
89
  trades: typeof trades === 'object' ? trades?.total ?? 0 : Number(trades) || 0,
87
- winRate: typeof trades === 'object' ? (trades?.recentWinRate ?? 0) / 100 : 0,
90
+ winRate: Number(paper?.winRate) > 0 ? Number(paper?.winRate) / 100 : (typeof trades === 'object' ? (trades?.recentWinRate ?? 0) / 100 : 0),
88
91
  signals: network?.synapses ?? 0,
89
92
  rules: typeof rules === 'object' ? rules?.total ?? 0 : 0,
90
93
  equity: Number(paper?.equity) || 0,
91
94
  positions: Number(paper?.openPositions) || 0,
92
- pnl: Number(paper?.totalPnL) || 0,
95
+ pnl: Number(paper?.totalPnl ?? paper?.totalPnL) || 0,
93
96
  history: historyArr.map(h => ({
94
97
  symbol: String(h.symbol ?? ''),
95
98
  side: String(h.side ?? ''),
@@ -100,6 +103,15 @@ export class EcosystemService {
100
103
  exitReason: String(h.exitReason ?? ''),
101
104
  closedAt: String(h.closedAt ?? ''),
102
105
  })),
106
+ openPositionsList: positionsArr.map(p => ({
107
+ symbol: String(p.symbol ?? ''),
108
+ side: String(p.side ?? 'long'),
109
+ entryPrice: Number(p.entryPrice) || 0,
110
+ currentPrice: Number(p.currentPrice) || 0,
111
+ pnlPct: Number(p.pnlPct) || 0,
112
+ usdtAmount: Number(p.usdtAmount) || 0,
113
+ openedAt: String(p.openedAt ?? ''),
114
+ })),
103
115
  };
104
116
  }
105
117
  if (marketingResult != null) {
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/ecosystem/service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAwB/C,MAAM,OAAO,gBAAgB;IAIjB;IACA;IAJF,MAAM,GAAG,SAAS,EAAE,CAAC;IAE7B,YACU,UAAgC,EAChC,UAA4B;QAD5B,eAAU,GAAV,UAAU,CAAsB;QAChC,eAAU,GAAV,UAAU,CAAkB;IACnC,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,SAAS;QACb,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAE5D,MAAM,MAAM,GAAkB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAChD,MAAM,IAAI,GAAG,CAAC,CAAC,MAAwC,CAAC;YACxD,OAAO;gBACL,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,IAAI,EAAE,OAA6B;gBAC5C,MAAM,EAAE,IAAI,EAAE,MAA4B;gBAC1C,GAAG,EAAE,IAAI,EAAE,GAAyB;gBACpC,OAAO,EAAE,IAAI,EAAE,OAA6B;aAC7C,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,gDAAgD;QAChD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1D,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC;YACtD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,WAAoB;QAClC,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,KAAc;QACxB,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;IACrC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,sBAAsB;QAC1B,MAAM,SAAS,GAAwB,EAAE,CAAC;QAE1C,MAAM,CAAC,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAClG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,mBAAmB,CAAC;YACnD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,mBAAmB,CAAC;YAC3D,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;YAC7D,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,cAAc,CAAC;YACtD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,eAAe,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;SACvE,CAAC,CAAC;QAEH,IAAI,WAAW,IAAI,IAAI,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,WAAqC,CAAC;YACnD,SAAS,CAAC,KAAK,GAAG;gBAChB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC;gBACxB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC;gBAC9B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,CAAC;aAC3B,CAAC;QACJ,CAAC;QAED,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,aAAwC,CAAC;YACtD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAqD,CAAC;YAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,KAA2C,CAAC;YAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,OAA6C,CAAC;YACnE,MAAM,KAAK,GAAG,WAA6C,CAAC;YAC5D,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAA+C,CAAC,CAAC,CAAC,EAAE,CAAC;YACvG,SAAS,CAAC,OAAO,GAAG;gBAClB,MAAM,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;gBAC7E,OAAO,EAAE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,aAAa,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC5E,OAAO,EAAE,OAAO,EAAE,QAAQ,IAAI,CAAC;gBAC/B,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxD,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC;gBAClC,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC;gBAC5C,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC;gBACjC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC5B,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;oBAC9B,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;oBAC1B,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBACrC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC;oBACnC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;oBAC/B,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;oBAC7B,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;oBACtC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC;iBACnC,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC;QAED,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,eAA0C,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAoD,CAAC;YACxE,MAAM,SAAS,GAAG,IAAI,CAAC,SAA+C,CAAC;YACvE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAgD,CAAC;YACzE,MAAM,KAAK,GAAG,IAAI,CAAC,KAA2C,CAAC;YAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,SAA+C,CAAC;YACvE,SAAS,CAAC,SAAS,GAAG;gBACpB,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBACzE,SAAS,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;gBACzF,UAAU,EAAE,CAAC,EAAE,kCAAkC;gBACjD,UAAU,EAAE,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvE,KAAK,EAAE,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,IAAI,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzE,SAAS,EAAE,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;aACrE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE;YAClD,QAAQ,EAAE,SAAS,CAAC,KAAK,IAAI,IAAI;YACjC,UAAU,EAAE,SAAS,CAAC,OAAO,IAAI,IAAI;YACrC,YAAY,EAAE,SAAS,CAAC,SAAS,IAAI,IAAI;SAC1C,CAAC,CAAC;QAEH,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,MAAc,EAAE,KAAa,EAAE,IAAa;QACtD,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;CACF"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/ecosystem/service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@timmeck/brain-core",
3
- "version": "2.36.46",
3
+ "version": "2.36.47",
4
4
  "description": "Shared core infrastructure for the Brain ecosystem — IPC, MCP, CLI, DB connection, and utilities",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",