はじめる
Trade Log to Daily Briefing — Records Only

Trade Log to Daily Briefing — Records Only

Turn a pasted trade log into a 5-section briefing: trades, open positions, P&L sums and anomalies. Records only, no advice.
#財務
評価
さらに評価が必要です
販売数
0
利用方法
ダウンロード

How it works

Trade Log Daily Briefing takes a trade log you paste or point to (JSONL or CSV: timestamp, side, symbol, price, qty, fee, pnl) and returns a fixed five-section briefing of past records only. It computes every total with the sums shown, flags rows it cannot parse instead of guessing, and states its currency, timezone and fee assumptions out loud. It never recommends a trade, forecasts a price or offers a market view, and every output opens with "Summary of past records only. Not investment advice."

Phase 1 - Intake and assumptions. Field mapping, briefing date, week definition, timezone, currency, fee treatment, the prices you supply for open positions, your special/high-risk tag and your own thresholds. Anything ambiguous becomes a question, never a guess.

Phase 2 - Parse and validate. Every line is marked OK, MALFORMED (with the exact reason), DUPLICATE or fee-missing, with its line number. Malformed rows are excluded from totals and listed verbatim.

Phase 3 - Positions. Net quantity per symbol, average cost, and unrealized P&L using only the mark prices you typed in.

Phase 4 - Realized P&L, special track, anomalies. Daily and weekly sums of logged pnl, status of your tagged track, and anomalies: stop-loss hits, loss streaks, circuit-breaker limits you defined, duplicates, malformed rows, missing fees. Where a flagged row changes a total, both figures are shown.

Phase 5 - Headline versus alternate. The Skill never silently picks; you see both numbers and are asked which is right.

Sample output

Real, unedited output from running this Skill on a sample problem:

> **Summary of past records only. Not investment advice.**

Source: 14 lines read from the request text (pasted JSONL); briefing date 2026-10-16; timestamps interpreted as +09:00 (offset carried in the timestamps); currency NEEDS_INFO.

Lines are numbered 1..14 in the order given (blank lines and your prose are not counted). All figures are plain numbers (currency not stated).

## Assumptions

- Currency: not stated anywhere in the log or request. Figures are plain numbers, "(currency not stated)". NEEDS_INFO - please confirm.
- Briefing date: 2026-10-16 (Friday). Stated.
- Timezone / day boundary: +09:00, taken from the timestamps; days are calendar days at +09:00. Stated.
- Week: Monday to Sunday, 2026-10-12 to 2026-10-18. Stated. No rows exist after the briefing date.
- Field mapping: ts = timestamp; side, symbol, price, qty, fee, pnl, tag used as named. Stated by field names.
- Fee and pnl treatment: pnl treated as logged; fee treatment not stated (net or gross, and which side carries the fee). Assumed - please confirm. Fees are never added to pnl here.
- Position cost method: average cost (the method this briefing always uses). Stated.
- Prices supplied: AAA mark 106.0 as of 2026-10-16 15:30 +09:00. No other prices supplied. Stated.
- Special / high-risk track: rows with "tag":"special". Stated.
- Thresholds (as you defined them): special-track stop-loss -7% price move from entry, per trade; loss streak flag at 3 consecutive losing closing trades; daily realized loss limit -80; weekly realized loss limit -100. No max-trades-per-day limit was defined. Stated.

## 1. Today's trades

Briefing date 2026-10-16. Valid, non-duplicate rows only; line 13 is excluded (see "Rows excluded from totals").

| Line | Time | Side | Symbol | Qty | Price | Fee | pnl | Flags |
|---|---|---|---|---|---|---|---|---|
| 10 | 09:05 | buy | AAA | 10 | 102.0 | 1.0 | - | |
| 11 | 10:15 | sell | AAA | 5 | 105.0 | 0.5 | 14.0 | |
| 12 | 11:00 | buy | DDD | 10 | 30.0 | (missing) | - | FEE_MISSING |
| 14 | 14:20 | sell | DDD | 10 | 31.0 | 0.5 | 9.5 | |

- Counts (computed from this log only): 4 valid rows = 2 buys + 2 sells. 1 further row dated today (line 13) is malformed and excluded.
- Known fees today: 1.0 + 0.5 + 0.5 = 2.0 (lines 10, 11, 14). 1 row has a missing fee (line 12).
- Realized pnl today: 14.0 + 9.5 = 23.5 (lines 11, 14).

## 2. Open positions and unrealized P&L

Net quantity per symbol from valid, non-duplicate rows in timestamp order (buys add, sells subtract):

- AAA: line 1 +10, line 2 -10, line 10 +10, line 11 -5 = 5 open (long).
- BBB: +20 - 20 + 20 - 20 = 0 (flat). Line 9 excluded as a duplicate.
- CCC: +50 - 50 = 0 (flat).
- DDD: +10 - 10 = 0 (flat).

| Symbol | Net qty | Avg cost | Supplied mark (as-of) | Unrealized P&L |
|---|---|---|---|---|
| AAA | 5 | 102.0 (the remaining buy is line 10 only; a partial sell keeps the same average cost) | 106.0 (2026-10-16 15:30 +09:00) | (106.0 - 102.0) x 5 = 4.0 x 5 = 20.0 |

- Entry fee on the open AAA lot, listed separately and not folded in (fee treatment unknown): line 10 fee 1.0 for the whole buy of 10; no allocation to the remaining 5 is made here.
- Unrealized total: 20.0 (currency not stated).
- If the duplicate row (line 9) were genuine, BBB net quantity would be +20 - 20 + 20 - 20 - 20 = -20 (negative, see Anomalies group 6).

## 3. Realized P&L

Logged pnl of valid, non-duplicate rows, by calendar day at +09:00 (currency not stated):

- 2026-10-12 (Mon): 38.0 (line 2) = 38.0
- 2026-10-13 (Tue): -42.0 (line 4) = -42.0
- 2026-10-14 (Wed): -77.0 (line 6) = -77.0
- 2026-10-15 (Thu): -42.0 (line 8) = -42.0
- 2026-10-16 (Fri): 14.0 + 9.5 = 23.5 (lines 11, 14)
- 2026-10-17 (Sat) and 2026-10-18 (Sun): no rows.

Weekly (2026-10-12 to 2026-10-18), headline: 38.0 + (-42.0) + (-77.0) + (-42.0) + 23.5 = -99.5

If the duplicate row(s) were genuine (line 9 counted):
- 2026-10-15: -42.0 + (-42.0) = -84.0 (lines 8, 9)
- Weekly: 38.0 + (-42.0) + (-77.0) + (-84.0) + 23.5 = -141.5

Headline is -99.5 because line 9 is an exact copy of line 8 (every field identical, including the timestamp) and is excluded by rule; which figure is right depends on your answer to question 3.

Fees (known only, valid non-duplicate rows): 1.0 (line 1) + 1.0 (2) + 1.0 (3) + 1.0 (4) + 1.0 (5) + 1.0 (6) + 1.0 (7) + 1.0 (8) + 1.0 (10) + 0.5 (11) + 0.5 (14) = 10.0. Rows with a missing fee: 1 (line 12). If line 9 were genuine: 10.0 + 1.0 = 11.0.

Closing trades (rows with pnl, computed from this log only): positive 3 (lines 2, 11, 14), negative 3 (lines 4, 6, 8), zero 0. If line 9 were genuine: negative 4 (lines 4, 6, 8, 9).

## 4. Special / high-risk track

Rows tagged "special": lines 5 and 6 (CCC).

| Line | Time | Side | Symbol | Qty | Price | Fee | pnl | Flags |
|---|---|---|---|---|---|---|---|---|
| 5 | 2026-10-14 09:30 | buy | CCC | 50 | 20.0 | 1.0 | - | |
| 6 | 2026-10-14 11:00 | sell | CCC | 50 | 18.5 | 1.0 | -77.0 | |

- Trades: 2 (1 buy, 1 sell). None dated today.
- Open exposure: none. CCC net quantity 50 - 50 = 0.
- Realized P&L: 2026-10-14: -77.0 (line 6); track weekly: -77.0 = -77.0.
- Known fees: 1.0 + 1.0 = 2.0. Closing trades: positive 0, negative 1, zero 0.
- Your limit for this track (stop-loss -7% price move from entry, per trade): line 6 vs entry line 5: (18.5 - 20.0) / 20.0 = -1.5 / 20.0 = -0.075 = -7.5%. Compared against -7%: REACHED (hit), 0.5 percentage points past the threshold.
- No daily or weekly limit was defined specifically for this track. The whole-log daily and weekly limits are in section 5, group 3.

## 5. Anomalies

**1. Stop-loss hits** (rule: special-track closing trade whose (exit - entry) / entry is at or below -7%, per trade, on price)
- Line 6 (CCC): (18.5 - 20.0) / 20.0 = -7.5% against threshold -7%. HIT.
- You defined the stop-loss for the special track only, so no other trade is tested against it.

**2. Loss streaks** (rule: consecutive closing trades in time order with negative pnl; zero pnl would break a streak; threshold 3)
- Closing trades in time order, headline: line 2 (+38.0), line 4 (-42.0), line 6 (-77.0), line 8 (-42.0), line 11 (+14.0), line 14 (+9.5).
- Most recent losing streak: lines 4, 6, 8 = 3 consecutive. Compared with your 3: REACHED (3 vs 3). It ended at line 11 (+14.0), so the current streak is 0 (last closing trade, line 14, is positive).
- If line 9 were genuine: the streak is lines 4, 6, 8, 9 = 4, also at or above 3. The streak threshold is met under both treatments.

