{"format":"receipts-proof/1","hash":"33ac02b6b7903c9b42f21815148e36e9578ffb10fd2eddbb4aeaa9f371819036","provider":"demo-rsi-reversion","seq":59,"kind":"signal","issued_at":"2026-09-30T14:40:30.253Z","prev":"6eb6b73e0a73ebaf5b120120d27092dc86d58962b3f183fe9726eaae2357897f","body":{"issued_at":"2026-09-30T14:40:30.253Z","kind":"signal","nonce":"0ae7ecf478c0036073d031f54387f86e","payload":{"entry":{"type":"market"},"expires_at":"2026-10-01T02:40:30.253Z","market":{"kind":"perp","symbol":"ETHUSDT","venue":"binance-usdm"},"note":"Demo bot: RSI(14) 25/75 reversion, 5m. Mechanical rule, not advice.","side":"long","stop":"2653.06","targets":["2693.82","2714.2"]},"prev":"6eb6b73e0a73ebaf5b120120d27092dc86d58962b3f183fe9726eaae2357897f","provider":"demo-rsi-reversion","seq":59,"v":1},"signer":null,"sig":null,"batch":{"root":"33ac02b6b7903c9b42f21815148e36e9578ffb10fd2eddbb4aeaa9f371819036","index":0,"leaf_count":1,"proof":[],"sealed_at":"2026-09-30T14:41:20.422Z","opentimestamps":"AE9wZW5UaW1lc3RhbXBzAABQcm9vZgC/ieLohOiSlAEIM6wCtreQPJtC8hgVFI426VeP+xD9Lt27Suqp83GBkDb/8AiZUBF4hbkIBwjwINZfLfbKFcDjAPokpZ9xXLF74hpyCQcAw7PuCS+yu+8PCPAQW0hjBH1mT4PqrbNx38tl3wjxIPCjIFiBkBcQQiVK81NDrDrFT1zkemAyQoSQpo/CebnMCPEEar0fkfAI3oqeiyOHekII8CD23jR3OTgoOzH3rhWFexVacMWl4K6Tcgoz65pCzxeu2AjwIH7iPTMUZ0PXSl/snS6VJ7cI0MIuXNbn2YC1iAApvPeMCPAgAITz+Up+JtVXAgjBivUYeUcfVqMzOil2WNnaO4Rn1W8I8SBG5Z9MMUSPxHLc96l5S/cL1s2flVsG8jZA9Xx1JmFA8QjwIHck74QCS7uz0TyD1+4k0aNxG5gdCSn4lYvstdnhlq1DCPAgHKKQZm5Aie6d5IzODJS79CIbwrV3wRnjd8LrTDfUHt8I8CA1O63gEQ/DmK05vwNEMe11t0MymPfa3tznqN4m4fkD4QjxIOiXyzEDX8lmgUS3lrpeb3lOEQDgOKz0nYlhYSEYHEi/CPEgbpjSqbUsceeBZytHrJCX2w+QzN9BGhq5tyjLGkNLSfYI8SCDsCMuJ1UQvdByQlca7g2w7TG8K9uGFZX+mGjYEq1o+gjxIHvcnGbVg3tDKPZGa21XpRVri4Pz2uy2lPwgmjQ0aSiCCPEgAKHr3l+X40/XCLyQw0S+LZMt95TCsM7syAERWj7XDKwI8CDUyxDQwETu1SAtchVvrkr5pzOyXUT7Vm5hO/5KeRzw+AjxIDwoUuim5i+45sSYzK0kYiBD2cv7m9RI0y94awgVM5V5CPFZAQAAAAGmGldgJBY+eWLX2BKPqntBVbQs+8bjD7IPvSUQvPswpQAAAAAA/v///wKF8gAAAAAAABYAFJLVfy+7Pj91jkfqOhV2za0G6ThBAAAAAAAAAAAiaiDwBGDKDgAICPAgx0jf8FKnj2hU0X2EgtlTmHNDP7AyZQtzPuXmWpu3Y2sICPEgU+99MkzVUpBn3WI8mmNUVbbBqZMXY5xEDJVkpOPUpr8ICPEgQjEZv3ZSouFVlQNbxlnwMjDPRB9nZT63T3S+I9N9gegICPEgLWVBCLJfDAPEljORI5FUz2eCPBGoHx4zh+oXPqbHbpEICPEgESJhc1ENchBp8ww00rCPuNFaAEDihIX6k8TPva3uDtEICPAggNr/XEZVBhpV2QfCTsEpsSB1HgQaMqtbKGOk0XgZfrwICPEgPxOKq7NHh85JYHR+9lz9wpg/bCM61N/6viH03KBP+g4ICPEgo5BVuFzmIZAU08ZvKkE3qjAX54Dbpv1/aSCfe+jnkWIICPEgPB7v4/U1VDeCyhUJxYYuc4HQT14Db1gNKPDc6J2iC8AICPAg0+XA681nmCmVSetOFxHbn9JePjCMiClvnrybiUV8WP4ICPAgZVGT+d5GpN+pS4YwzH8sz/juKU8OzPkI5jzJPrBzjaMICPAgz6v+W5HBl+eNT1EKk5NyT5OgZY932ZtueEDptvnHPE0ICPAgE8Q5Yq6XpPpJleL837yoCpJuAY8TSSqf/FKHN4eZ2VUICAAFiJYNc9cZAQPhlDv/8AiNA34RgWMHCAjwEAqkwKeQ7kHDsnUw0FCEyaYI8CAQN7xwUE1NRNUnFgcDBWbm6jBJTxnYvzeWSTwmojCCeAjxIIfvDmlUAqJxGtoB3IOYIBKhR9qDwK/nv0v47cbziZ5PCPEEar0fkfAI4VgDgVeb4XEI8SBrpw51D9zWjj3nKbpNNuHV97InfwMNlm/reFPCL2/TDwjwIEv6H6LKM04QwNSWJ/uaT+StVw991CH9/+QIRi4dmh8SCPAgQdkTm3vny81/rEzmBTcajL4h93IdBQ1p297+Cn0LuxII8CBeIsr2T6X8qTY8V/7BXR/vfv2A0DXA6NXeNtRXY/pJRAjwIGYrS+T64F1RRphJJoR1S7RTTSMKmeUnnXWRYR0Z3iDbCPAgJpPAagQgT2fy4LsCHC6Cgo4bXL1WvsU8uJ3bTOhDb54I8CCVfYtvLDNRiRat+3XDXZQe5GzH6Mp6uoysEriKqIjcjgjwILN67Hb6d4XYPZbwtbUHSnqv043qU1yjzEjQNJWrGHvNCPAgRqPjDzLZRAPQT9OZb02V4Zb3YWSK97iwOwdptNVQxMQI8CBwFpt0HXuHTlOB6T9shiZ8FKfFVXPB5Yloc7wvawU9wgjwIJqkDAe/VGhBoUfHFORHqF7LVXi+hRs5jS8pqGJqWqPiCPAgeDNgkog+pqsmI7GBlI3657TVa6NOReGo5wTsrz2CG/0I8SDnU8iCbxbdH+YvJNnjHjCycXSozBMtOiBEVbtdsSFrZwjxIEB3sxoQmhZ7kTn5c6jzfWub8+K5MlSerTerQTahq9TbCPAgEAd8ECHpWBuZI+N9D63dtc/+pYCaEMl0gnw2nkcSlCsI8VkBAAAAAcP64jDl4VxUHnZE+fKsjt9qcnIB//kO8kf315gh/FriAAAAAAD+////AvZmAQAAAAAAFgAU7SnKfDmwVDXd/qoaHegkRQHx47YAAAAAAAAAACJqIPAEZMoOAAgI8SBOaGiDIKsZAZAdLNTUeY1rDNelZ/5Udo+EZxeXJqngVwgI8SAvbt5IwVeQvJG6+2EsvxhsM7/plT0RfpFR4RGhkG0SEAgI8SAEJZMexrSshE5+i6qej7/yrtCLQVV71m95N6BTBma38wgI8SCtfGrJGZW2/CWtwNRoN71g3efi56YtQZ7oE0QlyWsrlQgI8CAFpQC0YeaRWeQO397mjL9qqWcZRSYRfck7qVcNffvOoAgI8CCx3goZvqUtjQ75cQD+mikV+SmNyEWMZwuYqh08uHZUKQgI8SC7Wf03AkOiwE0mTsPLUQiM07DdTSKGb4sUe8LizTiVvggI8CAttAFcBVnA13Aqf/YvTPDLqvFhk8gE1H5C8rmqvaaUfAgI8SAHZrjSBf4PIQn+/Yag8Vk3SQtMslO0gO8e1isdLhUBUAgI8SAGPkc14I0673j/rrL3ZNjYvTmfW4JhonY83GDUa2hwQggI8CDZr9xYK4fvVJ5Jje607ubWQAxHCim0putmgeBl03TmXwgI8SBwp6v+FwKp83SWcM6XUYwUvCoj/Ay/Drolelq4GQZPXQgIAAWIlg1z1xkBA+WUO/AQeDv/fd3XDLxCISUT1U+ImwjwIKKK2oxsh1Wh6z2eCqkjwOfX9Wq96K1QHHX/ePXTmUj1CPEg+bjREsQZ42qdIuocqxpDoSfQxmX8w9ReinMq7CfXgtAI8SB2znSMneL4vafbKZACFyw/EM/gqrqVDwNLn1ilM+0OegjxBGq9H5HwCIGRrLp+J7asAIPf4w0u+QyOKShodHRwczovL2Zpbm5leS5jYWxlbmRhci5ldGVybml0eXdhbGwuY29t","chain_anchor":null,"bitcoin_block":969313},"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"]}