{"format":"receipts-proof/1","hash":"28a983fa18fa7a546547b22d4b6b3236390f41213b7803479289ea33acd84f47","provider":"demo-rsi-reversion","seq":33,"kind":"signal","issued_at":"2026-09-27T18:35:39.801Z","prev":"194122e16f3856cb20ad4e9266d2e4065cd185c114dc584c362a140e9fce5fbe","body":{"issued_at":"2026-09-27T18:35:39.801Z","kind":"signal","nonce":"72241362fa3708647d36438822433e10","payload":{"entry":{"type":"market"},"expires_at":"2026-09-28T06:35:39.801Z","market":{"kind":"perp","symbol":"XRPUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"short","stop":"1.539","targets":["1.5304","1.526"]},"prev":"194122e16f3856cb20ad4e9266d2e4065cd185c114dc584c362a140e9fce5fbe","provider":"demo-rsi-reversion","seq":33,"v":1},"signer":null,"sig":null,"batch":{"root":"28a983fa18fa7a546547b22d4b6b3236390f41213b7803479289ea33acd84f47","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-09-27T18:41:39.822Z","opentimestamps":"AE9wZW5UaW1lc3RhbXBzAABQcm9vZgC/ieLohOiSlAEIKKmD+hj6elRlR7ItS2syNjkPQSE7eANHkonqM6zYT0f/8AhlL+IfVOKvYwjxIFKruTH44Kva1t3at2r4iW5b6KSlh0KnujLKQvrtek+1CPAgVqJA+1XI40VgUvEcz3ey0gw3dJpO7xh2/+BjFYURdKsI8BDLuzZYG1wgUn3FPU0RcRRUCPEg5dyqE37FHq6jz+QxRTiYek0BmFoj+T+ih/koUvEEtVoI8CCo2G7mHorevFlfO0srOKyW+jJJ3vn+YaFS6XCi86piUgjxIBGLFTslFMZqIcuZLBcIhQTOPZgLqFP15bN+MddhwPoKCPAgjhlA6pX0jL9UD69NOpi6eYbc8yFG94QRH/a3n5UQBwwI8QRquWNk8Ag3wEQnkXtkmwjxIM+atYYK6qyUAgvQK1Bj0Uml4BuMuIc+gY2Z6u6O0UNnCPEgJjLwZaypw2n+j0l40nyAMLeR6+/d52OixmZesH70NgUI8SCeO/tDDRqir9zl63ntRPt3oFAqK0CHSZgPeFvIxVTjsQjwIAkCTk/YAHHpgx918Z2QJuENfS3tK0l2aGR7ijz1hU6rCPEgsvU0rQOVe6uZUMphpA53iFiF0mX3rLvBi77OKovGwCUI8CCszxDz6FPkIZD3ePmDAM0Ew5hy/JjKWbKKHDofqzE1wwjwIMX0lsAoo7F8guD1zWzkRHPQM8Hqv1i3fKo7uF6UZQ8iCPAgMGsUmRr5a9G5xKZ+p+g6WqK4bZ415n2Cxo+MxXAg2swI8SBu/CKVTpvw+NnRZR2sSTk9xSoFVaRETGH+GL6RGw1yMgjwIHv13kc73XaXrRDrVSrRow3cwQSJKkdAdhE1q7i2cEBuCPFZAQAAAAFD5d2/KmVWwe983ELWJMG6sH6ihw463oqtscPSoA6qfwAAAAAA/v///wLiQwEAAAAAABYAFNXKvteNxaH4GIqVds86bGtzMALoAAAAAAAAAAAiaiDwBKnIDgAICPAgEh+ymjYnnhXQ+ghq+WEYJlZf4bO84qA6uRIl25BU28EICPEgdgJ2lDkrJpWaPMzVQjf8lWba6PwFirAkY8mWl/6nAF0ICPEg7pTrv7WPdXCE6/wtfdmUA7AhOk9RMb6mKa6rD2QWn9gICPEgmnDXOqaICF82RKUxGWf6d/nyurdgeeyYtpm+Ix5HteoICPAg3koL06hy8yDnW20n9HJq8JrQD7WPXpUBuFqUYo2NimAICPAgVxWuzcFqDzssBukJ+XX09XW/VSpN0vUDKJT12+uH20UICPEgds4yHFsau/IOPOQDrcO8mM655gcRiEVFJaASovuLN+EICPEgEau8ImfydlT3RkTI0Ff4Sqq6Ovs7VByLEadVeF/PfaYICPEgZZY/8+6dB5qkqZy6Esxq+1X5CJUjT3hstjp+d45QYdMICPEg6hkKs1uNnYAO5miY98YS8W95ejxg2TPR80dOfZE0rgwICPEgMsePHoW/7a6W6LwDvMjUbTcf3QnTNlCQdfSsh+U/R+gICPEgLRgwaCO0iciePUuj9foJgCV3WGJIBzFe2ci5XP7adCIICPAgvJO3PoF4d/ig6I3Xi4SQsF/f+s7phLw4yYwQ905iMPcICAAFiJYNc9cZAQOqkTv/8Ajlx4+tg1BnQwjxIJvWfOL+hcGRVi8U6OtkaFYFpxpq39MKhVdv4IlBDrF5CPAQDJsFof3mmwRtcLF9qpd6YQjxIPbHJmHWM6z7ZIf/w+h2wq3aEbNAqmUuN6X+wLIryg8hCPAgpT0JdONL9IuZIOj/nUzQOLjhXknpyH0Ai+mHdGJB4ccI8CB8X0WFtiqavvDPkpx9eFtTP3RiesOm4vQtMcUzlU+63QjxBGq5Y2XwCD5C7hOZHjItAIPf4w0u+QyOLCtodHRwczovL2JvYi5idGMuY2FsZW5kYXIub3BlbnRpbWVzdGFtcHMub3Jn8BBWnAlQbDemBtZHCeYmTnAnCPAg/uRXFC91CSALyDM8gwSnNKgOQzAGtQUjaFYpDXc5VS8I8SBuyCZl3b9TiwSq/Wj8HFGWygRGZjDR+OkxDozqxXbMxwjxINSva5otHEt4Hcd2b97hJznzmZrMbachDpTjPPsx7rnXCPEEarljZPAI3uPcpHK8TeMAg9/jDS75DI4pKGh0dHBzOi8vZmlubmV5LmNhbGVuZGFyLmV0ZXJuaXR5d2FsbC5jb20=","chain_anchor":null,"bitcoin_block":968874},"how_to_verify":["hash = sha256(\"receipts/v1\\n\" + canonical_json(body)), keys sorted, no whitespace.","body.prev must equal the hash of the same provider's event seq - 1 (64 zeros for seq 1).","If signer is set: sig must be a valid Ed25519 signature by signer over the UTF-8 bytes of \"receipts/v1/sig\\n\" + hash.","Fold the Merkle proof: node = sha256(0x01 || left || right); the result must equal batch.root.","Decode opentimestamps (base64) to a .ots file, then run: ots upgrade file.ots && ots verify -d <batch.root> file.ots","Or run: node scripts/verify-bundle.mjs bundle.json"]}