**3. Circuit-breaker thresholds you defined** (currency not stated)
- Daily realized loss limit -80, headline: worst day is 2026-10-14 at -77.0. NOT REACHED, margin 3.0 (-77.0 - (-80) = 3.0). Other days: 38.0, -42.0, -42.0, 23.5, all NOT REACHED.
- Daily limit if line 9 were genuine: 2026-10-15 = -84.0. REACHED, 4.0 past the limit (-84.0 - (-80) = -4.0). Reached only under that treatment.
- Weekly realized loss limit -100, headline: -99.5. NOT REACHED, margin 0.5 (-99.5 - (-100) = 0.5).
- Weekly limit if line 9 were genuine: -141.5. REACHED, 41.5 past the limit (-141.5 - (-100) = -41.5). Reached only under that treatment.
- Max trades per day: no threshold defined; not checked.

**4. Duplicate and malformed rows**
- Duplicate: line 9 is an exact duplicate of line 8 (all fields identical, including timestamp 2026-10-15T13:00:00+09:00). Kept line 8, excluded line 9.
- Near-duplicates (same fields, different timestamp): none found.
- Malformed: line 13 - see "Rows excluded from totals".

**5. Missing fees and missing pnl**
- FEE_MISSING: line 12 (DDD buy; the fee field is absent).
- PNL_MISSING: none found. Every closing sell (lines 2, 4, 6, 8, 11, 14) has a pnl.
- pnl present on a pure buy row: none found.

**6. Other observations**
- Negative net quantity: none found in the headline. Only if line 9 were genuine: BBB would be -20 (see section 2).
- Out-of-order timestamps: none found. Lines 8 and 9 share one timestamp (tie, file order).
- Timestamps later than the briefing date: none found.
- Symbol case or format changes: none found.
- Reconciliation check, logged pnl versus price-implied (exit - entry) x qty (reported, not corrected):
  - Line 2: price-implied (104.0 - 100.0) x 10 = 40.0; logged 38.0. Logged pnl differs from price-implied by -2.0 (equals the fees of lines 1 and 2, 1.0 + 1.0).
  - Line 4: (48.0 - 50.0) x 20 = -40.0; logged -42.0. Differs by -2.0 (equals fees of lines 3 and 4, 1.0 + 1.0).
  - Line 6: (18.5 - 20.0) x 50 = -75.0; logged -77.0. Differs by -2.0 (equals fees of lines 5 and 6, 1.0 + 1.0).
  - Line 8: (45.0 - 47.0) x 20 = -40.0; logged -42.0. Differs by -2.0 (equals fees of lines 7 and 8, 1.0 + 1.0).
  - Line 11 (partial close of line 10's lot): (105.0 - 102.0) x 5 = 15.0; logged 14.0. Differs by -1.0 (would match if pnl is net of the 0.5 exit fee plus half of line 10's 1.0 entry fee, 0.5; not confirmed).
  - Line 14: (31.0 - 30.0) x 10 = 10.0; logged 9.5. Differs by -0.5 (equals the exit fee of line 14; the entry row, line 12, has no fee recorded).
  - Pattern, observed only: every difference equals the logged fees of the related rows. Fee treatment is not stated (question 2), so nothing is corrected.

## Rows excluded from totals

- Line 13, malformed: `{"ts":"2026-10-16T13:45:00+09:00","side":"sel","symbol":"EEE","price":"abc","qty":5`
  - Reason: not valid JSON (the object is not closed; the closing brace is missing). The visible text also shows side "sel" (unrecognised side) and price "abc" (non-numeric price). Not repaired and no values inferred.
- Line 9, duplicate of line 8: excluded from headline totals; shown as the alternate in section 3.

## Questions to resolve NEEDS_INFO

1. Which currency are the figures in?
2. Is the logged pnl net or gross of fees, and which side carries the fee? (Needed to explain the reconciliation differences in section 5, group 6.)
3. Is line 9 a genuine second fill or an accidental duplicate of line 8? The weekly limit (-100), the daily limit (-80 on 10-15) and BBB's net quantity depend on it.
4. Line 13 is not valid JSON: can you paste the original, complete row (or confirm it should stay out)?
5. Line 12 has no fee field: was its fee zero or just not recorded?

Summary of past records only. Not investment advice. Figures come solely from the log and prices you supplied.

Use cases

  • Summarising today's trades from a broker or bot export without retyping anything
  • Checking my weekly realized P&L total with the sums shown
  • Finding duplicate rows, malformed lines or missing fees in a trade log CSV
  • Seeing whether my own stop-loss, loss-streak or daily loss limit was reached in the log

FAQ

Will it tell me what to buy or sell? No. It only summarises past records and never recommends, forecasts or gives market views.

Does it use live prices? No. Unrealized P&L uses only the prices you type into the request; if you give none for an open symbol, that line is marked NEEDS_INFO.

What happens to rows it cannot read? They are listed with the line number and the exact reason, excluded from every total, and never repaired or guessed.

Is it tax or accounting software? No. It does not compute taxes or produce audit-grade books, and it states its currency, timezone and fee assumptions instead of hiding them.