addrbookFor publishers
← The evidence ledger

Evidence row 119902

Observed , by baseline/1.

Kind
listing
About
source_record x402_bazaar:https://saylorinnovations.com/api/finance/portfolio-risk
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
be54454182d24fe81b42e7b431ad4b68ed5dfa86e1fb1cda4f0446c83fb0e9f2
Leaf
0x31054b8aa82817963576606826f7457f1413e1bc77108a3658d48142126c7cdd

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://saylorinnovations.com/api/finance/portfolio-risk"
    ]
  ],
  "name": "Saylor Innovations Data Desk",
  "owner_address": "0xa2a8df0f7caabea4e120a2568118f141569fc8aa",
  "raw": {
    "accepts": [
      {
        "amount": "10000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "assetTransferMethod": "eip3009",
          "facilitatorOnly": true,
          "memo": "saylor:datadesk:portfolio-risk-m",
          "name": "USD Coin",
          "note": "Base settles through an x402 facilitator. Send payload.signature and payload.authorization (EIP-3009); there is no self-submitted path on this network.",
          "version": "2"
        },
        "maxTimeoutSeconds": 120,
        "network": "eip155:8453",
        "payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa",
        "scheme": "exact"
      },
      {
        "amount": "10000",
        "asset": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
        "extra": {
          "assetTransferMethod": "eip3009",
          "facilitatorOnly": true,
          "memo": "saylor:datadesk:portfolio-risk-m",
          "name": "USD Coin",
          "note": "Polygon settles through an x402 facilitator. Send payload.signature and payload.authorization (EIP-3009); there is no self-submitted path on this network.",
          "version": "2"
        },
        "maxTimeoutSeconds": 120,
        "network": "eip155:137",
        "payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa",
        "scheme": "exact"
      },
      {
        "amount": "10000",
        "asset": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
        "extra": {
          "assetTransferMethod": "eip3009",
          "facilitatorOnly": true,
          "memo": "saylor:datadesk:portfolio-risk-m",
          "name": "USD Coin",
          "note": "Arbitrum settles through an x402 facilitator. Send payload.signature and payload.authorization (EIP-3009); there is no self-submitted path on this network.",
          "version": "2"
        },
        "maxTimeoutSeconds": 120,
        "network": "eip155:42161",
        "payTo": "0xA2A8dF0f7CaaBEa4e120a2568118f141569fc8aa",
        "scheme": "exact"
      },
      {
        "amount": "10000",
        "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
        "extra": {
          "feePayer": "GVJJ7rdGiXr5xaYbRwRbjfaJL7fmwRygFi1H6aGqDveb",
          "memo": "saylor:datadesk:portfolio-risk-m",
          "reference": "39Kk5zravHerxRpV4Pj1tMoJMFCgxXJFos6PB9TrteEM",
          "session": "eyJhcnRpY2xlSWQiOiJkYXRhZGVzazpwb3J0Zm9saW8tcmlzay1tZXRyaWNzIiwicmVmZXJlbmNlIjoiMzlLazV6cmF2SGVyeFJwVjRQajF0TW9KTUZDZ3hYSkZvczZQQjlUcnRlRU0iLCJyZWNpcGllbnQiOiI3TFNqZnJKZjhmTnNCOFZBOXU3TjNXRW4yNXNtUUxwb2IzU3Z5VXZYYWN5NyIsIm1pbnQiOiJFUGpGV2RkNUF1ZnFTU3FlTTJxTjF4enliYXBDOEc0d0VHR2tad3lURHQxdiIsIm1pbkFtb3VudCI6MTAwMDAsImV4cCI6MTc5MjM4MTY2Nzc3OX0.6My5rmf3-iHF6S757fiK6BiNexE4cKZ808gfiNGK5zE"
        },
        "maxTimeoutSeconds": 120,
        "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
        "payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7",
        "scheme": "exact"
      },
      {
        "amount": "10000",
        "asset": "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
        "extra": {
          "feePayer": "GVJJ7rdGiXr5xaYbRwRbjfaJL7fmwRygFi1H6aGqDveb",
          "memo": "saylor:datadesk:portfolio-risk-m",
          "reference": "B8AJnMt8WsHw7TWJrAkFSzqY6X5YAomv12kGeMvmf68U",
          "session": "eyJhcnRpY2xlSWQiOiJkYXRhZGVzazpwb3J0Zm9saW8tcmlzay1tZXRyaWNzIiwicmVmZXJlbmNlIjoiQjhBSm5NdDhXc0h3N1RXSnJBa0ZTenFZNlg1WUFvbXYxMmtHZU12bWY2OFUiLCJyZWNpcGllbnQiOiI3TFNqZnJKZjhmTnNCOFZBOXU3TjNXRW4yNXNtUUxwb2IzU3Z5VXZYYWN5NyIsIm1pbnQiOiJFczl2TUZyemFDRVJtSmZyRjRIMkZZRDRLQ29Oa1kxMU1jQ2U4QmVud05ZQiIsIm1pbkFtb3VudCI6MTAwMDAsImV4cCI6MTc5MjM4MTY2Nzc3OX0.im6ajRKGaymBiAM-lORR_3gXYRbVrLMr1CPubPg4QGQ"
        },
        "maxTimeoutSeconds": 120,
        "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
        "payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7",
        "scheme": "exact"
      },
      {
        "amount": "92231",
        "asset": "So11111111111111111111111111111111111111112",
        "extra": {
          "memo": "saylor:datadesk:portfolio-risk-m",
          "native": true,
          "note": "Native SOL: send lamports with a system transfer, not an SPL transfer. Price is quoted live and this quote expires in 120s.",
          "quotedLamports": "95084",
          "reference": "972nUo4kPjAcNZ8xRKytwwyJQZn3hnN14jSNsRpL6uht",
          "session": "eyJhcnRpY2xlSWQiOiJkYXRhZGVzazpwb3J0Zm9saW8tcmlzay1tZXRyaWNzIiwicmVmZXJlbmNlIjoiOTcyblVvNGtQakFjTlo4eFJLeXR3d3lKUVpuM2huTjE0alNOc1JwTDZ1aHQiLCJyZWNpcGllbnQiOiI3TFNqZnJKZjhmTnNCOFZBOXU3TjNXRW4yNXNtUUxwb2IzU3Z5VXZYYWN5NyIsIm1pbnQiOm51bGwsIm1pbkFtb3VudCI6OTIyMzEsImV4cCI6MTc5MjM4MTY2Nzc3OX0.FvZAJFdLoNGkTWFl67KC6osQaB1fXbw0nvYaVCUVf9c",
          "solUsdPrice": 105.17
        },
        "maxTimeoutSeconds": 120,
        "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
        "payTo": "7LSjfrJf8fNsB8VA9u7N3WEn25smQLpob3SvyUvXacy7",
        "scheme": "exact"
      }
    ],
    "description": "Risk metrics from a price or return series - annualised return and volatility, Sharpe, Sortino, Calmar, max drawdown, 95 percent VaR, expected shortfall and skew",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "queryParams": {
              "periods_per_year": "252",
              "prices": "100,102,101,105,103,108,107,111,109,114"
            },
            "type": "http"
          },
          "output": {
            "example": {
              "annualised_return_percent": 3820.449,
              "annualised_volatility_percent": 45.812,
              "best_period_percent": 4.854,
              "calmar_ratio": 2005.736,
              "currently_in_drawdown_percent": 0,
              "excess_kurtosis": -2.031,
              "expected_shortfall_95_percent": 1.905,
              "input_type": "prices",
              "max_drawdown_peak_index": 3,
              "max_drawdown_percent": -1.905,
              "max_drawdown_trough_index": 4,
              "note": "Computed from the series you supply; historical VaR is the 5th percentile loss per period and expected shortfall the mean of the worst 5%. Sharpe and Sortino use the annual risk-free rate you pass (default 0). Past performance does not predict future results.",
              "observations": 9,
              "periods_per_year": 252,
              "positive_periods_percent": 55.6,
              "sharpe_ratio": 8.268,
              "skewness": -0.056,
              "sortino_ratio": 24.278,
              "source": "sample statistics",
              "total_return_percent": 14,
              "value_at_risk_95_percent": 1.905,
              "worst_period_percent": -1.905
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "method": {
                  "enum": [
                    "GET"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "properties": {
                    "periods_per_year": {
                      "description": "optional, default 252 (daily); 12 monthly, 52 weekly",
                      "type": "string"
                    },
                    "prices": {
                      "description": "Comma-separated prices (5-1000 values)",
                      "type": "string"
                    }
                  },
                  "required": [
                    "prices"
                  ],
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "properties": {
                    "annualised_return_percent": {
                      "description": "Annualised return, as a percentage",
                      "type": "number"
                    },
                    "annualised_volatility_percent": {
                      "description": "Annualised volatility, as a percentage",
                      "type": "number"
                    },
                    "best_period_percent": {
                      "description": "Best period, as a percentage",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "calmar_ratio": {
                      "description": "Calmar ratio",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "currently_in_drawdown_percent": {
                      "description": "Currently in drawdown, as a percentage",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "excess_kurtosis": {
                      "description": "Excess kurtosis",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "expected_shortfall_95_percent": {
                      "description": "Expected shortfall 95, as a percentage",
                      "type": "number"
                    },
                    "input_type": {
                      "description": "Input type",
                      "type": "string"
                    },
                    "max_drawdown_peak_index": {
                      "description": "Max drawdown peak index",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "max_drawdown_percent": {
                      "description": "Max drawdown, as a percentage",
                      "type": "number"
                    },
                    "max_drawdown_trough_index": {
                      "description": "Max drawdown trough index",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "note": {
                      "description": "Caveat or context for reading the result",
                      "type": "string"
                    },
                    "observations": {
                      "description": "Observations in time order",
                      "type": "number"
                    },
                    "periods_per_year": {
                      "description": "Periods per year",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "positive_periods_percent": {
                      "description": "Positive periods, as a percentage",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "sharpe_ratio": {
                      "description": "Sharpe ratio",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "skewness": {
                      "description": "Skewness of returns; negative means a longer left tail",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "sortino_ratio": {
                      "description": "Sortino ratio",
                      "type": [
                        "number",
                        "null"
                      ]
                    },
                    "source": {
                      "description": "Data source the values come from",
                      "type": "string"
                    },
                    "total_return_percent": {
                      "description": "Total return percent",
                      "type": "number"
                    },
                    "value_at_risk_95_percent": {
                      "description": "Value at risk 95, as a percentage",
                      "type": "number"
                    },
                    "worst_period_percent": {
                      "description": "Worst period, as a percentage",
                      "type": [
                        "number",
                        "null"
                      ]
                    }
                  },
                  "required": [
                    "observations",
                    "sharpe_ratio",
                    "max_drawdown_percent"
                  ],
                  "type": "object"
                },
                "type": {
                  "const": "json",
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "iconUrl": "https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1791811517/bazaar-icons/bc5e2b3d111ebbef.jpg",
    "lastUpdated": "2026-10-19T03:45:47.825Z",
    "quality": {
      "l30DaysTotalCalls": 2,
      "l30DaysUniquePayers": 2,
      "lastCalledAt": "2026-10-19T03:45:47.532Z"
    },
    "resource": "https://saylorinnovations.com/api/finance/portfolio-risk",
    "serviceName": "Saylor Innovations Data Desk",
    "tags": [
      "sharpe ratio from a price series",
      "max drawdown calculator",
      "portfolio volatility and var",
      "sortino ratio from returns",
      "risk metrics for a strategy"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Risk metrics from a price or return series - annualised return and volatility, Sharpe, Sortino, Calmar, max drawdown, 95 percent VaR, expected shortfall and skew"
}

What the leaf hashes

{"body":"be54454182d24fe81b42e7b431ad4b68ed5dfa86e1fb1cda4f0446c83fb0e9f2","id":119902,"kind":"listing","method":"baseline/1","observed_us":1793025616916066,"prev":null,"subject":"x402_bazaar:https://saylorinnovations.com/api/finance/portfolio-risk","subject_kind":"source_record"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).

  1. 0x310524119b382ed17c7dc2a6bb0176a171bb245a50034177bcbac4fc18388897
  2. 0x9db2091e1b32480a4458e4953f2625261c4a078ddc44d744250cb2184f26dbf8
  3. 0xd4f7585276df8f1fe58ec545be23fcd28685343f4469c41e808319204f7ca00d
  4. 0x06cc3577da517accec879159c7505252b90227d8b47306cf46c064ac7e4e2e75
  5. 0x4ad97f81b40979991c430536e7fa4c0b3178c86a6e04d4186b4acd7e71f292f5
  6. 0x3fcd23df8edd860b8c07697f0ad2276676324c93d85541d169d1be71ab09ed1f
  7. 0x7c43416b94f8d1445a722a1b199707def12609d508eb085324687a43192cdd2c
  8. 0x601acc1f6916638bb01d5bcf2c459be2a7acf82dc17b35688653eab2d7d088d0
  9. 0x41adad128d0ed6c60b71cfa779d003d6b8c9aa7d92fd944c183a1986ddb6ba1f
  10. 0x14dcc9b621776bab010784ab2ff8bc9cde2e6118dc9a5e1e68af1ab2b33794cd
  11. 0xa4cc17a7ce78f05039820f0a50d323cd0bedd23c37338f2719d249dca75c07ec
  12. 0xd85c7204d76d26255c94ef4caa12c05addd08238caa5cdc3888ea60b74e6b940
  13. 0x36a44931b230976c04691d90bf3a25ed4111d74c78b672850d8025a911ca88dd
  14. 0x683955a5b2250ad50568d022a6580d8739b6aff1356779d72a773b088e7c289c
  15. 0x610738e0c43687aded83c613c73de8b5226c73c375858a167436461c522ea213
  16. 0x06d71bfa7d8b41d62c8836efc2c601e1cc3772d9453596b2ae4950887f3310ca
  17. 0x8c756542e482157df0c36464d75c937b845e4423dbbcfad08f0cf8d5a16b9a13
  18. 0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON